Авто-рестарт Klipper при подключении к хосту
Надоело каждый раз при включении принтера делать ручной перезапуск сервиса. Сделал скрипт для автоматического перезапуска сервиса Klipper-а при включении питания, либо при подключении принтера по USB.
Для начала нам необходимо установить простенький планировщик at
sudo apt install at
далее запустим его и активируем автозапуск
sudo systemctl start atd
sudo systemctl enable atd
Теперь отключаем принтер, его питание или USB кабель и в консоли запускаем udev монитор с фильтром по USB:
udevadm monitor --kernel --property --subsystem-match=usb
подключаем принтер и видим что-то подобное:
KERNEL[458650.175439] add /devices/pci0000:00/0000:00:1d.2/usb8/8-1 (usb)
ACTION=add
DEVPATH=/devices/pci0000:00/0000:00:1d.2/usb8/8-1
SUBSYSTEM=usb
DEVNAME=/dev/bus/usb/008/029
DEVTYPE=usb_device
PRODUCT=1d50/614e/100
TYPE=2/0/0
BUSNUM=008
DEVNUM=029
SEQNUM=367774
MAJOR=189
MINOR=924
Нам нужна строка с PRODUCT, копируем 1d50/614e/100
Для завершения мониторинга нажимаем Ctrl+C
Далее создаем правило для нашего устройства
sudo nano /etc/udev/rules.d/99-klipper.rules
и вносим следующее содержимое, где /home/pi/ ваша пользовательская папка, а 1d50/614e/100 в соответствующем месте:
ACTION=="add", SUBSYSTEM=="usb", ENV{PRODUCT}=="1d50/614e/100", RUN=="/usr/bin/at -M -f /home/pi/klipper-udev.sh now"
#ACTION=="remove", SUBSYSTEM=="usb", ENV{PRODUCT}=="1d50/614e/100", RUN+="/bin/systemctl --no-block stop klipper.service"
(последнюю строку можно раскомментировать если необходимо останавливать сервис klipper-а)
Сохраним файл и выйдем при помощи Ctrl+x
Перегрузим правила:
udevadm control --reload-rules
Далее создадим скрипт перезапуска в папке пользователя:
sudo nano ~/klipper-udev.sh
внесем следующее содержимое:
#!/bin/sh
sleep 1
systemctl --no-block restart klipper.service
exit 0
(если ставили Klipper+DWC при помощи скрипта от manu7irl, то строка для первого принтера будет такая systemctl --no-block restart klipper-0.service)
Сохраним файл и выйдем при помощи Ctrl+x
И сделаем его исполняемым:
chmod +x klipper-udev.sh
Всё. Теперь при подключении принтера у вас через 3-4 секунды должен быть рабочий набор, если установлен DWC, он будет уже подключен.
Еще больше интересных статей
Адресная лента для отображения статусов 3Д принтера
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Что такое керамическая 3D-печать и где ее применяют
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Когда...
Сопла и сопли
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Сколько раз этот вопрос поднимался. Сколько тем...

Комментарии и вопросы
Спасибо!
1)Скос на опорной поверхности....
На самом деле объемный поток 3...
Доброе время суток! Профи в CA...
Привет всем! В промывочном "ве...
Добрый день.Настроил станок, о...
привет.помогите разобраться по...