ПОЛЕЗНО GRBL Commander - автономный контроллер на ESP32

    Рекомендованный
  • #346
Видать тут очень сильно зависит от условий эксплуатации.
И от монтажа. Ну и "железное" окружение тоже.
Я что-то никогда не заморачивался с резисторами подтяжки, ставил от 4.7к до 10к, какие есть под рукой - всё работало всегда стабильно.
А оно "вон оно чё, Михалыч" - коллекторный шпиндель со мной категорически не согласился :)
 
коллекторный шпиндель со мной категорически не согласился :)
Ага. Я как увидел скриншот, осциллограмму, что он там шарашит в линию, там неудивительно что контроллер с ума сходит.
 
Скачал обновленный архив.
Попробовал закинуть в контроллер новую версию.
Отключаю поддержку PCA9555 и переходим в прошлый вариант MCP23017
1.jpg
Пробую компилировать и тут же вышибает на вот этой строке
2.jpg
С такой ошибкой в логе. Если коммент вернуть обратно тоже не проходит начинает ругаться на эту же строчку. Посмотрел архив до этого все нормально, хотя он то и залит в двух контроллерах :)

Код:
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void runManualMode()':
GRBL_commander:907:5: error: 'current_screen' was not declared in this scope
     current_screen = 0;
     ^
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void ProcessManualModeButtons()':
GRBL_commander:1014:38: error: 'current_screen' was not declared in this scope
         case KEY_SHIFT_OK          : current_screen++; if (current_screen > 2) current_screen = 0; screen_repaint = true; break;
                                      ^
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void SetManualModeScreen()':
GRBL_commander:1133:13: error: 'current_screen' was not declared in this scope
         if (current_screen == 0) {
             ^
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void UpdateManualModeScreen()':
GRBL_commander:1201:9: error: 'current_screen' was not declared in this scope
     if (current_screen < 2) {
         ^
GRBL_commander:1212:9: error: 'current_screen' was not declared in this scope
     if (current_screen == 0) {
         ^
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void runJobMode()':
GRBL_commander:1804:5: error: 'current_screen' was not declared in this scope
     current_screen          = 0;
     ^
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void ProcessJobModeButtons()':
GRBL_commander:2693:36: error: 'current_screen' was not declared in this scope
         case KEY_SHIFT_OK        : current_screen++; if (current_screen > 2) current_screen = 0; screen_repaint = true; break;
                                    ^
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void SetJobModeScreen()':
GRBL_commander:2703:13: error: 'current_screen' was not declared in this scope
         if (current_screen == 0) {
             ^
E:\456\GRBL_commander\GRBL_commander.ino: In function 'void UpdateJobModeScreen()':
GRBL_commander:2791:9: error: 'current_screen' was not declared in this scope
     if (current_screen == 0) {
         ^
 
Перекачал.
Теперь все норм, ? прошел компиляцию и нормально в контроллер записался. Теперь осталось только погонять.:)
 
Теперь осталось только погонять.
Ещё обратите внимание на:
1. При выборе файла, в списке папок иногда была видна папка System Volume Information, хотя и не должна была быть показана.
2. При выборе папки/файла, если на экране их менее, чем 4, то курсор можно было передвинуть ниже, в пустую строку (некритично, но некорректно).
3. Сразу после старта АК нажатие кнопки вкл. шпинделя его не включало. Но после нажатия на кнопки регулировки оборотов уже включить можно.
 
А нельзя ли сделать обновление версий через CD-карту?
 
А нельзя ли сделать обновление версий через CD-карту?
Насколько я понимаю - нет. Вернее, бутлоадер в ESP32 должен обладать такой возможностью. Не думаю, что такое существует...
 
Ещё обратите внимание на:
Посмотрел, погонял. Смотрю немного изменили при коннекте и карту показал что есть и что то еще что есть не успел засечь :)
А так по пунктам.
1. Не вылазило, полазил туда сюда по файлам вроде не выскакивало.
2. Вроде тоже адекватно.
3. Тут уже ничего не скажу, у меня шпиндель включается отдельным тумблером и обороты ручкой, специально так сделал что бы шпиндель не зависел от какой либо автоматики.

Тот файл что к примеру сейчас в работе вполне корректно показывает.

IMG_20230113_212632.jpg
 
Вернее, бутлоадер в ESP32 должен обладать такой возможностью. Не думаю, что такое существует...
Вот как раз на ESP32 и встречал, что обновление грузится через карту.
 
вот как автор той конструкции описывает обновление "
Прошивка устройства через среду Ардуина необходима только один раз, далее обновление прошивки возможно через SD карту.
Для этого файл с именем update.bin необходимо записать в корень SD карты и включить устройство. Обновление произайдет
автоматически при старте устройства." Могу вам скетч сбросить, может найдёте как это делается. Я ни разу не программист.
 
Могу вам скетч сбросить, может найдёте как это делается.
Сбросьте. Может чего высмотрю. У меня сбоку дырка в корпусе под ЮСБ кабель, с обновлением проблем нет, я и не парюсь.
 
На счет обновление .OlegK=OK.
а вот возможность бросать files UP по WiFi было здорого !
 
Для этого файл с именем update.bin необходимо записать в корень SD карты и включить устройство. Обновление произайдет
автоматически при старте устройства."
Спасибо за исходники, в принципе, очень схожее я нашёл на ютубе.


Попробовал вчера вечером, вроде как эта штука работает.
Осталось определиться, как это дело красиво оформить.
Варианты:
1. При старте АК, если файл обновления есть в корне SD, то обновляем автоматом, если успешно - файл удаляем. Оповещаем - "мол, обновили".
2. То же, что в п.1, но сперва спрашиваем юзверя "а надо ли обновить?".
3. При загрузке удерживаем кнопку SHIFT, и если есть файл обновления - выполняем апдейт.
4. Через отдельный пункт в меню. Обновляем, если прошло успешно, то файл удаляем.

Можно файл обновления и не удалять с карты (кроме п. 1) - мало ли, может ещё пару АК надо обновить будет :)
 
1. При старте АК, если файл обновления есть в корне SD, то обновляем автоматом, если успешно - файл удаляем. Оповещаем - "мол, обновили".
2. То же, что в п.1, но сперва спрашиваем юзверя "а надо ли обновить?".
3. При загрузке удерживаем кнопку SHIFT, и если есть файл обновления - выполняем апдейт.
4. Через отдельный пункт в меню. Обновляем, если прошло успешно, то файл удаляем.
5. Автопроверка версии, если на флешке цифры больше, то спрашивать про обновление.
 
Сверху Снизу
Обнаружен блокировщик рекламы AdBlock

МЫ ДОГАДЫВАЕМСЯ, ЧТО РЕКЛАМА ВАС РАЗДРАЖАЕТ!

Конечно, Ваше программное обеспечение для блокировки рекламы отлично справляется с блокировкой рекламы на нашем сайте, но оно также блокирует полезные функции. Мы стараемся для Вас и не обязываем Вас донатить и скидывать денег на наши кошельки, чтобы пользоваться форумом, но реклама это единственное, что позволяет поддерживать проект и развивать его.

Спасибо за Ваше понимание!

Я отключил свой AdBlock    Нет, я не буду ничего отключать