Octoprint на tv-приставке за 15$ и бонус

strel
Идет загрузка
Загрузка
19.02.2020
6174
54
Техничка

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

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

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

39

Всех приветствую.

Предлагаю вашему вниманию инструкцию по изготовлению принт-сервера для ваших 3D-принтеров на очень недорогом оборудовании.

В качестве мини-компьютера я использую вот такие телевизионные приставки x96mini:

Она стоит из 4х-ядерного процессора Amlogic S905x с частотой 1.53ГГц, 1Гб оперативной памяти, 8 Гб встроенной памяти NAND, сетевой интерфейс LAN и WiFi, слот для карты памяти microSD и двух портов USB2.0. Родная операционная система - Android. Главное преимущество перед другими вариантами: OrangePi, RaspberryPi 3B, - это наличие корпуса, блока питания и приемлемой производительности за самые малые деньги.

Операционная система Linux Armbian собранная для этого устройства замечательным человеком Balbes150 развивается на форуме Armbian. К сожалению, в текущей версии дистрибутива, работа Wifi нестабильна и неприемлема для нужд 3д-печати.

Переустановка

Итак, вам необходим образ операционной системы, например, я использовал

Armbian_20.02.0-rc1.037_Aml-s9xxx_buster_current_5.5.0-rc6_20200205.img.xz

Образ Armbian_20.05.0-trunk_Arm-64_buster_current_5.5.1_20200218.img - самый свежий на сегодняшний день - тоже работает стабильно.

Необходимо распаковать этот образ из архива и перенести на флешку или на карту памяти большего объема (8Гб хотя бы). Для записи образа на флешку я использовал утилиту DD (в *nix) или Rufus в Windows.

#не сотрите себе что-нибудь! У меня флешка заняла устройство /dev/sdc. У вас может быть иначе!

dd if=Armbian_20.02.0-rc1.037_Aml-s9xxx_buster_current_5.5.0-rc6_20200205.img of=/dev/sdc

dd sync

Важной особенностью текущей версии образа является необходимость исправить файл uEnv.txt из раздела BOOT.  Этот раздел появится на флешке после окончания записи образа. Надо найти, раскоментировать и отредактировать внутри этого файла две строчки для нашего устройства aml S9xxx:

#aml s9xxxx

FDT=/dtb/amlogic/meson-gxl-s905w-p281.dtb

APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0

Все остальные строки, относящиеся к другим платам, должны быть закомментированы символом # в начале каждой строки. Для каждой поддерживаемой приставки написан свой файл .dtb. Потому просто список этих файлов в образе, говорит о огромном количестве поддерживаемых tv-приставок. На x96mini свет клином не сошелся. Если вы еще только выбираете подходящую приставку, можете сначала свериться со списком .dtb файлов в дистрибутиве.

Итак, вернемся к установке. После этих операций флешка станет загрузочной для тв-приставки.

Далее необходимо запустить приставку с подготовленной флешки и подключиться к ней по протоколу SSH.

Подготовьте проводное подключение к вашей локальной сети и питание для приставки. Вставьте в приставку подготовленную флешку. Спичкой нажмите кнопку резет в глубине разъема AV и подключите питание. Затем сразу же можете отпустить кнопку резет. Если все сделано правильно, приставка запустит операционную систему Armbian с флешки. Результат вы можете контролировать, подключив к приставке телевизор по HDMI.

Теперь подключитесь к приставке по протоколу SSH: В *nix вам понадобится openssh, в Windows это умеет оболочка Powershell или утилита Putty. Любым удобным способом узнайте IP-адрес полученный приставкой. Можете попробовать обратиться к приставке по hostname-имени. В текущем образе используется имя AML:

 ssh root@aml

логин: root

пароль:  1234

Если авторизация прошла успешно, вы увидете приветствие системы, текущие параметры работы микрокомпьютера и требование сменить пароль и создать нового пользователя. Воспользуйтесь этой возможностью чтобы создать пользователя octo. Польза от традиции *nix "НЕ СИДИ ПОД РУТОМ" общеизвестна.

Далее вам надо перенести образ с флешки во внутреннюю память. Для этого Балбес150 сделал скрипт, который все выполняет автоматически. В текущем образе это делается так:

sh ./install-aml.sh

После успешного переноса, можете перезагрузить приставку и отключить флешку. Она вам больше не понадобится.

reboot now

На этом можно было бы и закончить инструкцию. Специфическое для данной коробочки закончилась. Это уже стало обычной "малиной-муталиной" - миникомпьютер linux для любых целей. Например, чтобы установить октопринт. Установка octoprint ничем не отличается от установки для RaspberryPi. Оригинал инструкции находится здесь и правильнее воспользоваться ею. На всякий случай вот она же с моими комментариями:

#даем принт-серверу звучное имя

nano /etc/hostname

#вместо aml я назвал свою коробочку octoprint

#делаем юзера octo:

adduser octo

#Разрешить octo админские способности

#дописать в конец sudoers строчку

#    octo ALL=NOPASSWD:ALL

nano /etc/sudoers

#переключаемся на пользователя octo:

su octo

#приступаем к установке

cd ~/

sudo apt update

sudo apt install python-pip python-dev python-setuptools python-virtualenv git libyaml-dev build-essential virtualenv

mkdir OctoPrint && cd OctoPrint

virtualenv venv

source venv/bin/activate

pip install pip --upgrade

pip install octoprint

#добавим автоматический запуск сервиса октопринт:

wget https://github.com/foosel/OctoPrint/raw/master/scripts/octoprint.init && sudo mv octoprint.init /etc/init.d/octoprint

wget https://github.com/foosel/OctoPrint/raw/master/scripts/octoprint.default && sudo mv octoprint.default /etc/default/octoprint

sudo chmod +x /etc/init.d/octoprint

#корректируй и раскомментирую пути в /etc/default/octoprint

nano /etc/default/octoprint

sudo update-rc.d octoprint defaults

sudo service octoprint start

После этих последних двух команд, сервис октопринта станет доступен по адресу http://octoprint:5000. Можете пользоваться.

А теперь обещанный бонус.

Данная коробка прекрасно работает не только с октопринтом или, например, двумя октопринтами одновременно. Я с большим удовольствием для себя открым возможность пользоваться сетевым доступом к принтеру средствами ПО Klipper. Мой принтер Anycubic Delta Kossel Plus прошит клиппером, сервером клиппера выступает тв-приставка. И оказалось, что для клиппера существует веб-интерфейс.

Сам клиппер встает на коробочку тремя командами:

cd ~/

git clone https://github.com/KevinOConnor/klipper

./klipper/scripts/install-octopi.sh

А чтобы у клиппера появилась веб-морда, необходимо выполнить инструкции со страницы проекта dwc2-for-klipper. Мне очень понравилось управление с помощью DWC2, что я даже отказался от использования октопринта на своей дельте.

На этом все. Желаю вам творческих успехов!

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

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

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

39
Комментарии к статье

Комментарии

19.02.2020 в 12:40
1

А что с поддержкой камер?

19.02.2020 в 14:02
0

Usb-камеры поддерживаются. Я запускал контроль процесса печати с помощью октопринта. Полет нормальный.

19.02.2020 в 18:49
0

А ее 1-8гб достаточно или 2-16гб лучше брать? Нужна только для Октопринта.

19.02.2020 в 19:25
0

С 1Гб оперативки у меня одновременно крутится два октопринта и один клиппер и свободных ресурсов еще вагон

22.02.2020 в 00:37
0

Для окты с клиппером и вебкой 256МБ за уши. Единственное, чему не хватает - плагин для визуализации кривизны стола.

19.02.2020 в 13:00
0

Если есть второй USB - то можно воткнуть WEB-камеру, подтянется автоматом, ну кроме совсем древних.
USB-Hub так же допустим, но рисковать бы не стал, вешая на один хам принтер и камеру (mjpeg поток широк).
Если нет, то IP камера по Ethernet (должна уметь выдавать поток mjpeg - смотреть инструкцию камеры, D_Link умеют).
В Octoprint источником камеры указывается адрес потока mjpeg и все работает (на сайте их описано).

По факту - PI камеру на малинке выкинул, использую USB-WEB.
Кабель длинный, удобный, экранированный.
Матрицу и оптику можно по вкусу подобрать.

19.02.2020 в 13:17
0

Ссылка на 15$ есть?

19.02.2020 в 17:30
0

$18 минус купончики, кэшбеки и т.д.

f61
21.02.2020 в 10:56
0

А в рознице всё равно от 2200 целковых...

19.02.2020 в 14:55
2

Всё бы хорошо, но толку от него без работающего WiFi? Я OrangePi PC купил когда-то по акции за 9 баксов, к нему за 150 рублей WiFi адаптер и за пару баксов БП на 2 китайских ампера с Али. И никаких проблем с WiFi, работает в паре с принтером и Printoid на телефоне - удобно...

ugh
19.02.2020 в 15:04
0

К этой приставке тоже можно usb-свисток приделать.  У нее же 2 usb-порта.

Жаль очень, что встроенный модуль wifi не имеет нормальных драйверов.

19.02.2020 в 15:07
0

Да, но если со свистком будет работать, всё равно хорошая альтернатива "фруктам и ягодам", если без акций...

ugh
19.02.2020 в 18:05
1

Есть LAN-порт.

19.02.2020 в 15:22
0

у меня вообще завалялось штуки 3 таких приставки. Надо попробовать.

19.02.2020 в 17:03
0

Вау! А это весьма замечательная тема, автор спасибо!

19.02.2020 в 18:14
1

Я с удовольствием читаю такие статьи. Меня завораживает всякие малинки-октопринтеры и прочее, но я никак не соображу, что в этом позитивного. Если кто может, расскажите на пальцах, не дайте умереть  дура.. 

19.02.2020 в 19:11
0

Возможность управления принтером из любой точки планеты (может кому-то это и нужно..хз), хотя парой мне бы пригодилось, находясь даже около принтера. Возможность подключить веб-камеру и наблюдать за процессом так же откуда угодно. Но что действительно нужное, когда печатаете одновременно несколько деталей и какая-то вдруг, к примеру, отклеилась от стола, то её можно исключить из процесса печати (но для этого необходимо правильно подготовить файл для печати). Может еще что-то полезное есть, сам не пользуюсь, хотя подумываю. Единственное, до сих пор не пойму, как это подключить к материнке принтера. У меня Arduino+RuRamps1.4...Через ардуинку и её USB порт?

19.02.2020 в 19:28
1

Да

19.02.2020 в 20:06
0

А в прошивке принтера придётся ли что-то менять для такого симбиоза?

19.02.2020 в 21:19
0

Ничего. Для принтера печать из октопринт - это просто "печать по usb"

19.02.2020 в 21:27
0

Убедили. Буду пробовать. Хотя бы для личного опыта)

19.02.2020 в 19:33
0

спасибо, что ответили.

 никоим образом не хочу критиковать идею и реализацию, но:

- Контролировать или наблюдать из Воронежа за принтером , например, из Караганде.. понятно что сервис, так себе

- наблюдать дистанционно за работой принтера - да ничего там не видно, видно что принтер двигает головой и пожалуй все ( проверял лично), Ваш пример  с отслоившейся  деталью - это стоп. авария. По закону Мерфи - все случается когда вы не смотрите за процессом.

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

19.02.2020 в 19:27
0

А меня прикалывает возможность кидать на печать через браузер без флешки. Хорошо отлаженному принтеру ничего не мешает самостоятельно прогреться, напечатать модель и еще кинуть мне в телеграм фотку после окончания печати

19.02.2020 в 20:14
0

Strel

Если Вы посмотрите на ссылку "Вот здесь" в моем сообщении, то поймете , что возможностей у меня больше с применением стандартного и нестандартного софта. 

Я обсуждаю не эфемерные возможности получить фотографию напечатанной детали на телефон, что уже само по себе бесполезно - она уже напечатана и изменить ничего нельзя, а технологию организации процесса. Важна суть улучшения организации процесса печати, при котором возможно снижаются издержки производства.

Спасибо

19.02.2020 в 21:30
0

Таки я не вижу принципиальной разницы.

У меня миникомпьютер решает задачу сетевого доступа к принтеру. Принтсервер, так сказать. Ничего другого не требуется. Делаю я это наиболее экономным для себя способом.

Следующая попытка упрощения - усовершенствованный esp3d. Его заводская реализация неоптимальна и очень неудобна в эксплуатации.

19.02.2020 в 22:25
1

Я понял.

Умею, хочу - сделал , Отличо, Вам +

20.02.2020 в 17:14
0

Если поставите на ноутбук OctoPrint (на офф.сайте есть инструкция для винды), то получите тоже, что у других на микрокомпьютере. Это готовое решение с веб-интерфейсом для мониторинга и управления, не надо городить огород с общими папками etc. Ноутбук всего лишь дороже.

20.02.2020 в 22:46
0

Спасибо, что ответили

Установить OktoPrint не проблема. Только никто не может внятно объяснить для чего это все.

Ноутбуки, которые я использую, сейчас стоят 1-3 тыс руб, в зависимости от потертости, но это полноценный компьютер с WIN, со всеми плюсами.

Я не против решений, описанных автором. Это преподносится как иновация, но внятно никто не объясняет - что это, описывают только "танцы с бубном".

Я отлично понимаю, автора -"... я умею это делать, мне интересно и я это сделал..". Это хорошо, это правильно. 

Я не спорю, ни с Вами ни с автором статьи

Спасибо 

20.02.2020 в 23:15
1

Суть инновации тут, пожалуй, в том, что очень дешево для готовой коробочки с корпусом и блоком питания, даже если сравнивать с самыми простыми Orange Pi. По такому же принципу я как-то давно поднимал OctoPrint на роутере. А сейчас даже загорелся идеей купить попробовать эту самую приставку.

21.02.2020 в 03:15
0

Я тоже покупал приставку с такой целью, потратил день, чтоб завести WiFi на чипе, производитель которого давно не обновлял дрова. И ядро патчил и т д. В итоге, заводилось, работало и умирало. Психанул, вернул прошивку и продал на авито. Если нужен полностью рабочий и стабильный октопринт - это либо нетбук, либо малинка. Китайские апельсины и т.д. вечно частично рабочие.

24.02.2020 в 13:11
1

Накуа нестабильный Ви-Фи в шелезяке, когда есть Изернет?


Отмерил кабель,  проложил, обжал (или раздобыл обжатый патчкорд), пользуешься. Никаких проблем с «перенаселённым» Ви-Фи в современных многоквартирниках.

24.02.2020 в 14:05
0

Принтер мигрирует. Балкон, комната. Поэтому нужна вафля.

25.02.2020 в 05:24
1

Если он „мигрирует“ включенным и в процессе выполнения задания, тогда может быть — соглашусь с наличием вафли.

Медь на балкон ч\з подоконное пространство прокладывается на раз–два, но нужна обжимка.

25.02.2020 в 05:33
0

Зачем тянуть витуху к принтеру, если он по ней не печатает? А сеть нужна для разового закидывания файла. Это прям избыточные телодвижения. У меня медь лежит там, где она нужна постоянно. А вафля используется там, где она нужна временно. Вот и весь ответ. 

21.02.2020 в 09:02
1

Отличие "полноценного ноутбука" за 1000р разной степени потертости от микрокомпьютера в тв-приставке:

  • Размер. Микрокомпьютер умещается под принтером
  • Шум. Микрокомпьютер не шумит совсем
  • Энернопотребление.
  • Производительность. ARM ощутимо менее производительный чем x86.
  • Функционал. Микрокомпьютер не имеет ни клавиатуры, ни экрана и пр.

Различия, так сказать, очевидны. Но вот вы спрашиваете, я отвечаю.

А мотивация моя была не "я умею и могу", а отказаться от использования флешек в печати. Не бегать с каждым файликом к принтеру.

21.02.2020 в 11:29
2

Установить OktoPrint не проблема. Только никто не может внятно объяснить для чего это все.

Да проще поставить и самому посмотреть, чем читать длиннющие статьи. Что вы теряете-то? Не понравилось - снесли. Если будете пробовать, не забудьте, что кроме веб-интерфейса есть плагин к новым cura (если вы её используете). Вам же в любом случае приходится решать те же задачи, которые уже решены в OctoPrint. Управление и мониторинг...

Перед печатью я захожу в cura и первым делом прямо из неё включаю прогрев стола. Потом нарезаю, отправляю файл на печать одной кнопкой и там же переключаюсь на камеру. И это с любого компа в доме: жена печатает со своего ноутбука, я со своего.

Понятно, что всё это можно решить иначе. Вопрос надо ли, если всё уже придумано до нас...

У меня тоже завалялось штуки три старых ноутбука. Но и апельсинка тоже завалялась. Не было бы её - ставил бы OctoPrint на бук. Но плюсов "полноценного компьютера", тем более с WIN я не вижу. Минусы есть. Обновления, внезапные ребуты, вирусы... Чем проще решение задачи, тем лучше.

19.02.2020 в 19:36
0

Интересненько...похоже не за горами и хост-сервер на андроид и таком железе, ну разумеется в сугубо своих интересах, не коммерческих,

20.02.2020 в 12:16
0

Октопринт работает на андроиде, ссылки видел когдато

20.02.2020 в 14:56
0

на андройде можно поднять "типа-виртуалку" с линуксом, внутри которой запустить октопринт.

Комментарий удалён

19.02.2020 в 21:07
0

Вот с утра только свой запустил, у меня X96 Air, 4/32, но писатель из меня так себе

20.02.2020 в 01:24

Комментарий удалён

20.02.2020 в 07:41
0

Может пригодится, автоматический установщик Octoprint https://github.com/Nebari-xx/octoprint_installer

20.02.2020 в 11:37
2

Господь бог, это уже третий раз когда хочется "отсыпать лайков этому господину", но рейтинг не позволяет! :( Как этот ваш рейтинг тут заработать? 

24.02.2020 в 13:16
1

Написать статейку, хотябы в дневник.

ВопросыОтветы и МыПечатаем в рейтинге особо не учитываются.

Или пейсать много полезных комментариев и понемногу на них получать плюсики и, соответственно, рейтинг.

20.02.2020 в 12:17
0

А хардварный компорт там можно вытащить? удобен тем что можно перегружать принтак без потери usbшного компорта.

22.02.2020 в 00:44
0

Обычно в любой железке где-то на плате торчит 3,3V UART, так что, скорее всего, да.

05.03.2020 в 22:12
0

Купил box. Как ТВ приставка работает, проверил. Скачал образ, записал через Rufus. 

Изменил строчку в файле uEnv, целиком он выглядит так:

LINUX=/zImage

INITRD=/uInitrd

# rk-3399

#FDT=/dtb/rockchip/rk3399-rock-pi-4.dtb

#FDT=/dtb/rockchip/rk3399-nanopc-t4.dtb

#APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=uart8250,mmio32,0xff1a0000 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0

# rk-3328

#FDT=/dtb/rockchip/rk3328-box.dtb

#APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=uart8250,mmio32,0xff130000 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0

# aw h6

#FDT=/dtb/allwinner/sun50i-h6-tanix-tx6.dtb

#APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyS0,115200 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0

#APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyS0,115200 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0 mem=2048M video=HDMI-A-1:e

# aml s9xxx

FDT=/dtb/amlogic/meson-gxl-s905w-p281.dtb

APPEND=root=LABEL=ROOTFS rootflags=data=writeback rw console=ttyAML0,115200n8 console=tty0 no_console_suspend consoleblank=0 fsck.fix=yes fsck.repair=yes net.ifnames=0

Подключил к телеку, вставил флешку, зажал reset, включил питание, отпусти кнопку. Далее показывает картинку X96 min, а потом черный экран. Это как-то лечится? Или может надо через MicroSD карту ?

Пробовал три разных образа.

06.03.2020 в 09:23
0

Зашел в андроиде в Обновления. Выбрал скрипт загрузки и нажал обновить. Коробка перезагрузилась и...тут же вылетает то, что на фотке.


10.05.2020 в 05:22
0

На оранже при активном пользовании флешка - расходник. Дохнут ну раз в полгода примерно. Как быть с твбоксом, когда у него внутренняя флешка концы отдаст? Новый твбокс покупать или перепаивать? :)

11.05.2020 в 10:29
0

Да. Сдохло - в реанимацию. Но пока не сдохло.

А еще можно как в Пишке работать с внешней памяти (sd/usb).


01.06.2020 в 18:21
0

Подскажите плиз- пришла моя приставка, взял X96max+. При покупке было указано Amlogic S905x3.

Скачал по вашей ссылке Armbian_20.02.0-rc1.037_Aml-s9xxx_buster_current_5.5.0-rc6_20200205.img.xz

После установки проверил uEnv.txt . Устанавливал и Rufus и Etcher, но получается вот такая фигня, и роутер его не видит. Хотя при включении как тв- сеть работает и видна. Подскажите в чем проблема?



03.06.2020 в 13:47
0

Проблема несомненно в используемом образе. Я вижу, система у вас стартанула. остается подключить клавиатуру, включить режим красноглазого сисадмина и определить что пошло не так, и все исправить. Возможно, по ссылке указанной в начале статьи, в профильных темах по вашему устройству, уже есть решение вашей проблемы.

03.06.2020 в 14:27
0

Спасибо, но по английски с ними говорить я не могу, а то что смог понять- балбес150 не поддерживает s905x3.



Для написания комментариев, пожалуйста, авторизуйтесь.

Читайте в блогах

Балерина

Как перевести CURA на нормальный русский язык

SKR вместо Duet-а и всё с тем же RepRapFirmware

На заметку, может кому и пригодится.

Возможно у вас жена- перфекционист и вам некуда девать пластик)

Пятница. Поем.