Manta M8P V2 + EBB SB2209 + Cartographer CAN V3 = CANBus
/ чтиво на 4 минуты
Содержание
Шта
Я один из тех людей, у кого достаточно много времени (ну было точно достаточно времени - на созвонах крутить гайки и впаивать латунные вставки было в радость, скажу честно), упорства и желания, чтобы собрать свой 3д-принтер.
Дело это неблагодарное, потому что после двух лет худо-бедной работы SD-карта решила помереть, из-за чего принтер просто перестал включаться.
Я наконец прошел все стадии принятия того, что надо все-таки все пересобрать и настроить. И этот гайд как раз об этом.
Обзор
В моем случае сетап следующий: сердце принтера - плата Manta M8P V2, мозги - Orange Pi CM4, глаза, если так можно выразиться, - Cartographer, а для общения с башкой принтера - CANBus и EBB SB2209.
И я просто заебался все это искать и заново все качать. Поэтому поехали по порядку.
Orange Pi Compute Module 4
На момент написания статьи есть уже более актуальная платка - Compute Module 5, но работаем с тем, что имеем.
Качаем дистриб. В моем случае Ubuntu Server Jammy1, но можно и повыбирать.
Потом пишем это все на флешку: через balenaEtcher или еще как - как удобнее.
Wi-Fi
У меня словарный запас не такой уж большой, поэтому:
Блять, почему нельзя просто сделать настройку Wi-Fi, как на Raspberry Pi? Почему рекомендованный метод - это подключиться через SSH по проводу или ПОСЛЕДОВАТЕЛЬНЫЙ ПОРТ и настроить через них Wi-Fi? Нет, метод рабочий, но, епт, а можно как-то еще более клиентоориентированно?
ssh root@xxx.xxx.xxx.xxx # пароль orangepinmcli dev wifinmcli dev wifi connect <ssid> password <pass>
ip a # Должен появиться новый IP для подключения по Wi-FiПосле этого можно отрубать провод локалки и подключаться через новый адрес.
Первый запуск
Первым делом по классике обновим все, что у нас есть:
sudo apt updatesudo apt upgradesudo reboot now && exitДальше уже по вкусу: можно или сразу перейти к установке и настройке Klipper-а, или же настроить отдельного пользака, навести красоту в shell-е и так далее. Если нужна помощь со вторым (в целом крайне рекомендую), то можно подсмотреть в памятке.
Проблемы с apt
По дефолту указаны репы http://repo.huaweicloud.com/ubuntu-ports/.
Они то падают с рандомными ошибками, то просто висят Waiting for headers. Я так и не смог разобраться, то ли это какие-то блокировки, то ли он просто сам по себе лагает. Лучшим и самым быстрым решением на момент написания статьи стала замена на репозитории http://mirrors.huaweicloud.com/ubuntu-ports/ в /etc/apt/sources.list:
deb http://mirrors.huaweicloud.com/ubuntu-ports/ jammy main restricted universe multiverse# deb http://repo.huaweicloud.com/ubuntu-ports/ jammy main restricted universe multiverse#deb-src http://repo.huaweicloud.com/ubuntu-ports/ jammy main restricted universe multiverse
deb http://mirrors.huaweicloud.com/ubuntu-ports/ jammy-security main restricted universe multiverse# deb http://repo.huaweicloud.com/ubuntu-ports/ jammy-security main restricted universe multiverse#deb-src http://repo.huaweicloud.com/ubuntu-ports/ jammy-security main restricted universe multiverse
deb http://mirrors.huaweicloud.com/ubuntu-ports/ jammy-updates main restricted universe multiverse# deb http://repo.huaweicloud.com/ubuntu-ports/ jammy-updates main restricted universe multiverse#deb-src http://repo.huaweicloud.com/ubuntu-ports/ jammy-updates main restricted universe multiverse
deb http://mirrors.huaweicloud.com/ubuntu-ports/ jammy-backports main restricted universe multiverse# deb http://repo.huaweicloud.com/ubuntu-ports/ jammy-backports main restricted universe multiverse#deb-src http://repo.huaweicloud.com/ubuntu-ports/ jammy-backports main restricted universe multiverseBTT Manta M8P V2
GitHub. Там же можно найти и гайд, и распиновку, и даже 3д-модель.
KIAUH
Все предлагаю ставить с помощью KIAUH:
cd ~ && git clone https://github.com/dw-0/kiauh.git./kiauh/kiauh.shДальше пользуемся циферками, вводим их в нужный момент и ставим. К примеру, вот так устанавливается Moonraker:
Или так ставится Fluidd:
На самом деле это только выглядит страшно: требуется всего лишь вводить нужную цифру или же букву. Дальше все уже делает сам KIAUH.
В моем случае я ставлю:
-
Сам Klipper
-
Moonraker
-
Fluidd (с конфигом)
-
KlipperScreen
-
Crowsnest
После этого мы уже имеем в целом рабочую веб-морду, через которую можно настраивать наш Voron (или что там ты решил настраивать?).
klipper-backup
Дальше мне очень нравится проект klipper-backup. Удобная штука, чтобы поделиться с кем-то конфигурацией или, как в моем случае, починить поломанный Klipper.
curl -fsSL get.klipperbackup.xyz | bash~/klipper-backup/install.shЧтобы не лазить по 10 раз в доку, при создании PAT (Personal Access Token) в GitHub надо задать ему такие права:
Moonraker Telegram Bot
Абсолютно имбовая вещь. Я уже не вспомню, сколько раз я так удаленно запускал печать или останавливал её, потому что что-то в процессе пошло не так. Ставить можно через KIAUH, в разделе Extensions.
Cartographer 3D
Я уже давно перешел со стандартного датчика на Cartographer (аналог Beacon) банально из-за скорости построения mesh-а. Для настройки ставим необходимые зависимости:
curl -s -L https://raw.githubusercontent.com/Cartographer3D/cartographer3d-plugin/refs/heads/main/scripts/install.sh | bash -s -- --klipper ~/klipper --klippy-env ~/klippy-env
cd ~git clone https://github.com/Cartographer3D/cartographer_firmware.gitCANBus
Это прекрасная штука до тех пор, пока тебе не надо ее настроить. Господи, сколько я уже ночей потратил на то, чтобы все это снова настроить, найти секретную комбинацию параметров, которые надо задействовать… И я снова здесь. Погнали!
Ставим katapult:
git clone https://github.com/Arksine/katapultДальше действуем по гайду esoterical:
sudo systemctl enable systemd-networkdsudo systemctl start systemd-networkdsudo systemctl disable systemd-networkd-wait-online.serviceecho -e 'SUBSYSTEM=="net", ACTION=="change|add", KERNEL=="can*" ATTR{tx_queue_len}="128"' | sudo tee /etc/udev/rules.d/10-can.rules > /dev/nullecho -e "[Match]\nName=can*\n\n[CAN]\nBitRate=1M\n\n[Link]\nRequiredForOnline=no" | sudo tee /etc/systemd/network/25-can.network > /dev/nullsudo reboot nowДальше делаем все по гайду: заливаем нужную прошивку, чтобы заработал CANBus.
А шо дальше
Пока я все это чинил, по глупости поспешил и решил не выключать питание - в итоге на моем SB2209 пошел «магический дымок». Поэтому на сегодня (да и в целом на неопределенное время) этот гайд останется в том виде, в каком он есть сейчас.
Берегите себя и своих близких!
Сноски
-
Блять, почему все хранится на Google Drive? Почему не GitHub? Почему не просто какой-то рандомный хостинг? Не знаю, как будто это прям ну супернепрофессионально выглядит. ↩
