Апельсиновый осьминог: пошаговое руководство

eta4ever
Идет загрузка
Загрузка
13.01.2016
73496
138
печатает на PICASO Designer X PRO
RepRap

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

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

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

63
Сейчас многие уже управляют 3D-принтерами с помощью микро-пк - оно и автономно, и удобнее, чем карточки туда-сюда дергать. Традиционно используется Raspberry Pi, как самый распространенный 'малыш' с огромным коммьюнити. Софт хороший тоже есть. Это и опенсорсный Octoprint, и коммерческий Repetier-Server (бесплатная версия немножко ограничена, но юзабельна, про это ПО я уже писал).

Когда малинку постиг огромный успех, начали появляться 'убийцы' Raspberry Pi. Например, китайские поделия - их объединяет потенциально мощное железо, низкая цена, никакая поддержка, уйма кастомных прошивок-'паршивок' и необходимость наличия в хозяйстве бубна приличного диаметра для инициализации адекватной работы. Вот о граблях, которыми оснащена популярная 'альтернатива' малинки, Orange Pi, я расскажу. В разрезе установки работающего минимального Debian и разворачивании на его базе Octoprint или Repetier-Server.

1. Выбор и покупка 'апельсинки'.

Я покупал самую простую и дешевую версию под названием Orange Pi PC в официальном магазине производителя на Али. 15 долларов, плюс 3.5 - доставка. Рекомендую приобретать сразу с блоком питания - по microUSB плата не питается, а разъем не самый распространенный, у меня в хозяйстве подходящего не нашлось, и я привандалил провода прямо к плате. Orange Pi PC не балует большим количеством интерфейсов, но все реально нужное для наших целей есть - USB и Ethernet.

2. Прошивка.

Это самая веселая процедура. Дело в том, что работа платы всецело зависит от того, как сконфигурирована загрузочная часть прошивки. Именно там указывается, например, какие порты будут доступны ОС, а какие отключены 'за ненадобностью'. Загрузчик можно собирать самостоятельно или воспользоваться результатом творчества добрых людей. Отличные прошивки собирает энтузиаст под ником loboris, на его решении я и остановился. В конце статьи будет ссылка на сложенные мною в одну кучу нужные файлики, а сейчас - общая последовательность действий.

2.1. Выбор нужных файлов. Графический интерфейс и всякие лишние примочки не нужны, поэтому Debian_mini_jessie.img.xz. Помимо основного образа, нам понадобятся самые свежие версии загрузчика и модулей, scriptbin_kernel.tar.gz.

2.2. Запись образа. Образ имеет довольно скромный объем, чуть более 800 Мб, поэтому хватит гигабайтной microSD (я использовал 2 Гб). Если вы работаете под Windows, то надо распаковать из xz-архива img, и записать его на карточку. Я рекомендую для этого использовать Rufus. Линуксоиды могут воспользоваться штатными средствами своей ОС, вплоть до великого и ужасного dd. После записи образа на карточке образуется два раздела, нас сейчас интересует BOOT (файловая система FAT).

2.3. Выбор загрузчика. Удаляем все нафиг с раздела BOOT, распаковываем scriptbin_kernel.tar.gz. Кидаем в BOOT uImage_OPI-2, переименовываем в uImage. И туда же script.bin.OPI-PC_1080p60 (последние знаки - это режим выхода HDMI, если вдруг будете подключать апельсинку к монитору), переименовать в script.bin.

2.4. Пробная загрузка. Вставляем карточку в Orange Pi, подключаем сеть и питание, ждем. Через некоторое время должен загореться красный светодиод, это знак того, что начальная стадия загрузки прошла успешно. 'Железного' светодиода питания у Orange Pi нет, поэтому плата не подает никаких признаков жизни при простом включении (без карточки)!

Теперь надо выяснить, какой IP адрес получила апельсинка. Теоретически у вас может работать в сети служба Bonjour, но я предполагаю, что имеется просто роутер с DHCP сервером. Вот на него надо залезть, и посмотреть, какой IP выдан устройству с именем OrangePi. Далее (для Windows) используем Putty для SSH-подключения. Линуксоиды просто пишут в терминале ssh -l orangepi . Дефолтный пользователь, отличный от root, у нас orangepi. Пароль у него тоже orangepi. Если подключение прошло успешно - расширяем linux-раздел на всю карточку (sudo fs_resize), перезагружаем аппарат (sudo reboot), подключаемся еще раз и переходим к настройке.



3. Настройка пингвина.


Для нормальной работы USB UART нам понадобятся модули ядра, которые лежали в scriptbin_kernel.tar.gz (папка lib). Проще всего закинуть их через флешку (альтернатива - выключить апельсинку, подключить карточку к нормальному компьютеру, примонтировать linux-раздел, но это просто и очевидно только не для Windows). Берем флешку (файловая система FAT), закидываем туда папку lib, подключаем флешку к апельсинке. Никакой роскоши, вроде автомонтирования, в минимальном образе Debian не предусмотрено, поэтому только mount, только хардкор. Хинт: можно копировать команды отсюда (Ctrl+C), а потом кидать их в окно Putty просто правым кликом.

dmesg, видим там что-то типа [sda] Attached SCSI removable disk. Значит, нам нужен раздел sda1

sudo mkdir /mnt/flash && sudo mount /dev/sda1 /mnt/flash

Создаем папку для монтирования и подключаем туда раздел флешки.

sudo cp -r /mnt/flash/lib /lib && sudo depmod -a

Копируем и обновляем модули (может занять некоторое время).

sudo umount /dev/sda1 && sudo rm -rf /mnt/flash

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

С настройкой пингвина закончили. Можно попробовать подключить принтер. В моему случае китайская ардуина оснащена USB UART CH341, поэтому в выводе dmesg я вижу следующее: usb 7-1: ch341-uart converter now attached to ttyUSB0.

Теперь можно устанавливать либо OctoPrint, либо Repetier-Server.

OctoPrint
Устанавливается по инструкции для малинки.

cd ~

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

git clone https://github.com/foosel/OctoPrint.git

cd OctoPrint

virtualenv --system-site-packages venv

./venv/bin/python setup.py install

mkdir ~/.octoprint


Этой пачкой команд мы переходим в домашний каталог, устанавливаем Python с нужными запчастями, Git и другое барахло. Затем скачиваем исходники OctoPrint, собираем их и устанавливаем. Если при выполнении setup.py install вылезает ошибка по таймауту, запускаем эту команду еще раз.

sudo usermod -a -G tty orangepi

sudo usermod -a -G dialout orangepi


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

~/OctoPrint/venv/bin/octoprint

Запускаем OctoPrint. В итоге в консоли должны получить сообщение octoprint.server - INFO - Listening on http://0.0.0.0:5000. Можно подключаться браузером к http://(ip апельсинки):5000 и настраивать OctoPrint под ваш принтер.

Если все работает, можно закрыть OctoPrint (Ctrl+C в консоли) и настроить автозапуск.

sudo cp ~/OctoPrint/scripts/octoprint.init /etc/init.d/octoprint

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

sudo cp ~/OctoPrint/scripts/octoprint.default /etc/default/octoprint


Это создание скрипта запуска

sudo nano /etc/default/octoprint

Открываем редактор, там нужно изменить следующее (не забываем убрать # перед DAEMON):

OCTOPRINT_USER=orangepi

DAEMON=/home/orangepi/OctoPrint/venv/bin/octoprint

Ctrl+0, Enter, Ctrl+X (сохранение, закрытие редактора).

sudo update-rc.d octoprint defaults

Обновление списка автозагрузки. Теперь OctoPrint стартует после запуска апельсинки.

Repetier-Server



Устанавливается даже проще. Идем на страницу загрузки и копируем ссылку на актуальную версию пакета для архитектуры armel.

В консоли

cd ~

wget (ссылка на пакет.deb)

sudo dpkg -i (пакет.deb
)

Раз уж я разжевываю азы Linux: набираете sudo dpkg -i R, нажимаете Tab, умный пингвин дополняет имя файла. Этими командами выполняется скачивание и установка Repetier-Server. Больше ничего делать не надо, он автоматически прописывается в автозагрузку и доступен по адресу http://(ip апельсинки):3344.

На этом на сегодня все. На вопросы, насколько смогу, отвечу. Кстати, принтер можно подключать минуя всякие ненужные USB UART, через аппаратный последовательный порт апельсинки, уже проверено и работает, но об этом в другой раз. 'Родную' камеру апельсинки пока не победил, но в процессе.

Образ системы, загрузочные файлы и lib для Orange Pi PC.

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

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

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

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

Комментарии

13.01.2016 в 18:55
0

А можно ли подключить экран и пользоваться так?

13.01.2016 в 18:59
0

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

При этом никто не мешает использовать октопринт! Ставим графический дистриб, накатываем октопринт, и управляем им либо локально из браузера, либо по сети.

13.01.2016 в 19:08
0

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

13.01.2016 в 19:10
0

Так у него ж нет 'обычного' интерфейса, только веб. Можно взять сенсорный дисплей, поставить абсолютный минимум того, что нужно для графики и настроить автозапуск браузера в полноэкранном режиме.

13.01.2016 в 19:46
1

У меня была идея написать интерфейс для 7-10 дюимового экрана и малины или оранджа... Надо будет подумать над этим ещё раз)))

13.01.2016 в 20:22
1

Так а почему бы не развернуть минимальные иксы с браузером, зачем что-то писать?

13.01.2016 в 21:09
0

Ты себе представляешь браузер на экране в 7-10 дюимов? Представил? А теперь представь, что тебе ещё нужно как-то общаться с открытой страницей октопринта.... Лучше написать соответствующий интерфейс и не обязательно под октопринт или ещё что-то!

13.01.2016 в 21:12
0

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

Зря вы так про браузер. F11, и ничего лишнего ;)

13.01.2016 в 21:22
0

У меня вообще есть идея написать для всяких малинок, апельсинок и бананов с экраном ПО с интегрированным слайсером и прочими плюшками, чтобы так сказать полностью отказаться компа. Вставил флеху с STL, указал все параметры для слайсинга или выбрал предсохраненный профиль, а ПО установленное на микрокомпе тебе и нарезало и визуально показало, что ты получишь в итоге!

13.01.2016 в 21:23
0

К OctoPrint можно кусок куры приделать и слайсить, в принципе. Не пробовал.
Можно упереться в нехватку мощи, хотя, у апельсинки ее немало.

13.01.2016 в 21:29
0

Возможно! Но! Есть одно весомое но! Кол-во оперативной памяти! Иксы+браузер и у вас от 1Гб памяти почти ничего не останется. Qt умеет рисовать напрямую во фреймбуфер, т.е. ему не нужен оконный менеджер для отображения информации на дисплее.

13.01.2016 в 21:35
1

Предполагаю, что рисовать все на таком уровне - те еще трудозатраты.
С другой стороны, вспомните год этак 2004-2007. Полгигабайта памяти было нормой. Просто сайты были не таким лютым многомегабайтным адом. На одно окно легкого веб-интерфейса памяти должно хватить.

13.01.2016 в 21:45
1

Предполагаю, что рисовать все на таком уровне - те еще трудозатраты.
Сам фреймворк обеспечивает рисование на таком уровне и трудозатраты абсолютны идентичны с разработкой обычного оконного приложения.
На одно окно легкого веб-интерфейса памяти должно хватить.
Тут дело даже не в странице октопринта, а в ненужном оверхэде Xorg + браузер. Только иксы отжирают порядка 300мбайт + ещё браузер вот и считайте. Приложение же на Qt максимум будет жрать 100мб(и то много написал).

13.01.2016 в 21:51
0

Да, возможно. Линуксы нынче тоже жирные стали.

14.01.2016 в 00:48
2

Ты себе представляешь браузер на экране в 7-10 дюимов? Представил? А теперь представь, что тебе ещё нужно как-то общаться с открытой страницей октопринта...
Это просто ужасно, экран в 10 дюймов!!!Ужас-ужас!!!


14.01.2016 в 00:57
2

А, то есть, все уже более-менее придумано.
http://plugins.octoprint.org/plugins/touchui/

14.01.2016 в 13:00
0

Я конечно всё понимаю, но кто настраивал тач на иксах много не смеется.... Да и скудноватый интерфейска как по мне в этом плагине!

14.01.2016 в 13:19
1

Я бы делал еще 'скуднее'. Две физических ручки (Speed и Flow), на дефолтном экране большие цифры нужных параметров (температуры, скорость, расчетное время окончания) и кнопки температуры. Остальное можно прятать в меню.

14.01.2016 в 01:09
1

А вот это гораздо симпатичнее смотрится, на мой взгляд
http://forums.reprap.org/read.php?1,460818

[IMG]http://forums.reprap.org/addon.php?1,module=embed_images,url=http%3A%2F%2Fforums.reprap.org%2Faddon.php%3F276%2Cmodule%3Dembed_images%2Curl%3Dhttp%253A%252F%252Fi.imgur.com%252FDTO6V33.jpg[/IMG]

14.01.2016 в 01:37
0

Годно!

14.01.2016 в 17:36
0

https://github.com/jonaslorander/OctoPiPanel
вот еще плагин но не нашел скриншотов

20.04.2017 в 14:43
0

И это до конца не поставилось... Ссылка на сам интерфейс и на кнопки на Droppbox не рабочая, зря пару часов потратил... не туда прилепилось, но и здесь смысл тот же. 
Хочу поставить интерфейс Окты вместо основного дисплея. Какие танцы не танцевал, на дисплее 3.5 ничего не получилось.

20.04.2017 в 15:05
0

очередной фигвам в конце установки... Последняя ссылка на интерфейс отсутствуеть...

14.01.2016 в 01:34
2

Это просто ужасно,
Я вот вспоминаю первый свой монитор 'морковка' электроника мс 6105, который получили в институте в лабораторию вместе с первыми ЕС-1840 (Клон IBM PC) и ЕС-1841 (клон IBM PC XT) ...
Диагональ была 10-11 дюймов, но черная рамка съедала еще дюйм, и на режиме 80x25 Или 600x200
в монохроме,
всё было очень весело...
В особенности мерцание ...

ski
14.01.2016 в 01:40
1

Я помню что такое ЕС 1840 ;) Я еще на Роботроне 1715 успел поработать и на Искре 1030...

14.01.2016 в 01:47
1

rstepanov - у:
Сочувствую :D

20.04.2017 в 10:43
0

а я даже на БЭСМ

13.01.2016 в 19:58
1

Кстати, чтобы каждый раз при истечении DHCP lease не искать новый IP апельсинки, советую в файле /etc/network/interfaces задать статический IP адрес примерно вот так:

iface eth0 inet static
        address 192.168.1.100
        netmask 255.255.255.0
        network 192.168.1.0
        gateway 192.168.1.1
        dns-nameservers 192.168.1.1
IP-адрес менять в соответствии с сетью выдаваемой роутером. Приведенные выше строки лишь пример!

13.01.2016 в 20:15
1

Я немножко по-другому поступаю: у меня DHCP-сервер на роутере постоянным участникам сети всегда одни и те же адреса выдает, там табличка соответствия типа 'такому MAC - такой IP'

13.01.2016 в 20:27
0

Роутеры просто разные бывают!)))))

13.01.2016 в 20:28
0

Ну да, в совсем глупых такой фишки может не быть.
Статика действительно может быть проще.

17.01.2016 в 18:24
1

Малинка работает на разновидности дебиана, в дебиане сейчас есть NetworkManager - это такой сервис который отвечает за интерфейсы, соединения и прочее. У него есть утилита управления nm-cli, весьма удобная штука, одинаково просто можно рулить как eth так и wifi.
А прописывать жестко /etc/network/interfaces это сейчас сродни вредным советам. Все должно конфигурировать налету, с прописыванием текущих ip-адресов куда следует (например обновлять kлокальный dns на роутере, но это редко бывает)

17.01.2016 в 19:31
0

Строго говоря, да. В конфигах, которые генерятся сервисами дистрибутива, обычно предупреждение даже вверху есть, типа 'не надо тут ничего писать ручками, оно будет перезаписано сервисом'.

04.02.2016 в 21:59
0

Единственный конфиг, который по-умолчанию в минимальном Debian управляется сервисом и который мы бы правили, это /etc/resolv.conf, т.е. конфиг dns-клиента. А добавить dns-сервера можно в /etc/network/interfaces

04.02.2016 в 21:56
3

Давайте не будем мне - linux админу с 10-тилетним стажем, рассказывать о сервисе NetworkManger... Вы даете ооочень вредный совет! Если бы у меня подчиненный поставил бы NetworkManager на сервер, то получил бы строгий выговор за несоответствие... У нас по сути принт-сервер, так какого х... туда совать этот богомерзкий NetworkManager, который живет своей жизнью??? Всегда правка конфига /etc/network/interfaces на Debian было самым правильным решением. Была бы возможность поставил бы минус вам за такой совет...

05.02.2016 в 12:13
0

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

И да, я считаю. что в данном случае лучше вообще не лезть в настройки сети, а настроить выдачу определеного IP по маку на DHCP-сервере.

13.01.2016 в 21:53
0

Интересная статья, +1.
Только можете мне пояснить, я всё никак не могу понять: вот эти всякие малинки и их аналоги - это всё чему соответствует?? Обычной ардуине? Но как я понял ,эта штуковина не работает на марлине и не позволяет в нее втыкать карточку с готовым g-кодом, правильно? Т.е. это не аналог того самого классического метода печати как у Прюши, Ульта, Пикасо и т.д.? Это 'новый' другой метод через веб-браузер. Но где ж тогда прошивка а-ля марлин работает? Я ничего не понимаю....
eta4ever , было бы очень кстати, если бы Вы написали статью(или две:)), где популярно объяснили всё последовательно что, где и как, чем отличается, в чем преимущество, чьим аналогом является. А то тут как бы очень сленгово всё описано и сразу в дебри...
Я специально так написал, будто я ничего не понимаю, но ввиду стремительного развития всего и вся тем не менее нужна некая структурированность. Уверен, что Сообщество Ваши статьи воспримет на-ура.

13.01.2016 в 22:05
2

Агаа, вопрос понял.

Концептуально, малинка-апельсинка - это просто комп с неким аналогом репетир-хоста или проинтерфейса. Выполняет одну узкую задачу и управляется по сети. Слайсите на 'большом' компе и кидаете G-код туда через браузер. По сути, всё. Никаких революций. Вот, представьте себе, что у вас телевизор не самый современный. Флешки еще не понимает. Можно его подключить к большому гудящему компу и смотреть кино. А можно подключить к нему приставку, закидывать на нее кино по сети, а потом спокойно смотреть, не сжигая лишние киловатты и не создавая лишнего шума.

13.01.2016 в 23:56
3

Концептуально, малинка-апельсинка - это просто комп с неким аналогом репетир-хоста или проинтерфейса.
Небольшой комментарий.
Всё это хозяйство с сетью, малинками и прочими фруктами нужно только если
1. Вы готовите данные на кухне, а печатаете на балконе, при лености путешествовать с карточкой туда-сюда (ну и в отсуствии длинного кабеля usb-serial;
2. Если у Вас стеллаж с принтерами, и Вы хотите развернуть свой фаблаб;
3. Если Вы ещё дальше находитесь от любимого принтера, допустим, на пляже необитаемого острова,
а где-нибудь в Сибири робот-манипулятор меняет За Вас Бобины филамента (тут я размечтался... :))

ski
14.01.2016 в 00:06
0

Все немного прозаичнее. Разъем SD особо надежным не является, и раздраконивается со временем. Длинный USB кабель - это вообще вредное зло, правильнее цеплять к компу адаптер USB - RS-485, а на другом конце - RS-485-UART к хардверному последовательному порту ардуйни, и чтоб трансиверы с гальванической развязкой были. Тут я увлекся. Вот находится у меня принтер в нескольких метрах от компа, и привет. USB - ненадежно (если реально не заморачиваться с RS-485), карточку дергать надоело, остается либо городить UART через Ethernet (Wi-Fi я считаю пригодным только для интернетов с котиками), либо ставить навороченную 32-битную плату со своей сеткой, либо же фруктовых посредников привлекать.

14.01.2016 в 01:14
0

Все немного прозаичнее.
Ok, принято.

13.01.2016 в 22:13
2

И вдогонку к первому ответу. Основные преимущества подхода перед привычной печатью с карточки - отсутствие собственно процесса тырканья карточкой туда-сюда и возможность дистанционного управления, а если веб-камеру подцепить - то и мониторинга. Ну и вмешаться в процесс можно быстрее, одним-двумя тычками мышью, а не кручением рукоятки с беготней по меню.

А насчет общеобразовательных статей - ну, мне пока рановато такое писать, я сам в эту печать вляпался совсем недавно, полгода еще не прошло. Пока описываю эксперименты репрапостроения и некоторые узкие вещи, в которых база есть - линуксы всякие, электронику.

13.01.2016 в 22:21
0

Ок. А на какой прошивке это дело все работает?

13.01.2016 в 22:31
0

А чья прошивка имеется в виду? Если принтера - то все те же Marlin, Repetier-firmware, может, еще какие - я дальше марлина пока не ходил.
Если прошивка малинки/апельсинки - то там уже не прошивка микроконтроллера в привычном понимании, а нормальная такая, 'настоящая' ОС Linux.

13.01.2016 в 22:34
0

Вот кстати ещё один камень в огород октопринта, достаточно высокий уровень вхождения, для запуска и поддержки данного ПО.

13.01.2016 в 22:35
1

Так я поэтому и постарался расписать все пошагово. Для малинки гайды есть, тем более, для нее собран дистриб OctoPi, который работает 'из коробки'. А апельсинка для человека, с линуксами незнакомого, жесть и капец.

13.01.2016 в 22:32
0

По сути все прошивки это чуть переделанные и скомпиленные для ARM дистрибутивы Debian или Ubuntu. Настраиваются практически также как и их большие собратья на процессорах X86, за исключением некоторых деталей, которые в данном случае не очень-то и важны!

13.01.2016 в 22:44
1

Так в том и прелесть Linux, BSD и подобных - если хорошо заложен фундамент (в случае апельсинки - сконфигурирован загрузчик), то остальное для юзера от платформы не зависит, будь то x86, ARM или вообще виртуалка.

13.01.2016 в 22:57
0

Ну не совсем так, но в общих чертах... Помню как я собирал OpenWRT для DIR-620, когда этот роутер ещё был неподдерживаемым, вот это был реальный секс...

13.01.2016 в 23:03
0

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

13.01.2016 в 23:11
1

Здравствуйте, меня зовут Евгений и я ортодоксальный линуксойд(тут должны быть аплодисменты и сочувствующие кивки головами):D:D:D

13.01.2016 в 23:13
3

...осталось заплакать в бороду и утереться оленьим свитером ;)

14.01.2016 в 17:56
2

Немного вводной информации от разработчиков OctoPrint.
OctoPrint это host программное обеспечение для 3D-принтеров, которое управляет подключенным к нему 3D-принтером, фактически передавая ему команды для выполнения печати. Примеры других подобных программ это Printrun, Repetier Host, а также Cura.
OctoPrint отличается от существующих программных решений в том, что его главная цель заключается в предоставлении удобного веб-интерфейса, который позволяет контролировать принтер удаленно из любой точки вашей сети или даже из Интернета, предлагая те же опции и возможности обратной связи доступные из host приложений перечисленных выше. Для того чтобы достичь этого, OctoPrint интенсивно использует существующие веб-технологии и framework, такие как AJAX и HTML5 web sockets.
OctoPrint был разработан для запуска на небольших встраиваемых устройствах, таких как популярный Raspberry Pi. Это позволяет превратить ваш существующий 3D-принтер в принтер с доступом по сети или WiFi и отвязать его от вашего ноутбука или рабочей станции.

13.01.2016 в 23:33
1

Интересную ачипятку нашел в строке 'Ctrl+0, Enter, Ctrl+X (сохранение, закрытие редактора)'. Как умудрился, не знаю. Там не Ctrl+0 (ноль), а Ctrl+O (буква 'о').

13.01.2016 в 23:50
0

О! Это извечная проблема слепого ввода! Сам этим грешу!:)

13.01.2016 в 23:56
0

Ну, спутать O и 0, с учетом того, что цифры я обычно с нумпада ввожу, надо было постараться.

14.01.2016 в 00:56
1

Установка на Малинку: http://roboforum.ru/forum107/topic14379.html

Если кому нужно - так ставить на ArchLinux:

Ставим группу пакетов base-devel (sudo pacman -S base-devel), скачиваем из AUR ([url]https://aur.archlinux.org/) 5 дополнительных пакетов:

octoprint-git.tar.gz
python2-flask-login.tar.gz
python2-flask-principal.tar.gz
python2-netaddr.tar.gz
python2-sockjs-tornado-git.tar.gz
python2-tornadio2.tar.gz

Собираем пакеты командой makepkg -s (сначала все, что относится к питону, ставим командой sudo pacman -U <пакет>, потом сам октопринт и ставим его), затем включаем автозапуск и стартуем сервис:

sudo systemctl enable octoprint.service
sudo systemctl start octoprint.service

Все, коннектимся на порт 5000 и наслаждаемся.

14.01.2016 в 01:02
0

Ой, арч. Хотя, не отнять, ставится изящно. Но это, все же, для фанатов и эстетов.

14.01.2016 в 01:45
0

На работе - RHEL с контрактом на поддержку, причем 6-ой, а не 7-ой, для стабильности и гаранттрованной совместимости, ну а дома во все тяжкие с ArchLinux, причем на двух разных ARM-платформах m/, жду, пока мой PINE64 приедет, будет ещё круче! ;)

14.01.2016 в 17:46
1

почти синхронно :) https://diy3dprint.wordpress.com/installation-manual/electronics/2-2-orangepi-pc-and-octoprint-setup/
не уШпел я перепостить тут. теперь видимо уже и нет смысла :)

14.01.2016 в 18:22
0

Да, удивительная синхронность!  У вас там даже местами подробнее - я не заострял внимание на обновлении софта, настройке часового пояса и подобных нужных мелочах. Зато у меня бонусом Repetier-Server в три команды ;)

15.01.2016 в 12:33
0

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

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

15.01.2016 в 12:40
0

Ну, без камеры и слайсинга самой дохлой малинки достаточно.
А городить огород с ОСРВ для 3D-принтера, который более-менее управляется восьмибитным ногодрыгом, видимо, мало кто считает целесообразным. На мой взгляд, наиболее крутым является подход с Replicape+Beaglebone. У 'Бигля' есть отдельные ядра для realtime-задач. Но получается недешево.

17.01.2016 в 10:27
0

А можно ли использовать вайфай адаптер с апельсинкой при использовании октопринта? файл ведь все равно закачивается на флеш память апельсинки?

17.01.2016 в 12:17
1

Потенциальные проблемы - только с установкой и настройкой. Не все адаптеры корректно работают 'из коробки'. Я не настраивал, ибо предпочитаю проводную сетку. Но поскольку печать происходит непосредственно с карты апельсинки, качество беспроводной связи на непрерывность печати не повлияет, тут вы правы.

03.02.2016 в 15:24
0

мне пока полностью победить адаптер пока не удалось. в следствии слабых познаний линукс.
хотя везде писали что адаптер совместим с линук и дрова на диске есть.
с обновленным ядром Loboris и модулями карта поднялась....но дальше что-то идет не так

03.02.2016 в 15:35
0

Не ковырял еще. Нету свободных адаптеров, к сожалению.

18.01.2016 в 08:23
1

Спасибо, бро, за своевременный пост.  Похоже, мы одновременно апельсин заказывали. Я тоже его получил. Но поскольку с Линуксом на Вы, всю неделю разбирался в нем. Попробую твой рецепт, думаю, что все получится. Я ставил из апельсиннового Линукса системы с графическим интерфейсом. Из всех предпочел Lubuntu, поскольку русификация интерфейса дается легко (есть в программах или настройках пункт Prepare для конечного пользователя). Из своего опыта. Многие юзеры апельсины жалуются на нерабочий ethernet и  частично usb. Заметил, что это имеет место с использованием файлов script.bin.OPI-PC_1080p60. С 720р все работает нормально. Все выходные драконил Lubuntu на PC (тупо забыл бп от апельсины на работе). отлично показал себя xrdp - он дает возможность управлять апельсиной с компа виндовс при помощи функции 'Подключение к удаленному рабочему столу'. Причем сам прописывается в автозапуск. Таким образом, с xrdp монитор и мышь с клавой нужны малине один раз, до его установки. Потом все делается с ноутбука или компа. Вобщем, как применю все рецепты из данной статьи - обещаю пост по теме.

18.01.2016 в 08:32
0

Напечатал кейс для апельсины - боялся разъемы шнурами повыламывать.
Греется она жутко, поэтому 5-вольтовый вентилятор с радиатором пришлись очень к месту.

Сборный корпус для Orange Pi PC (дорабатывать напильником)

Печатал в торопях, на скорости 120 ((внешние края 60). Корпус получился дырявый и в целом продуваемый. Но смотрится даже лучше, имхо, и для вентиляции это в плюс. 

И еще - сегодня вайфай свисток мне для тестов приволокут. Узнаю, как с ней его запускать

18.01.2016 в 13:18
0

Корпус печатать собираюсь, но это пока не первоочередная задача. Если я на 'постоянку' буду весь этот огород использовать, то надо будет корпус с камими-то ушами делать, для крепления к раме.

18.01.2016 в 13:10
1

У меня со сборкой от loboris все из коробки заработало - и Ethernet, и все USB, и аппаратные UART, в общем, все что для счастья нужно. Хотя, слышал, что на одних прошивках одно не работает, на других - другое :)

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

Lubuntu на декстопе пробовал когда-то. Но пару лет назад остановился на Linux Mint - аккуратный и не перегруженный дистрибутив, в котором практически все из коробки работает, уши его растут из убунты (а у нее, в свою очередь, из дебиана). Так им и пользуюсь на домашнем компе и двух ноутах.

19.01.2016 в 23:38
0

Ща еще продолжение выкачу ;)

28.01.2016 в 14:11
1

Идем на страницу загрузки и копируем ссылку на актуальную версию пакета для архитектуры armel.
Такой вопрос. Когда Апельсина проводит всякие там обновления, установки в терминале, я вижу armhf. Может правильнее устанавливать его?

28.01.2016 в 14:17
0

Да. Это небольшой косяк :D
Я на это внимание обратил, но потом забыл.

27.03.2016 в 12:56
0

А я для этих целей приспособил Acer A500, у меня OctoPrint на нем крутится.

27.03.2016 в 13:09
0

Минуточку. Это планшет на ведроиде, я ничего не путаю? Или туда дебиан вкручен?

27.03.2016 в 13:21
1

Ну да. Через Linux Deploy установлен Arch Linux, потом с бубном (для меня, как для нулевого Linux-пользователя) установлен OctoPrint. Сейчас идет первая печать через него.

27.03.2016 в 13:28
0

При наличии ненужного планшета - отличное решение!

27.03.2016 в 13:31
0

Их два. На А500 полноценный USB-порт, хочу провернуть то же самое на DNS AirTab P-72W.

27.03.2016 в 13:32
0

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

27.03.2016 в 13:49
0

На ArchLinux пришлось править файл PKGBUILD от OctoPrint, т.к. в нем нет архитектуры armh7v, но это ерунда. Правда, с этой ерундой я промучился неделю с перерывами, но это все от неопытности ))))).

09.05.2016 в 03:54
0

Насколько реально попросить Вас просто скопировать содержимое СД карты в архив, скинуть на файлообменник и без всех этих действий запустить на своей такой же апельсинке октопринт?
Мне как виндоузятнику который только на котиков смотрит действия с консолью совсем не понятны, а платка вот лежит уже.

09.05.2016 в 11:14
0

Да, надо все-таки сделать. Попробую не забыть, как на работу выйду, на этой неделе.

09.05.2016 в 12:10
0

То есть, шансы, что так сработает, велики? Буду очень благодарен. :)

09.05.2016 в 12:11
0

Да, вероятность близка к 100%

17.05.2016 в 16:52
0

А сколько будет весить архив, то есть какой минимальный размер флешки нужен (размышляю, хватит ли старой или таки покупать побольше новую)

17.05.2016 в 17:03
0

Блин. Все никак руки не дойдут, извиняйте. На двухгиговой карточке у меня все крутится, реально около 1.5 Гб занято.

30.04.2016 в 12:37
0

 

21.07.2016 в 13:20
0

Добрый день!
А приходилось ли настраивать avrdude c gpio для этого девайса?

21.07.2016 в 13:26
0

Эммм. Не совсем понял. В принципе с UART на GPIO работал.

21.07.2016 в 13:36
0

Я пробовал повторить шаги из мануала adafruit
https://learn.adafruit.com/program-an-avr-or-arduino-using-raspberry-pi-gpio-pins/programming

При попытке запустить avrdude

sudo avrdude -p atmega328p -C ~/avrdude_gpio.conf -c pi_1 -v
мне выдаёт ошибку
unable to open /sys/class/gpio/gpio24/value: No such file or directory

21.07.2016 в 13:42
0

А. GPIO как SPI. Не, так не пробовал.

23.10.2016 в 16:21
1

Хм. Установил armbian. Настроил вайфай. Обновил (успел зацепить взглядом обновление headers и linux-images.... кольнула мысль - блин щас начнеться)....
После перезагрузки в отношении вайфай свистака mt7601 началась песня - кто ты такой? давай досвидания....
Кратко - обновилось ядро но не обновился модуль. Все сделал по статье http://forum.armbian.com/index.php/topic/1819-solved-orange-pi-pc-and-2-ralink-mt7601u-dongle-usb-id-148f7601/.... Только там среди пакетов указывался какойто update-usbids - в репозиториях его не было потому просто его не ставил. даже в общем то перезагрузки не надо было - загрузил модуль и все завелось....

23.10.2016 в 16:26
0

Спасибо за комментарий. Очередное доказательство, что в пингвинах левая нога не знает, что делает правая рука ;)

23.10.2016 в 16:54
0

Справедливости ради - проблема не в пингвинах а 'проприетарности'... Т.е. с одной стороны коды драйверов открыты, но распростронять и включать их в ядро разработчики не могут... так же и с видеодрайверами, потому и пляски с бубном постоянные...

30.01.2017 в 19:40
1

Спасибо за отличнейшие инструкции. Все настроил, даже печатает, но кнопка Upload to SD не активна. Это так и есть или может какие танцы с бубном нужны. Принтер АнетА8, подключен USB OrangePI-> USB Printera.

30.01.2017 в 20:45
0

Приветствую. Upload - загрузить на карту апельсины, Upload to SD - на карту принтера. Второй ни разу не пользовался.

30.01.2017 в 20:54
0

Вот первым я пользуюсь, а вот прямо на карту принтера не активно, думаю просто принтер не поддерживает такого.

30.01.2017 в 20:56
0

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

30.04.2017 в 15:39
1

Перед установкой Python желательно команду sudo apt-get update ввести

30.04.2017 в 19:03
0

Верно. В более свежем гайде с этого все начинается.

31.05.2017 в 23:12
0

Я все же сюда выложу, нужно именно это:
sudo apt-get update && sudo apt-get upgrade 
sudo apt-get install virtualenv

29.06.2017 в 01:10
0

Здравствуйте. Подскажите как можно добавить нового пользователя в октопринт, или хотябы сбросить пароль? Давно не пользовался апельсинкой и сейчас приспичело меня подключить к принтеру а пароль забыл =) с линуксом я можно сказать на вы...
нашел документацию как добавлять, но я не понял куда эти строки нужно вводить... в консоли эти команды не работают...
http://docs.octoprint.org/en/master/api/users.html#sec-api-users-datamodel-userlistresponse

24.08.2017 в 00:15
0

Доброго дня. Подскажите вылезла ошибка
[Errno 98] Address already in use
Как это побороть?

24.08.2017 в 00:20
0

Без понятия, что это. Где она вообще вылезла?

04.09.2017 в 20:49
0

Сегодня поставил оба - осьминога и рипитер. Нечего апельсинке валяться просто так.

05.01.2018 в 19:55
0

вылезла проблемка, прикрутил таки октопринт в андроид, через виртуалку, с камерой и свистелками, все вроде хорошо но не понимаю почему сервис не стартует сам после загрузки оперцаонки, после команды ~/OctoPrint/venv/bin/octoprint стартует как молодой, и все сразуже видит, у планшетки хватает ресурсов на камеру + октопринт, все вроде выполнил по инструкции, куда капнуть можно ?

05.01.2018 в 21:25
0

Не готов ответить, вроде не было проблем с автозапуском.

06.01.2018 в 07:46
0

может какой старт скрипт можно прикрутить ? попробую покопать в эту сторону, демон запущен, а сервер не поднимается

07.01.2018 в 10:45
0

перепроверил все, ранлевел 3-4, если выполнить sudo sysv-rc-conf, и выбрав октопринт нажать = то сервис отлично стартует, ничего не могу понять что ему мешает стартовать как систем сервис после загрузки, если не сложно скажите какие у вас ранлевелы стоят на сервис октопринт

~$ sudo sysv-rc-conf

l SysV Runlevel Config   -: stop service  =/+: start service  h: help  q: quit qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk
x    x
x service 1 2 3 4 5 0 6 S     x
x ----------------------------------------------------------------------------     x

x octoprint   [ ]     [ ]     [X]     [X]     [ ]     [ ]     [ ]     [ ]    x

07.01.2018 в 12:08
0

Ну, допустим, sysv-rc-conf у меня вообще нет.
UPD. Поглядел. 2-3-4-5.

07.01.2018 в 13:13
0

выставил, и все равно не стартует :( только если его руками толкнуть, ладно попытаюсь покурить дальше

16.01.2018 в 23:38
0

Спасибо. Помогла статья с автозапуском.

08.03.2018 в 02:02
1

СПАСИБО ТЕБЕ ОГРОМНОЕ  ЧЕЛОВЕК!!!! 2 дня не спал...........пока твою статью не нашел

03.04.2018 в 20:27
0

Дохожу до 
cd ~
sudo apt-get install python-pip python-dev python-setuptools python-virtualenv git libyaml-dev build-essential
git clone [url]https://github.com/foosel/OctoPrint.git
cd OctoPrint
virtualenv --system-site-packages venv
./venv/bin/python setup.py install
mkdir ~/.octoprint


и на строке virtualenv --system-site-packages venv
выдает: 

New python executable in /root/OctoPrint/venv/bin/python
Traceback (most recent call last):
  File '/usr/local/bin/virtualenv', line 11, in
    sys.exit(main())
  File '/usr/local/lib/python2.7/dist-packages/virtualenv.py', line 712, in main
    symlink=options.symlink)
  File '/usr/local/lib/python2.7/dist-packages/virtualenv.py', line 927, in crea                                                                                        te_environment
    site_packages=site_packages, clear=clear, symlink=symlink))
  File '/usr/local/lib/python2.7/dist-packages/virtualenv.py', line 1239, in ins                                                                                        tall_python
    shutil.copyfile(executable, py_executable)
  File '/usr/lib/python2.7/shutil.py', line 83, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 40] Too many levels of symbolic links: '/root/OctoPrint/venv/bin                                                                                        /python'

Что за фигня и как побороть?

03.04.2018 в 23:48
0

Что за фигня - не знаю.
Можно попробовать 

rmvirtualenv venv 
mkvirtualenv venv

и заново 
virtualenv --system-site-packages venv

04.04.2018 в 15:06
0

pi@orangepipc:~$ rmvirtualenv venv
rmvirtualenv: command not found
pi@orangepipc:~$ mkvirtualenv venv
mkvirtualenv: command not found
pi@orangepipc:~$

04.04.2018 в 15:51
0

Install OctoPrint
For the basic package you'll need Python 2.7 (should be installed by default) and pip. OctoPrint's dependencies will be
installed by the setup.py script:
cd ~
sudo apt-get install python-pip python-dev python-setuptools python-virtualenv git libyaml-dev build-essential
git clone https://github.com/foosel/OctoPrint.git
cd OctoPrint
python -m virtualenv venv
./venv/bin/pip install pip --upgrade
./venv/bin/python setup.py install
mkdir ~/.octoprint

Вот так взлетело

04.04.2018 в 16:04
0

хотя я дебиан перенакатил по новой

04.04.2018 в 16:16
1

https://drive.google.com/open?id=1zBhU0h0s9ZOOhsqkm4Sdc-NmB8555ia1

вот по этому гайду взятому с форума оранж пи или октопринт взлетело

04.04.2018 в 21:18
0

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

04.01.2019 в 00:09
0

День добрый. Поставил Armbian, подключился к wi-fi, поднял octoprint, прописал все в автозапуск перезагрузился и ничего. Захожу в браузер, санчала недогруженая система вылетает и потом и вовсе перестает отвечать ip. Руками через PuTTY толкается и все запускается. В чем проблема может быть ?

04.01.2019 в 00:21
0

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

04.01.2019 в 01:39
0

Если что, то я ставил на orange pi pc+. 
А пользователь и пароль должны быть orangepi? Прост у меня пользователь такой, а пароль отличный.

04.01.2019 в 01:45
0

PC+ в руках не держал. По пользователю — неважно. Ну, главное только чтобы имя в скриптах запуска было правильное прописано, и домашний каталог соответствующий.

17.01.2019 в 20:57
0

Разобрался...)

'Открываем редактор, там нужно изменить следующее (не забываем убрать # перед DAEMON): OCTOPRINT_USER=orangepi DAEMON=/home/orangepi/OctoPrint/venv/bin/octoprint'

По умолчанию идет: 
OCTOPRINT_USER=pi DAEMON=/home/pi/OctoPrint/venv/bin/octoprint 

Может все меняют user на orangepi, а там где путь забывают поменять его? В моём случае было именно так)) Поясни, что путь тоже надо поменять, а не просто раскоментить deamon) Теперь автозапуск работает на ура))

18.01.2019 в 10:52
0

Гм. Может быть. Выделил.

01.02.2019 в 16:08
0

Добрый день!

Решил я поиграться и поставил на установленный octoprint еще и repetier. Он мне не особо понравился и решил я вернуться к октопринту, но апельсинка со мной не согласилась и теперь выдается такое сообщение при попытке подключиться к принтеру:
'Offline (Error: SerialException: 'device reports readiness to read but returned no data (device disconnected or multiple access on port?)' @ comm.py:_readline:2605)'

Насколько я понял, порт связи занял repetier и octoprint не может по нему подключиться к принтеру. Есть мысли как исправить это безобразие?

Заранее спасибо!

15.05.2019 в 07:44
0

Подскажите, для описания внешних команд, типа 'Octoprint restart', 'System restart', нужно ли какие-то модули/пакеты ставить? Вчера 'с-налёту' попытался прописать пару команд, в интерфейсе появилась кнопка 'Он/офф', а чего-то не хватает, как я понял для выполнения sudo, типа проброса пароля что-ли..

15.05.2019 в 11:41
1

Более-менее актуальное руководство
Там в разделе «Команды перезапуска» про это.

16.05.2019 в 04:17
0

А.. понял про nopasswd, забыл совсем про это (и про sudoer-ов тоже). Спасибо

14.06.2019 в 03:09
0

А Orange Pi zero будет достаточно? USB и сеть есть.

14.06.2019 в 10:13
0

Да. https://3dtoday.ru/blogs/eta4ever/orange-octopus-the-season-autumn-2018/

21.03.2020 в 13:15
0

Orange pi PC

Octoprint 1.4

Все работает. 

Но когда выключаешь принтер плата питается от апельсинки. Как исправить?

Usbhabctrl пробовал но походу на апельсине она не рабоатет

21.03.2020 в 13:22
0

Проще всего в кабеле разорвать +5В.

Ну и на нормальных платах обычно есть джампер, питать от БП или USB.

21.03.2020 в 23:05
0

Как вариант, да, придется где то резать провод.. Либо на опельсинке либо на плате управления или в проводе.

Есть еще вариант подключить опельсинку к физическому порту, но не могу найти информацию где на стандартной эндеровской плате распаян uart физический. 

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

06.05.2020 в 14:26
0

Оставлю на всякий случай, если у кого возникнет проблема как у меня:

Если при попытке запустить ~/OctoPrint/venv/bin/octoprint возникает сообщение:

pkg_resources.DistributionNotFound: The 'markdown=3.1' distribution was not found and is required by OctoPrint

мне помог вот этот совет:

If this installs an old version of OctoPrint, pip probably still has something cached. In that case add --no-cache-dir to the install command, e.g.
pip install --no-cache-dir octoprint
To make this permanent, clean pip's cache:
rm -r ~/.cache/pip

После чего все запускается.

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

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

Джин Алладина

Первое знакомство с 3D печатью и Ender 3 Pro.

3D-ремонт игрушечного домика

Точилка для Ножей, Ножниц на 3D Принтере. Заточная СИСТЕМА

Крепеж

Мини обзор нейлона от H-T-P.ru