Помогите настроить прошивку Klipper

Собираем, настраиваем, печатаем, делимся опытом, помогаем новичкам

Модератор: Kaktus

Stein
Сообщения: 522
Зарегистрирован: 27 фев 2018, 10:22
Имя: Дмитрий
Откуда: Нижний Новгород
Благодарил (а): 123 раза
Поблагодарили: 15 раз

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Stein » 16 дек 2019, 22:26

Два раза подряд останавливалась печать. В терминале октопринта:
Recv: // Klipper state: Shutdown
Recv: // MCU 'mcu' shutdown: Timer too close
Recv: // This is generally indicative of an intermittent
Recv: // communication failure between micro-controller and host.
Recv: // Once the underlying issue is corrected, use the
Recv: // "FIRMWARE_RESTART" command to reset the firmware, reload the
Recv: // config, and restart the host software.
Send: N75959 G1 X162.468 Y110.921 E836.76708*99
Recv: // Printer is shutdown
Recv: !! MCU 'mcu' shutdown: Timer too close
Changing monitoring state from "Printing" to "Cancelling"
С чем это может быть связано? Ничего с Raspberry не делал. Поменял юсб кабель, не помогло.
log:
klippy.log.zip
(778.75 КБ) 34 скачивания
Что случается когда буфер переполняется?
Вспомнил. У меня слетела винда, пришлось восстанавливаться из бэкапов. В настройках солида поднял качество STL. Могло ли это сказаться? Но я печатал несложные модели. Какие параметры для STL оптимальны?

AndrK
Сообщения: 757
Зарегистрирован: 11 май 2018, 09:09
Имя: Андрей
Благодарил (а): 11 раз
Поблагодарили: 63 раза

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение AndrK » 17 дек 2019, 09:22

Отваливается соединение между платами. Дело не в кабеле, а в разъемах, скорее всего. Я слегка "натянул" штекеры. Мне помогло. По-хорошему, надо спаять или ставить нормальное соединение. Ну и usb , в принципе, ерунда. Один плюс - дёшево.

Stein
Сообщения: 522
Зарегистрирован: 27 фев 2018, 10:22
Имя: Дмитрий
Откуда: Нижний Новгород
Благодарил (а): 123 раза
Поблагодарили: 15 раз

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Stein » 17 дек 2019, 12:00

AndrK, В принципе можно подключиться минуя usb к пенам tx-rx.

Насколько я понял, для RPI 3 Нужно подключаться к пинам 6, 8, 10
в /boot/config.txt необходимо добавить dtoverlay=pi3-miniuart-bt
и из /boot/cmdline.txt удалить console=serial0,115200
Но я не совсем понял, что в мануале насчет пинов написано.
https://github.com/bigtreetech/BIGTREET ... 0-%206.pdf

Так же встречалось упоминание, что в /boot/config.txt необходимо так же добавить enable_uart=1
и необходимо выполнить:
sudo systemctl stop serial-getty@ttyS0.service
sudo systemctl disable serial-getty@ttyS0.service
не знаю какой инструкции верить)

Данный вариант не будет уступать подключению по USB?

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 22 дек 2019, 11:18

у меня такое было когда я во время печати подключил дрель в тот же удлинитель в котором был подключен принтер и klipper, печать встала с ошибкой MCU...

Stein
Сообщения: 522
Зарегистрирован: 27 фев 2018, 10:22
Имя: Дмитрий
Откуда: Нижний Новгород
Благодарил (а): 123 раза
Поблагодарили: 15 раз

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Stein » 22 дек 2019, 12:16

Avtonomys, У меня принтер питается от онлайн-ИБП. Скорее всего проблема в разъёме. Осталось только решить припаяться или по UART подключаться.

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 11 фев 2020, 23:51

Дополнение к моему комментарию (viewtopic.php?f=5&t=997&start=30#p49043) Sonoff. теперь касательно klipper.

У меня отключено питания arduino по USB и при отключении питания вылезает ошибка MCU (Klipper state: Shutdown). нужно постоянно дергать кнопку FIRMWARE_RESTART...

Плагин OctoPrint-Tasmota, в настройках ставим галку напротив Run System Command After On, в появившейся строке пишем что то типа:

Код: Выделить всё

/bin/echo FIRMWARE_RESTART > /tmp/printer
close > save.
все, теперь при подачи питания происходит подключение без ошибок (Klipper state: Ready).

ЗС. в другой теме про это уже было...

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 12 фев 2020, 16:24

автоматическое включение/выключение принтера при включение/выключение octoprinta. + автоматическая печать загруженного файла. через octoprint event, для примера.

Код: Выделить всё

events:
  enabled: true
  subscriptions:
  - command: curl 'http://192.168.1.165/cm?cmnd=Power%20On' && /bin/echo FIRMWARE_RESTART
      > /tmp/printer
    event: Connected
    type: system
  - command: curl 'http://192.168.1.165/cm?cmnd=Power%20Off'
    event: Disconnected
    type: system
  - command: curl 'http://192.168.1.165/cm?cmnd=Power%20On' && /bin/echo FIRMWARE_RESTART
      > /tmp/printer
    event: Startup
    type: system
  - command: curl 'http://192.168.1.165/cm?cmnd=Power%20Off'
    event: Shutdown
    type: system
  - command:
    - M21
    - M20
    - M23 {name}
    - M24
    event: Upload
    type: gcode
PC (octoprint+klipper) и принтер выключаются/включаются через одну кнопку.
При загрузки файла klipper перехватывает файл и начинает его сразу печатать с SD.
после остывания подается команда на выключения (в самом слайсере в виде gcoda)

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 13 фев 2020, 12:42

event: Upload - файл загружаться и автоматически выбирается с SD card, печать сама не стартует (для печати необходимо нажать Print). печать стартует сама если в слайсере выбрано "старт после загрузки файла".
event: PrintStarted - При нажатии на Load and Print файл всегда выбирается с SD карты, вне зависимости в каком окошке нажимать (locally/SD)

Код: Выделить всё

  - command:
    - M21 ; Initialize SD card
    - M20 ; List SD card
    - M23 {name} ; Select SD file
    - M27 ; Report SD print status
    event: Upload
    type: gcode
- command:
    - M21 ; Initialize SD card
    - M20 ; List SD card
    - M23 {name} ; Select SD file
    - M24 ; Start/resume SD print
    - M27 ; Report SD print status
    event: PrintStarted
    type: gcode
Команда M81 (выключение):

Плагин Octoprint: Action Commands
c такой настройкой:
Снимок.PNG
Снимок.PNG (6.14 КБ) 2667 просмотров
в файле конфигурации klipper должен быть блок respond. что то типа:

Код: Выделить всё

[respond]
default_prefix: //action:
ну и сама реализация команды M81:

Код: Выделить всё

[gcode_macro M81]
gcode:
    RESPOND MSG="shutdown"
клипер видит команду M81 в gcode и кричит в octoprint сообщение "shutdown", плагин Action Commands слышит эту команду и выполняет "sudo shutdown -h now" на хосте. принтер и хост выключаются...

pc для этого и предыдущего комментария наличия плагина OctoPrint-Tasmota не обязательно, все работает на логике самого octoprinta и klipper...

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 19 фев 2020, 21:44

Наткнулся на альтернативу OctoPrint - https://github.com/Stephan3/dwc2-for-klipper
Спойлер
Изображение
Изображение

Kaktus
Сообщения: 2130
Зарегистрирован: 05 мар 2018, 19:59
Откуда: красавец Таганрог
Благодарил (а): 133 раза
Поблагодарили: 279 раз

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Kaktus » 20 фев 2020, 02:05

Avtonomys писал(а):
19 фев 2020, 21:44
Наткнулся на альтернативу OctoPrint
Интерфейс RRF :)

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 20 фев 2020, 10:41

да )) самое прикольное что это все можно поставить на tv box приставку (15-20$). orange pi выходит даже дороже...
ЗС. надо будет попробовать, заказать с нужным процессором tv box за 1000 рублей.

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 20 фев 2020, 13:05

первое что бросилось в глаза:
- очень мало жрет ресурсов, klipper+dwc2 - ~130мб, klipper-octoprint - ~220мб, система без всего ~100мб...
- нормально смотрится интерфейс на мобилках и планшетах, есть русский, убогие шрифт. на мониторе интерфейс очень перегружен...
- klipper сам запускает dwc2, конфиг dwc2 прям в фай настроек klipper...
- работает сразу с виртуальной картой klippera. пишет какая высота слоя в файле используется, длинна нити.
удобнее работать с файлами, PrusaSlicer и Cura передают файлы...
не понял только как автоматически обновлять список файлов, приходится все время тыркать кнопку "обновить"...
- ставить относительно просто, единственное неудобство - при обновлении klippera нужно заново вносить изменение из пункта:

Код: Выделить всё

# make changes in klipper we need
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
ЗС не пробовал еще печатать.

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 20 фев 2020, 21:01

если кому интересно как ставить в тв бокс - https://3dtoday.ru/blogs/62727c8879/oct ... 15-i-bonus
ЗС. работает только с проводным интернетом...

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 21 фев 2020, 11:13

чисто для пробы написал плагин для klippera под tasmota 8.1 (sanoff basic), для работы с командами ATX Power (М80, M81) из веб морды DuetWebControl2 (по идее будет работать и с octoprint):
файл с именем tasmota_power.py

Код: Выделить всё

import os

class SanoffBasicTasmotaPower:
    def __init__(self, config):
        self.printer = config.get_printer()
        self.settings = {
            'host' : config.get('host'),
            'user' : config.get('user'),
            'pass' : config.get('pass')
        }

        self.gcode = self.printer.lookup_object('gcode')
        self.gcode.register_command(cmd="M81", func=self.cmd_M81, when_not_ready=True, desc=self.cmd_M81_help)
        self.gcode.register_command(cmd="M80", func=self.cmd_M80, when_not_ready=True, desc=self.cmd_M80_help)

    cmd_M81_help = 'Power OFF'
    def cmd_M81(self, params):
        os.system(self.get_request('OFF'))

    cmd_M80_help = 'Power ON'
    def cmd_M80(self, params):
        os.system(self.get_request('ON'))
        os.system('/bin/echo RESTART > /tmp/printer')

    def get_request(self, power):
        return "curl 'http://{0}/cm?&user={1}&password={2}&cmnd=Power%20{3}'".format(self.settings['host'], self.settings['user'], self.settings['pass'], power)

def load_config(config):
    return SanoffBasicTasmotaPower(config)

в файле конфигурации klippera

Код: Выделить всё

[tasmota_power]
host: 192.168.1.165
user: admin
pass:
в конфиг файле должны быть закомментированы ваши команды M80, M81 (gcode_macro).

так же можно выключать и включать принтер через браузер/умный дом не заходя в сам интерфейс Duet Web Control:

Код: Выделить всё

http://192.168.1.39:4750/rr_gcode?gcode=M80
http://192.168.1.39:4750/rr_gcode?gcode=M81
ну или любые другие команды..

pc я не понял как через файл конфигурации (gcode_macro) создать команду с флагом "when_not_ready" (команда может быть выполнена когда host не может подсоединится к микроконтроллеру), пришлось его поднимать в коде...

Avtonomys
Сообщения: 1141
Зарегистрирован: 31 авг 2017, 14:26
Имя: Кирилл
Откуда: Москва, CAO
Благодарил (а): 38 раз
Поблагодарили: 167 раз
Контактная информация:

Re: Помогите настроить прошивку Klipper

Непрочитанное сообщение Avtonomys » 23 фев 2020, 20:30

Avtonomys писал(а):
20 фев 2020, 21:01
если кому интересно как ставить в тв бокс - https://3dtoday.ru/blogs/62727c8879/oct ... 15-i-bonus
ЗС. работает только с проводным интернетом...
Купил бокс :D версия 5.5.0 запустилась сразу, 5.5.1 - черный экран и ничего...
Спойлер
Снимок.PNG
Снимок.PNG (43.55 КБ) 2570 просмотров
Спойлер
Снимок.PNG
Снимок.PNG (32.86 КБ) 2569 просмотров
система загружается с eMMC, usb вынута
Спойлер
Снимок.PNG
Снимок.PNG (22.98 КБ) 2566 просмотров

Ответить

Вернуться в «3D принтеры и 3D печать»

Яндекс.Метрика