Комментарии 6
Для малюсеньких одноплатников я бы предпочёл Alpine Linux. В ней нечего лишнего нет. Очень лёгкая. Правда по функционалу она простовата и может не подойти.
Одноплатник не такой уже и маленький, 512 Мб ОЗУ как никак, есть более новая модель с 1 Гб. Для телефонов существует PostmarketOS на базе Alpine, но на мой взляд Alpine лучше подходит для Docker-контейнеров, чем для устройств.
Чем Alpine Linux лучше того же Debian, например?
Управление светодиодом осуществляется с помощью файла multi_intensity. Например, зададим синий цвет в максимальной яркости:
$ echo 0 0 255 > /sys/class/leds/rgb:indicator/multi_intensity
эх! до чего техника дошла! не то что раньше ... (завидует)
Спасибо за статью! Сделал print server на основе Sipeed Nezha Lichee RV, воспользовался ссылкой из вашей статьи на образ Armbian (https://disk.yandex.ru/d/da8qJ8wyE1hhcQ/Nezha_D1/ArmbianTV/20220627).
Примечательно, что даже спустя год более новые образы как из соседних папок, так и с сайта Armbian, несмотря на заявленную поддержку как Lichee RV, так и более новых плат, не запускаются на Lichee RV (нет HDMI сигнала). По serial не проверял -- нет подходящего кабеля.
Для тех, кто, возможно, тоже захочет сделать print server на этой же плате Lichee RV для древнего HP LaserJet 1010 (для других принтеров нужно будет выбрать другой драйвер), просто оставлю последовательность действий здесь:
Скачать образ по ссылке выше, прошить на любую sd-карту с помощью Balena Etcher.
Подключиться к плате по HDMI с USB клавиатурой, войти с login/password: root/1234, следовать диалогам при первом запуске (настроить Wi-Fi, создать локального пользователя и т.д.)
Установка CUPS:
sudo apt-get update
sudo apt-get install cups
Разрешить вход любому пользователю в веб-интерфейс по
https://адрес_платы:631/
(в моем случае она доступна поhttps://nezha.local.:631/
):cupsctl --remote-admin --remote-any --share-printers
Сделать плату доступной по Bonjour для легкого добавления принтеров в систему:
sudo apt install avahi-daemon
Далее, можно заходить в web-интерфейс CUPS и попытаться настроить принтер. В случае моего принтера еще нужно поставить HP-шные драйвера (ставлю сразу оба доступных набора hpi-js и hplip, потом можно сконфигурировать принтер через один из них):
sudo apt-get install hpijs-ppds printer-driver-hpijs
sudo apt-get hplip
service cups restart
Заходим на
https://nezha.local.:631/
, и добавляем два принтера: один Generic IPP (фактически, просто проброс порта через https), а второй -- полноценный PostScript принтер (в него можно будет печатать с мобильных устройств) через hpi-js или hpcups (hplip). Дело в том, что если создать только один PostScript принтер, который более универсальный, некоторые документы (с большими картинками, прежде всего) на нашей маломощной плате будут очень долго рендериться через GhostScript. Поэтому если на хосте, с которого будут отправляться задания на печать (в моем случае MacOS), есть возможность установить драйвера с host-rendering'ом (т.е. обычный драйвер от производителя), и подсунуть ему IPP вместо USB порта, то лучше это сделать на нем, т.к. это будет в разы быстрее.Добавление принтеров в систему:
Для Generic IPP добавляем как HP -> HP LaserJet Series PCL 4/5 (под MacOS нужный драйвер то ли уже был в системе, то ли пакет для поддержки всех принтеров HP скачивался с сайта Apple)
Для PostScript принтера, нужно настроить его в системе, как Generic PostScript Printer
На стороне мака это можно делать как через Settings -> Printers & Scanners, так и через веб-интерфейс того же CUPS
http://localhost:631/
(через который и устроена вся печать на маках), но его сначала нужно включить:cupsctl WebInterface=yes
Надеюсь, этот краткий "рецепт" кому-то окажется полезным.
Программирование на Python и установка Docker для Sipeed Lichee RV RISC-V