5. Canbus

Не подключайте 24 В, пока об этом не будет указано. Также разумно отключить нагреватель хотэнда, потому что в некоторых версиях платы CAN контакты нагревателя были связаны с контактом загрузчика. Это может привести к неконтролируемому разогреву хотэнда.

Шаг 1

Создайте файл интерфейса CAN0

sudo nano /etc/network/interfaces.d/can0

Вставьте следующее

auto can0 iface can0 can static bitrate 500000 up ifconfig $IFACE txqueuelen 256 pre-up ip link set can0 type can bitrate 500000 pre-up ip link set can0 txqueuelen 256

Вы можете скопировать и вставить в файл, но убедитесь, что форматирование правильное и что в начале последних 4 строк сохранён одиночный пробел.

Выйдите и сохраните файл с помощью CTRL + SHIFT X > Yes

Sudo Reboot

Шаг 2

Плата CAN требует загрузчика, чтобы мы могли прошить прошивку Klipper. Мы будем использовать CanBoot. Скачайте репозиторий CanBoot:

git clone https://github.com/Arksine/CanBoot

cd CanBoot

make clean

make menuconfig

Шаг 3

Micro-controller Architecture > (STMicroelectronics STM32)

Процессорная модель > STM32F072

Build CanBoot Deployment Application > (Не собирать)

Bootloader offset > (8KiB загрузчик)

Clock Reference > (8 MHz)

(500000) скорость шины CAN

Communication interface > (CAN bus (на PB8/PB9))

Шаг 4

Micro-controller Architecture > (STMicroelectronics STM32)

Процессорная модель > STM32G0B1

Build CanBoot Deployment Application > (Не собирать)

Clock Reference > (8 MHz)

Communication interface > (CAN bus (на PB0/PB1))

Application start offset > (8KiB смещение)

(500000) скорость шины CAN

Шаг 5

Установите джампер 5 В. Подключите USB-C от Pi к плате EBB36.

Переведите EBB36 в режим DFU

Нажмите и удерживайте кнопки RESET + BOOT. Отпустите кнопку RESET, продолжая держать кнопку BOOT, затем отпустите кнопку BOOT.

Получите идентификатор устройства платы после перехода в режим DFU

До режима DFU

В режиме DFU

Шаг 6

Сотрите и прошейте прошивку

sudo dfu-util -a 0 -D ~/CanBoot/out/canboot.bin --dfuse-address 0x08000000:force:mass-erase:leave -d DEVICE:ID

Отключите питание системы. Подключите 4-проводной CAN-кабель от UT0C к EBB36 и включите питание принтера и RPI.

После включения системы проверьте, что сеть CAN активна.

cd klipper

python3 lib/canboot/flash_can.py -q

Вы должны увидеть одну запись для приложения CanBoot. Запомните ваш UUID.

Шаг 7

Запустите

cd ~/klipper

make menuconfig

Выберите следующее

Enable extra low-level configuration

Micro-controller Architecture > (STMicroelectronics STM32)

Процессорная модель > STM32F072

Bootloader offset > (8KiB загрузчик)

Шаг 8

продолжение:

Clock Reference > (8 MHz)

(500000) скорость шины CAN

Сохраните конфигурацию, нажав ESC > Yes

Запустите

make clean

make

Шаг 9

Micro-controller Architecture > (STMicroelectronics STM32)

Процессорная модель > STM32G0B1

Bootloader offset > (8KiB загрузчик)

Clock Reference > (8 MHz)

Communication interface > (CAN bus (на PB0/PB1))

(500000) скорость шины CAN

Шаг 10

прошейте EBB36 новой скомпилированной прошивкой

python3 ~/CanBoot/scripts/flash_can.py -i can0 -f ~/klipper/out/klipper.bin -u 9fd4db4bdbc0

sudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D ~/CanBoot/out/canboot.bin

Если всё прошло успешно, ваша CAN-плата теперь должна быть прошита

запустите

~/klippy-env/bin/python ~/klipper/scripts/canbus_query.py can0

Загрузите предоставленные файлы на принтер и нажмите FIRMWARE_RESTART

Проверяя вкладку Machine, вы должны увидеть 4 системы

Перевод руководства с ifixit.com