Апельсиновый осьминог, сезон «Осень 2018»
- Качаем Armbian Stretch.
- Извлекаем .img из архива и накатываем на карточку, желательно 4 Гб или больше. Рекомендую Rufus.
- Вставляем, подключаем, выясняем IP на роутере, подключаемся консолькой (Putty, например, или Bitvise SSH Client). Логин-пароль root/1234.
- Меняем пароль пользователя root (1234, и два раза новый).
- Дальше интерактивно создается новый пользователь, у меня это opi.
Занятое место на карточке после установки окты и mjpg-streamer.
OctoPrintArmbian установлен, далее обращаемся к гайду Джины по ручной установке OctoPrint. Буквально ему следовать почти можно, но не совсем — есть нюансы, ибо он для Raspbian, а там киркомотыги в других местах развешаны.
Все действия выполняются от пользователя opi. Не от root. То есть, либо мы после установки Armbian делаем su opi, или exit, и подключаемся заново не рутом, а opi.Кстати, кто не знаком с SSH-клиентами — туда можно копипастить текст. Тут Ctrl+C, а там — правой кнопкой мыши по окошку.
- sudo apt update — обновляем список пакетов.
- sudo apt upgrade — обновляем пакеты.
- cd ~ — не забываем перейти в домашний каталог.
- sudo apt install virtualenv python-pip python-dev python-setuptools python-virtualenv libyaml-dev — ставим необходимые пакеты.
- mkdir OctoPrint && cd OctoPrint — создаем каталог для окты и идем в него.
- virtualenv venv — создаем виртуальную среду.
- source venv/bin/activate — и настраиваем ее.
- pip install pip --upgrade
- pip install https://get.octoprint.org/latest — а теперь тащим в нее окту.
sudo usermod -a -G tty opi
sudo usermod -a -G dialout
~/OctoPrint/venv/bin/octoprint serve — пробуем запустить окту. Оно должно подумать, после этого вебморда будет доступна по адресу апельсины http://апельсина:5000.
Ctrl+C прибиваем после проверки.
Автозапуск
Теперь к настройке автозапуска:
- cd ~ — в домашний каталог.
- 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 — делаем скрипт исполняемым
sudo nano /etc/default/octoprint
Интересны вот эти строчки. Раскомментируем и меняем пользователя, если вы, как я, гордо именуете юзера opi, а не pi.
# The init.d script will only run if this variable non-empty.
OCTOPRINT_USER=opi
# base directory to use
BASEDIR=/home/opi/.octoprint
# configuration file to use
CONFIGFILE=/home/opi/.octoprint/config.yam
l# On what port to run daemon, default is 5000
PORT=5000
# Path to the OctoPrint executable, you need to set this to match your installation!
DAEMON=/home/opi/OctoPrint/venv/bin/octoprint
Ctrl+O, Ctrl+X сохраняем, закрываем
sudo update-rc.d octoprint defaults — разрешаем автозапуск.
После этих манипуляций при загрузке апельсины автоматом стартует OctoPrint от имени пользователя opi.
Команды перезапуска
В настройках окты можно прописать команды для перезапуска сервиса OctoPrint, перезапуска всего фрукта и выключения (народная примета: удаленно играть с питанием — к дороге). Но это все делается с повышением прав (sudo), поэтому надо разрешить исполнение команд без запроса пароля.sudo nano /etc/sudoers.d/octoprint-shutdown — туда вписываем:opi ALL=NOPASSWD: /sbin/shutdownи Ctrl+O, Ctrl+X — сохраняем, закрываем.sudo nano /etc/sudoers.d/octoprint-restart — а сюда:opi ALL=NOPASSWD: /bin/systemctl restart octoprintCtrl+O, Ctrl+XКамераСтавим нужные пакеты и собираем mjpg-streamer:- cd ~
- sudo apt install subversion libjpeg-dev imagemagick ffmpeg libv4l-dev cmake
- git clone https://github.com/jacksonliam/mjpg-streamer.git
- cd mjpg-streamer/mjpg-streamer-experimental
- export LD_LIBRARY_PATH=.
- make
./mjpg_streamer -i './input_uvc.so' -o './output_http.so'
При этом видеопоток должен быть доступен по адресу http://апельсина:8080/?action=stream.
Для убогих камер иногда помогает
-y../mjpg_streamer -i './input_uvc.so -y' -o './output_http.so'
Если поток получили, Ctrl+C, идем настраивать автозапуск
mkdir ~/scriptsnano ~/scripts/webcam — и туда вписываем находящееся по ссылке:
Ctrl+O, Ctrl+XЗатем nano ~/scripts/webcamDaemon и туда:
camera_usb_options='-r 640x480 -f 10' — это настройки камеры, разрешение и количество кадров в секунду. Если камера убогая и не работает без -y, проще всего вписать это так: MJPGSTREAMER_INPUT_USB='input_uvc.so -y'.
Делаем оба файла исполняемыми
chmod +x /home/opi/scripts/webcam
chmod +x /home/opi/scripts/webcamDaemon
После этого осталось вписать адрес потока в настройках окты.
Команды запуска потока
Чтобы не портить руками config.yaml, ставим плагин октопринта System Command Editor, и через него добавляем две команды.
Start stream/home/opi/scripts/webcam start
Stop stream/home/opi/scripts/webcam stop
Ставим Arch
По желанию. Обычно не требуется.
Ещё
Еще больше интересных статей
Вечная катушка для филамента. Как я берегу природу
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Flashforge AD5M Pro - доработка 2. Датчик движения филамента.
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Сопла и сопли
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Сколько раз этот вопрос поднимался. Сколько тем...
Комментарии и вопросы
Аргументы закончились? У меня....
эффективность того что они там...
в пандемию такие как вы застав...
Приветствую.Я немного попечата...
как думаете?
Народ подскажите, есть ли кака...
Печатаю воронку в режиме ваза....