Я.Алиса и klipper
Привет! Замутил себе через алису розетки на esp8266 и, в очередную ночную печать задумался, как бы прикрутить принтер к Алисе. Хотелось переключать подсветку и выключать корректно хост, с ним по пину реле выключается и весь принтер. Попробовал - получилось. Рассказываю.
Клиппер ставил на распбиан через kiauh, как все нормальные люди. Он ставит moonraker, которым и управляет Алиса, и вот его апи.
Что нужно? Со стороны Алисы - подключить навык "Домовенок Кузя". С вашей стороны - белый IP адрес от провайдера (динамический или статический), если динамический - то настроить DynDNS (я настроил noip.com, в него умеет мой роутер), загнать в статический адрес вашего хоста принтера, чтобы он всегда был один.
Принцип простой - Алиса пинает через устройства навык Кузя в его виртуальный выключатель, выключатель правилом GET или POST пинает ваш роутер, тот через проброс порта пинает moonraker, принтер выполняет задачу.
Начнем с правила выключения хоста. Пробросьте какой нибудь порт, например 5009 на адрес хоста, на порт 80. Подключите к Алисе навык Кузя, перейдите на его сайт https://alexstar.ru/ и добавьте правило для выключения:
{ "jsonrpc": "2.0", "method": "machine.shutdown", "id": 4665 }
Далее создайте виртуальное устройство "выключатель" в разделе Виртуальные устройства
Откройте на смартфоне Яндекс, в устройствах найдите новый Выключатель и переименуйте в желаемую голосовую фразу для выключения принтера, например "миник выключить"
Осталось лишь разрешить серверу Кузи посылать команды вам в мунрейкер. Это делается так:
Адрес для копипасты: 217.25.90.132
ВНИМАНИЕ! Сейчас вопрос защиты ложится только на вебсервер хоста, и насколько он надежен - я не могу знать. Без этой строчки в конфиге я не смог засылать мунрейкеру команды, но вдруг это как то возможно. Если Ваш роутер поддерживает в настройке проброса порта указание ИСТОЧНИКА - укажите там этот же адрес. Возможно, стоит покопать в сторону дополнительной basic auth авторизации для внешних адресов на nginx, который обслуживает проброс потока до мунрейкера.
Если вы все сделали правильно - выключатель должен работать, тушить хост.
Также возможно исполнение GCODE и макросов, на примере макроса дневной подсветки. Делаем правило HTTP, привязываем к выключателю аналогично и находим, переименовываем его в Алисе.
Все работает, вы великолепны :)Если вы не выключаете хост вместе с принтером, то можете использовать gcode M80, M81 для управления включением и выключением. Но я предпочитаю обесточивать наглухо весь прибор, и вам советую.
Еще больше интересных статей
Быстрая печать ажурных стенок в Ultimaker Cura
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Подсветка для Ender 3 и Sprite Extruder с обдувом K3D
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Попросили меня подробнее написать про подсветку на моем Ender 3....
Настраиваем прошивку Marlin и заливаем её в 3D принтер
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Комментарии и вопросы
А гадить - делать угодное, люб...
В овощесушилке сушу часа 4 на....
Здравствуйте, хочу приобрести....
Посоветуйте хотенд с гладким т...
Здравствуйте, столкнулся с про...
Всем привет! Прошу, не кидайте...
Собственно и вопрос: Как в Ком...