Кремень FMZ Реклама
Kremen FMHM Реклама

Апельсиновый осьминог: бритвой по USB, цепляем напрямую

eta4ever
Идет загрузка
Загрузка
21.02.2017
26482
111
Техничка

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

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

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

42
Апельсиновый осьминог: бритвой по USB, цепляем напрямую
Orange Pi One очень хороша со всех сторон (цена, габариты, производительность), но есть нюанс. Один USB, а по-хорошему надо три (как на PC) - под принтер, камеру и Wi-Fi свисток. На плате One есть площадки, к которым можно ювелирно подпаяться. Можно использовать хаб. Но есть еще один вариант, который вообще радует.

Wi-Fi я не пользуюсь, камеру подключаю к единственному USB, а принтер цепляется к аппаратному UART1 Orange Pi One, выведенному на гребенку GPIO. Поскольку MKS SBase и SMini - платы на ARM, у них 3.3-вольтовые уровни, как и у 'апельсинки', поэтому не требуются никакие преобразователи уровней. Просто. Три. Провода.

Есть пара мелочей. Во-первых, в Armbian по умолчанию отключены все последователные порты, кроме UART0, на котором диагностическая консоль. Поэтому надо модифицировать script.bin, в чем нам помогут комплектные утилиты bin2fex и fex2bin.

cd ~

bin2fex /boot/script.bin script.fex

nano script.fex


Листаем до [uart1], меняем 'uart_used = 0' на 'uart_used = 1'. Сохраняем (Ctrl+O, Enter, Ctrl+X).

fex2bin script.fex script.bin

sudo mv /boot/script.bin /boot/script.bin.orig

sudo mv script.bin /boot/


Заменяем оригинальный скрипт на модифицированный, перезагружаем апельсинку (sudo reboot). После загрузки по 'ls /dev/ttyS*' оно нам должно выдать /dev/ttyS0 и /dev/ttyS1.

И второй момент - надо указать OctoPrint, что можно обращаться к ttyS1. Для этого в настройках (Settings – Serial Connection) в поле Additional serial ports пишем /dev/ttyS*. После этого железные порты можно выбирать в выпадающем списке на главной странице.
Апельсиновый осьминог: бритвой по USB, цепляем напрямую
Теперь осталось взять три проводка с 'дюпонтами' и соединить RX,TX,GND UART1 'апельсинки' и разъема AUX1 на SBase/SMini. При подключении в OctoPrint выбираем ttyS1, скорость ту, что указана в прошивке (у меня 115200) и радуемся жизни.
Апельсиновый осьминог: бритвой по USB, цепляем напрямую
Для того, чтобы провернуть аналогичную манипуляцию с восьмибитными платами, понадобится преобразователь уровней 5 <-> 3.3 В. Его можно спаять на NPN транзисторах с горсткой обвеса, можно купить готовый, например. На готовом модуле надо подключить LV к +3.3 'апельсинки', HV к +5 с того же AUX1, GND - к GND 'апельсинки' и AUX1 соответственно. Ну и RX/TX.

Бонусом, для некрасноглазых любителей Orange Pi One - выкладываю образ двухгигабайтной карточки (как ручками расширять раздел - ниже) с актуальным на 21 февраля 2017 года Armbian. OctoPrint 1.3.1, собран и настроен mjpg-streamer, установлен пакет libav-tools. Пользователь opi/orangepi (для консоли и OctoPrint), пароль root тоже orangepi. Проводная сеть - DHCP, беспроводная не настроена (в конфиге есть закомментированная заготовка под MT7601). Кстати, MT7601 в этой версии Armbian снова работает из коробки. Ну и, манипуляция с UART1, описанная выше, тоже проделана. По мелочи - настроены команды перезагрузки и выключения апельсинки, перезагрузки OctoPrint.

Вот, 'до кучи', как вручную расширить раздел на карточке в 'апельсинке' без дополнительных средств. Изначально выкладывалось мною в комментариях, сам еле нашел.
АЛЯРМА! Любое неверное движение, и файловая система 'адиос'.
1. sudo fdisk /dev/mmcblk0 (подключаемся к карточке);

2. d (удаляем выбранный раздел, он у нас один);

3. n (создаем новый раздел);

4. Enter (default p, по умолчанию создается основной раздел);

5. Enter (default 1, по умолчанию создается раздел номер 1);

6. 4096 (ЭТО ВАЖНО! По умолчанию начало раздела на 2048, нам надо 4096);

7. Enter (по умолчанию раздел создается до конца карты);

8. w (записать изменения на диск).

9. q (выйти из fdisk)
Апельсиновый осьминог: бритвой по USB, цепляем напрямую
10. sudo reboot (перезагружаем апельсину, потом подключаемся к ней снова).

11. sudo resize2fs /dev/mmcblk0p1 (натягиваем файловую систему на расширенный раздел).

12. df -h (проверяем, что получилось).
Апельсиновый осьминог: бритвой по USB, цепляем напрямую

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

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

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

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