Это конфигурация [официального Marlin](https://github.com/MarlinFirmware/Marlin) для принтера Flying Bear Ghost 4S и 5 (плата MKS Robin Nano).
Это конфигурация [официального Marlin](https://github.com/MarlinFirmware/Marlin) для принтера Flying Bear Ghost 4S и 5 (плата MKS Robin Nano).
Эта ветка содержит код для работы с модулем [MKS WIFI](https://github.com/makerbase-mks/MKS-WIFI), установленным в FB4S и FB5. Загрузка файлов через стандартный plugin в Cura.
Эта ветка содержит дополнительный код для работы с модулем [MKS WIFI](https://github.com/makerbase-mks/MKS-WIFI), установленным в FB4S и FB5. Загрузка файлов через стандартный plugin в Cura.
В ветке [FB4S_Config](https://github.com/Sergey1560/Marlin_FB4S/tree/FB4S_Config) находится вариант с минимальными изменениями Marlin (только конфигурация), без поддержки WIFI.
## MKS WIFI модуль
## MKS WIFI модуль
@ -107,6 +105,10 @@ IP адрес так же будет на экране.
Если во время приема файла были ошибки, отобразится надпись "Upload Failed" и **прозвучит три звуковых сигнала**
Если во время приема файла были ошибки, отобразится надпись "Upload Failed" и **прозвучит три звуковых сигнала**
### Отключение кода связанного с WIFI модулем
Для отключения всего кода, который связан с WIFI модулем нужно в файле [Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO.h](./Marlin/src/pins/stm32f1/pins_MKS_ROBIN_NANO.h) отключить "#define MKS_WIFI". После этого в коде останутся только несколько незначительных изменений, которые не должны влиять на стабильность работы. Если нужен абсолютно чистый код, без каких либо изменений, взять его можно из [оффициального репозитория Marlin](https://github.com/MarlinFirmware/Marlin) и использовать файлы [Configuration.h](./Marlin/Configuration.h) и [Configuration_adv.h](./Marlin/Configuration_adv.h) как образец.
### BLTouch
### BLTouch
В прошивке по-умолчанию включена поддержка Bltouch. Парковка стола по оси Z настроена по стандартному концевику (а не по датчику), поэтому если у вас нет датчика, то мешать это не будет. Просто не трогайте настройки Z Offset (должно быть 0).
В прошивке по-умолчанию включена поддержка Bltouch. Парковка стола по оси Z настроена по стандартному концевику (а не по датчику), поэтому если у вас нет датчика, то мешать это не будет. Просто не трогайте настройки Z Offset (должно быть 0).
@ -198,19 +200,34 @@ EEPROM_W25Q
#define TFT_480x320
#define TFT_480x320
```
```
* Графический интерфейс от MKS. Этот вариант использует библиотеку LVGL и видео буфер большого размера. В МК практически не остается свободной памяти. Конфигурация размера видео буфера сделана внутри библиотеки, которую автоматически скачивает platformio и не предполагает настройки. Оставшейся памяти не достаточно для работы с WIFI модулем, поэтому этот вариант не работает. Сборка прошивки без WIFI модуля, но с интерфейсом от MKS находится в ветке [FB4S_Config](https://github.com/Sergey1560/Marlin_FB4S/tree/FB4S_Config). Описание настройки там же.
На данный момент с работой этого варианта есть проблемы [issues/19233](https://github.com/MarlinFirmware/Marlin/issues/19233) и использовать его пока не рекомендуется.
* Графический интерфейс от MKS. Этот вариант использует библиотеку LVGL и видео буфер большого размера. В МК практически не остается свободной памяти. Конфигурация размера видео буфера сделана внутри библиотеки, которую автоматически скачивает platformio и не предполагает настройки. Оставшейся памяти не достаточно для работы с WIFI модулем, поэтому этот вариант не работает c WIFI. Для его сборки необходимо выключить WIFI.
Для работы интерфейса нужны изображения и шрифты. После сборки прошивки они находятся в .pio/build/mks_robin_nano35/assets
Для загрузки изображений, папку assets нужно положить в корень карты памяти.
Для сборки прошивки с графическим интерфейсом от MKS нужно сделать следующие настройки:
* В файле Marlin/Configuration.h, выключить #define FSMC_GRAPHICAL_TFT и #define TFT_480x320
* В файле Marlin/Configuration.h, включить #define TFT_LVGL_UI_FSMC
* В файле Marlin/Configuration.h, выключить #define TOUCH_BUTTONS
* В файле Marlin/Configuration.h, выключить #define LCD_BED_LEVELING
* В файле Marlin/Configuration_adv.h, выключить #define ADVANCED_PAUSE_FEATURE
## WIFI модуль, отправка команд и файлов
## WIFI модуль, отправка команд и файлов
Для отправки команд и файлов на принтер не обязательно использовать Cura. Для отправки можно использовать простые инструменты - curl и netcat.
Для отправки команд и файлов на принтер не обязательно использовать Cura. Для отправки можно использовать простые инструменты - curl и netcat.
Для отправки команд используется tscp socket на порт 8080. Пример с netcat:
Для отправки команд используется tcp socket на порт 8080. Пример с netcat:
```
```
nc 192.168.0.105 8080
nc 192.168.0.105 8080
```
```
Можно отправлять g-код команды, и получать ответ. MKS WIFI модуль возвращает ответ не на все команды.