Klipper + DuetWebControl
Привет всем.
Многие пользуются Klipper в связке с Octoprint, но, оказывается, уже появился другой интерфейс – DuetWebControl. Мне он очень понравился, как по работе, так и по возможностям. Да, есть недостатки, ввиде отсутствия привычных плагинов, но мне они особо не нужны.
Заявлено, что его можно устанавливать совместно с Octoprint и использовать или Octoprint, или DuetWebControl. Я решил не совмещать, во избежание конфликта, кому надо оба варианта – разбирайтесь сами.
Если заинтересовались, то я опишу кратенько, как его поставить (в примере используется Orange Pi PC и armbian Stretch server ):
2. Не люблю вводить пароль каждый раз при команде sudo. Если вы тоже, то делаем так:
Разрешаем sudo для добавленной команд без запроса пароля. Для этого вызываем редактор,
sudo visudo
и добавляем после строки %sudo ALL=(ALL:ALL) ALL строчку (здесь pi - имя пользователя которому разрешено работать без пароля):
pi ALL=(ALL) NOPASSWD:ALL
Если вы за безопасность, то этот пункт пропускаем.
3. Для работы Winscp по ssh выполнить:
sudo apt-get install openssh-client
4. Затем обноляемся
sudo apt-get update
sudo apt-get upgrade
и перезагрузка
sudo reboot
5. Входим под вашим пользователем и приступим к установке Klipper:
5.1 Обновите репозиторий и устанавливаем некоторые утилиты, которые нам понадобятся в будущем.
sudo apt update
sudo apt install git wget gzip tar build-essential libjpeg8-dev imagemagick libv4l-dev cmake -y
5.2 Клонируем Klipper и запускаем сценарий установки.
git clone https://github.com/KevinOConnor/klipper
./klipper/scripts/install-octopi.sh
5.3 Настраиваем микропрограмму для вашего контроллера
cd ~/klipper
make menuconfig
Выберите соответствующий контроллер и просмотрите другие параметры, затем выполните компиляцию:
make clean
make
5.4 Определим имя порта USB
ls /dev/serial/by-id/*
5.5 И запустим прошивку контролера
sudo service klipper stop
make flash FLASH_DEVICE=
(после равно указать имя полученное от команды выше)
sudo service klipper start
Для плат skr немного другой порядок: нам нужно скопировать файл klipper.bin с Orange на карту microSD платы skr. Это можно сделать, войдя на сервер через SSH с помощью WinSCP и перейдя в папку /home/user/klipper/out. Отсюда вы можете скопировать klipper.bin, переименовать в firmware.bin и положить его в корень карты microSD. После установки карты в плату и включения питания, плата прошьётся.
6. Теперь приступим к установке DuetWebControl для работы с клиппер
6.1 Подготовка
sudo systemctl stop klipper
cd ~
PYTHONDIR="${HOME}/klippy-env"
virtualenv ${PYTHONDIR}
${PYTHONDIR}/bin/pip install tornado==5.1.1
6.2 Клонируем нужное для klipper.
git clone https://github.com/Stephan3/dwc2-for-klipper.git
ln -s ~/dwc2-for-klipper/web_dwc2.py ~/klipper/klippy/extras/web_dwc2.py
6.3 Делаем небольшие изменения в Klipper с помощью этих строк, для работы с DWC. Их нужно вносить каждый раз, если обновили Klipper. Автор говорит, что в будущем избавиться от этой необходимости
gcode=$(sed 's/self.bytes_read = 0/self.bytes_read = 0\n self.respond_callbacks = []/g' klipper/klippy/gcode.py)
gcode=$(echo "$gcode" | sed 's/# Response handling/def register_respond_callback(self, callback):\n self.respond_callbacks.append(callback)/')
gcode=$(echo "$gcode" | sed 's/os.write(self.fd, msg+"\\n")/os.write(self.fd, msg+"\\n")\n for callback in self.respond_callbacks:\n callback(msg+"\\n")/')
echo "$gcode" > klipper/klippy/gcode.py
6.4 Настроем виртуальную SD-карту для использования klipper.
mkdir -p ~/sdcard/dwc2/web
cd ~/sdcard/dwc2/web
6.5 Загрузим и установим пользовательский интерфейс Duet, на данный момент это версия 2.0.4, с поддержкой русского языка.
wget https://github.com/chrishamm/DuetWebControl/releases/download/2.0.4/DuetWebControl-SD.zip
unzip *.zip && for f_ in $(find . | grep '.gz');do gunzip ${f_};done
sudo systemctl start klipper
7. Теперь создадим printer.cfg – файл настроек клиппера и добавим в него пару строк, для работы с DuetWebControl
cp ~/klipper/config/example.cfg ~/printer.cfg
7.1 Редактируем его
nano ~/printer.cfg
7.2 Вносим вашу конфигурация, или настраиваем заново, удаляя не нужное. Или оставляем, как есть, добавив строки ниже. Настройки можно изменить в самом интерфейсе DWC, во вкладке система, два раза щелкнув на printer.cfg
[virtual_sdcard]
path: /home/pi/sdcard
[web_dwc2]
printer_name: Reiner Calmund
listen_adress: 0.0.0.0
listen_port: 4750
web_path: dwc2/web
В место Reiner Calmund пишем имя вашего принтера по английски.
В место listen_port: 4750 можно указать любой другой порт выше 1024. Я указал как в октопринт: 5000
8. При желании установите потоковое видео воспользовавшись инструкцией.
На этом все, запускам браузер, вводим ip адрес Orange и добавляем порт указанный выше в виде: 192.168.1.100:4750 и наслаждаемся.
Инструкция адаптированная от сюда.
Пожелания, замечания приветствуются. Но помним, я не автор данной разработки, а только пользователь.
Еще больше интересных статей
Klipper - восстановление прерванной печати
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Внезапно выяснилось что у стокового клиппера есть странная особенно...
Настройка Marlin для датчика Biqu microprobe для платы BigTreeTech_SKR_mini_E3_V2.0
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
GCODE: Основы
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
GCODE: Плюшки от ПавлушкиПосле написания предыдущей...
Комментарии и вопросы
Где реклама?
Реклама, только без упоминания...
В смысле? Скачайте орку и выбе...
Добрый день, подскажите, пожал...
Что делать если я первый раз к...
Добрый день. Приобрёл сопло 1м...
Коллеги, такая проблема, уже н...