KREMEN Реклама
KREMEN Реклама

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

Ilmet
Идет загрузка
Загрузка
22.01.2026
124
0
Техничка

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

0
Статья относится к принтерам:
Ender 3

Дисклеймер:

Статья не окончена. Возможно будет дописана позднее. Публикую по просьбе.

В данном руководстве отражу установку и настройку Klipper на одноплатный компьютер Orange Pi Zero 3 для работы с 3D принтером Ender-3 с материнской платой Creality v4.2.2 (На чипе GD35F303). Организую автоматическое и удаленное управление питанием принтера, подсветкой принтера и управление вентилятором охлаждения хотенда с использованием четырехканального реле, произведу настройку клона BLTouch (3DTouch), акселерометра adxl345 и веб-камеры Logitech C270.

Данное руководство пишу больше для себя, но, думаю кому-то будет так же полезно.

1. Подготовка.

1.1 Аппаратная часть.

  • 3D принтер (В данном руководстве использую Ender-3 с материнской платой Creality v4.2.2 на чипе GD35F303)
  • Одноплатный компьютер Orange PI Zero 3 с 2Гб RAM (Для улучшения охлаждения я добавил радиатор).
  • SD карта (Я использую комплектную SD карту Ender-3 на 8ГБ. Решение временное, т.к. предыдущая SD карта умерла.  Рекомендуется SD карта Class 10 SanDisk/Samsung минимум на 8Гб. 16-32Гб будет вполне достаточно). ***В процессе написания статьи мне, наконец пришла SD карта SanDisk Ultra на 32Гб и я перешел на нее. Так что, часть скриншотов сделано уже на ней***
  • Card reader (Для подключения SD карты к ПК. Я использовал комплектный от Ender-3)
  • Блок питания для Orange Pi Zero 3 (Минимум 5V 2A. Я использовал от смартфона)
  • Кабель USB-A - Type C (для подключения питания Orange Pi Zero 3)
  • Кабель USB-A - MicroUSB (для подключения Ender-3 к Orange Pi Zero 3)
  • 12 соединительных проводов мама-мама (для подключения акселерометра и реле)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Патчкорд RJ-45 (для подключения Orange Pi Zero 3 к маршрутизатору. В дальнейшем патчкорд можно убрать и использовать подключение по Wi-Fi, но у меня проводное подключение работает стабильнее)
  • Настольная лампа (Для подсветки стола принтера. Мне понравился данный вариант подсветки, т.к. легко изменить направление света, не требует внесения изменений в конструкцию принтера. Возможно когда-нибудь я изменю источник подсветки)
  • Веб-камера Logitech C270
  • Плата расширения Orange Pi Zero 3 (для подключения камеры)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Четырехканальное реле (Возможно не лучший вариант, но пока работает и не доставляет проблем. Я использую 3 канала, так что 1 канал остается в запасе, возможно когда-нибудь я придумаю на что его задействовать)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • 3DTouch (Меня не устраивает точность его работы, в данный момент продумываю варианты замены на оригинальный BLTouch, CRTouch, индуктивные датчики, или тензодатчики)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Акселерометр adxl345Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

1.2 Подключение аппаратной части

  • Немного модифицируем кабель USB A - Micro USB. Заклеим Pin 1 (+5V) небольшим кусочком изоленты, либо, как написано в других инструкциях - перережем красный провод (это необходимо для того, чтобы Orange Pi Zero 3 не подавала питание на материнскую плату принтера в обход блока питания)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Подключаем Orange Pi Zero 3 к материнской плате принтера кабелем USB A - Micro USB
  • Подключаем Блок питания принтера, материнскую плату принтера и настольную лампу к модулю реле по схеме. (Этот пункт рекомендую выполнить позже, после прошивки принтера)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Подключаем модуль реле к Orange Pi Zero 3. Нумерацию контактов Orange Pi Zero 3 ведется слева направо и сверху вниз. Т.е. левый верхний - 1, правый верхний - 2.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)На модуле реле есть 6 контактов, которые нам необходимо подключить к Orange Pi Zero 3 по схемеУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

GND - 9 (GND)

IN1 - 15 (PC8)

IN2 - 13 (PC5)

IN3 - 11 (PC6)

IN4 - 7 (PC9)

VCC - 2 (5V)

  • Подключаем adxl345 к Orange Pi Zero 3 по схемеУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

GND - 25 (GND)

VCC -  17 (3.3V)

CS - 24 (CS)

SDO - 21 (MISO)

SDA - 19 (MOSI)

SCL - 23 (CLK)

1.3. Программная часть.

  • USBImager (Для записи образа ОС на SD карту).
  • Образ Armbian для Orange Pi Zero 3 (Ставим Minimal/IOT под Debian).
  • PuTTY (Терминал, для подключения по ssh).
  • WinSCP (Для удобного обмена файлами между Windows и Debian)
  • Advanced IP Scanner (опционально. Для поиска устройств в сети. Вместо этого можно просто посмотреть IP в web-интерфейсе роутера)

2. Установка и настройка ОС

2.1 Подготовка SD карты

  1. Форматируем SD карту. Лучше убрать галочку "Быстрое".Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  2. Запускаем USBImager. В верхнем поле выбираем скачанный ранее образ Armbian (распаковывать из архива не требуется), в нижнем поле выбираем подготовленную для установки SD карту.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Нажимаем кнопку "Записать" и ждем окончания записи ОС. (В будущем копкой "Прочитать" можно сохранить образ SD карты, для возможного восстановления с него системы)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

2.2 Первый запуск и настройка Armbian

  • Безопасно извлекаем SD карту из ПК и вставляем в Orange Pi Zero 3.
  • Подключаем Orange Pi Zero 3 патчкордом к маршрутизатору.
  • Включаем Orange Pi Zero 3.Если все сделано правильно, на Orange Pi Zero 3 примерно через 5-10 секунд должен загореться зеленый светодиод, а красный должен моргать. (Если моргает зеленый светодиод, значит Armbian не запустился)
  • Запускаем Advanced IP Scanner, в верхнем поле вводим диапазон IP адресов локальной сети и нажимаем "Поиск" и запоминаем IP адрес устройства orangepizero3. (Вместо этого можно подключиться к роутеру и посмотреть какой IP адрес получил Orange Pi Zero 3)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Запускаем PuTTY, в поле Host Name вводим IP адрес Orange Pi Zero, нажимаем кнопку "Open".Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Откроется терминал. Вводим имя пользователя (по умолчанию root) и пароль (по умолчанию 1234)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Далее система попросит сменить пароль пользователя root и добавить нового пользователя из под которого мы будем работать. Я создал пользователя klipperУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Далее система определит местоположение, если все верно подтверждаем. В моем случае местоположение было определено неверно.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)ПодтверждаемУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Если все прошло успешно, увидим стартовый экран ArmbianУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Обновляем

apt-get update

apt-get upgrade

  • Перезагружаем, чтобы все изменения сохранились.
reboot
  • Заходим под созданным ранее пользователем klipper. Всю дальнейшую работу мы будем выполнять именно под этим пользователем.

2.3 Установка Docker

Понадобится для установки Spoolman (Менеджер филамента. Удобно для подсчета оставшегося на катушке филамента, рекомендую к установке). Если установка Spoolman не планируется, можно пропустить. 

  • Заходим в armbian-config
sudo armbian-config
  • Выбираем в меню SoftwareУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • ContainersУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Docker engineУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Подтверждаем и ждем установки.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

2.4 Настройка сети

В рамках данного руководства я присвою статический IP адрес на Orange Pi Zero 3. Вместо этого можно произвести настройку IP адреса в настройках роутера. В этом случае эту часть руководства можно пропустить.

  • Заходим в armbian-config
sudo armbian-config
  • Выбираем в меню NetworkУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Basic network setup

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Выбираем сетевой интерфейс для настройки. (Я буду использовать подключение по проводу, т.к. Wi-fi у меня работает нестабильно)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Mac адрес оставить как естьУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Указываем любой удобный IP адрес из подсети роутера. Я выбрал ближе к концу, чтобы DHCP точно не выдал этот адрес другому устройству.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Default route оставляем как естьУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Указываем IP адрес своего роутера в качестве gatewayУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Указываем через запятую адреса DNS серверов. Я указал яндекс DNSУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Попадаем обратно в меню Network и удаляем конфигурацию DHCP, чтобы применилась статическая адресация.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Подтверждаем.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Окно терминала выдаст ошибку, т.к. IP адрес Orange Pi Zero изменился. Снова открываем PuTTY и вводим новый IP адрес, который мы установили выше. Для удобства можно сохранить профиль подключения кнопкой "Save".Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Вводим данные созданного нами пользователя klipperУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

2.5. Установка Klipper

  • Проверяем, состоит ли пользователь klipper во всех необходимых группах.
id

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Если в списке отсутствуют группы tty и dialout - добавляем эти группы

sudo usermod -aG tty,dialout klipper
  • Устанавливаем пакет git
sudo apt-get update
sudo apt-get install git

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Устанавливаем KIAUH (скрипт для автоматизации установки klipper)
git clone https://github.com/th33xitus/kiauh.git
  • Запускаем
./kiauh/kiauh.sh
  • На вопрос о версии выбираем вариант 3Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • На главном экране выбираем 1 вариант (Install)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Поочередно выбирая варианты производим установку 1) Klipper, 2) Moonraker, 3) Mainsail (Веб-интерфейс. Можно заменить на 4) Fluidd, либо установить оба сразу. Мне привычнее использовать Mainsail. При установке двух веб-интерфейсов необходимо обратить внимание на порт.), 8) Crowsnest (понадобится для подключения веб-камеры. Если использование веб-камеры не планируется, можно пропустить).Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)При установке klipper требуется указать количество подключаемых принтеров (выбираем 1). Подтверждаем создание файла Printer.cfg (в нем будет конфигурация принтера).Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)Во время установки потребуется установить дополнительные пакеты. Потребуется ввести пароль пользователя.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)При установке Moonraker подтвердите создание moonraker.confУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)При установке Mainsail подтвердите загрузку рекомендованных скриптов. И укажите порт для подключения (По умолчанию 80. При установке нескольких веб-интерфейсов не забудьте указать разные порты)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Вернитесь в главное меню KIAUH выбрав вариант B). Зайдите в меню E) Extensions и установите необходимые дополнительные расширения. Рекомендую установить 5) Moonraker Telegram Bot и 11) Spoolman.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Выйдите из KIAUH 
  • Установим moonraker-timelapse (для создания таймлапсов печати. Если не требуется - можно пропустить).
cd ~/
git clone https://github.com/mainsail-crew/moonraker-timelapse.git
cd ~/moonraker-timelapse
make install

Перед установкой появится предупреждение - подтверждаем.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Перезагрузите Orange Pi Zero 3 (Не перезагружайте и не выключайте Orange Pi методом отключения из сети блока питания. Это может привести к повреждению SD карты. Используйте терминал)Перезагрузка
sudo reboot

        Выключение

sudo shutdown

2.6 Прошивка принтера

  • Открываем веб-интерфейс klipper в браузере

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Изменим язык интерфейса на русский.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Перейдем в меню Система и откроем printer.cfg (в данном файле хранится конфигурация принтера)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Перейдем на GitHub klipper и откроем конфигурационный файл для Ender-3 PRO 2020. Скопируем его себе в printer.cfgВ начале файла указана важная информация для подготовки прошивки принтера. Ниже я буду ссылаться на инструкции отсюда.
  • Подготовим прошивку для принтера
cd ~/klipper
sudo make clean
sudo make menuconfig

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Переходим в меню Micro-controller ArchitectureУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Выбираем STMicroelectronics STM32 (как указано в инструкции в конфигурации)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Переходим в меню Bootloader offset Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Выбираем 28KiB Bootloader (как указано в инструкции в конфигурации)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Переходим в меню Communication interfaceУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Выбираем Serial (on USART1 PA10/PA9) (как указано в инструкции в конфигурации)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Если у Вас, как и у меня, используется чип GD35F303 (Требуется проверить визуально на материнской плате принтера), клавишей пробел ставим галочку на опции Enable extra low-level configuration options, затем ставим галочку на опции Disable SWD at startup (как указанно в инструкции в конфигурации)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Клавишей Q выходим из скрипта и подтверждаем сохранение конфигурации клавишей YУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Компилируем прошивку
sudo make
  • Запускаем WinSCP и настраиваем подключение (рекомендую использовать пользователя root, чтобы иметь доступ ко всем дирректориям)
  • Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Переходим в каталог /home/klipper/klipper/out и копируем файл klipper.bin на SD карту (Я использовал комплектную SD карту принтера)
  • Переименовываем файл klipper.bin (я переименовал в 1122.bin. Имя файла не должно совпадать с именем файла, использованное для прошивки принтера в предыдущий раз).
  • Безопасно извлекаем SD карту, подключаем к принтеру и включаем питание. Ждем установки прошивки.
  • Возможно экран принтера долгое время будет пустым - это нормально. Заходим в веб-интерфейс klipper и нажимаем Перезапустить прошивку. Если после перезапуска на экране принтера появился интерфейс - значит все прошло успешно.Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Отключаем питание принтера и извлекаем SD-карту.

2.7 Настройка GPIO

Потребуется для подключения модуля реле и акселерометра. Если использование не планируется - можно пропустить.

  • Скачиваем архив с 4 файлами *.dtbo
  • Запускаем WinSCP и подключаемся к Orange Pi под пользователем rootУстановка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Переходим в директорию /boot/dtb/allwinner/overlay 
  • Копируем в нее скачанные ранее 4 файла с заменой
  • Переходим в директорию /etc/udev/rules.d/
  • Создаем файл с именем 60-gpiod.rules
# udev rules for gpio port access through libgpiod
SUBSYSTEM=="gpio", KERNEL=="gpiochip[0-4]", GROUP="gpio", MODE="0660"
  • Создаем группу gpio и вступаем в нее
sudo groupadd gpio
sudo usermod -a -G gpio user
  • Устанавливаем wiringOP (нужен для отладки GPIO)
git clone https://github.com/orangepi-xunlong/wiringOP.git
cd wiringOP
sudo ./build clean
sudo ./build
  • Проверяем работу
gpio readall

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Редактируем armbianEnv.txt
sudo nano /boot/armbianEnv.txt
  • Добавляем следующие строки
overlays=spidev1_1
param_spidev_spi_bus=0
param_spidev_spi_cs=0
param_spidev_max_freq=100000000

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Закрываем
Ctrl+X
  • Подтверждаем изменение и имя файла
  • Перезагружаем Orange Pi

sudo reboot

  • Подготовим mcu host на Orange Pi Zero 3, для доступа к его GPIO
cd ~/klipper/

sudo cp ./scripts/klipper-mcu.service /etc/systemd/system/

sudo systemctl enable klipper-mcu.service

make menuconfig

  • Выбираем Micro-Controller Architecture

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Выбираем Linux process

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

  • Нажимаем Q и подтверждаем сохранение конфигурации Y

Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)

sudo make
sudo service klipper stop
sudo make flash
sudo service klipper start
  • Вносим исправление для запуска mcu
sudo sysctl -w kernel.sched_rt_runtime_us=-1
sudo service klipper-mcu restart
echo "kernel.sched_rt_runtime_us = -1" | sudo tee /etc/sysctl.d/10-disable-rt-group-limit.conf
  • Перезагружаем Orange Pi Zero 3
sudo reboot

3. Конфигурирование

  • Включаем питание принтера
  • Подключаемся к веб-интерфейсу принтера
  • Переходим на вкладку Система и открываем printer.cfg
  • Создаем файл macros.cfg (в нем мы будем добавлять свои макросы, чтобы не захламлять основную конфигурацию)Установка Klipper на Orange Pi Zero 3 + Ender 3 (armbian)
  • Скачиваем архив с моими конфигами и заменяем

Подпишитесь на автора

Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.

Отписаться от уведомлений вы всегда сможете в профиле автора.

0
Комментарии к статье
Lider 3D Реклама
Lider 3D Реклама