Когда есть желание то все задуманное становится реальностью ну или по крайней мере время проведенное за этим кажется не таким уж в пустую потраченным. Вот к примеру я, загорелся желание поизучать мини компьютер именуемый, как Raspberry. Был заказан в день когда мой газовый котел из-за обледенения трубы начал в январские праздничные морозы выключаться. И меня посетила мысль, а как бы пристроить наблюдение за ним, благо на моем котле есть цифровой дисплей. Но как, купить IP-камеру, не это не то слишком просто, хотелось чего-то большего. А в то же время да и ранее я встречал упоминание мини-компьютерах и что с ними делают энтузиасты, мне захотелось просто повторить ихние поделки самому. Ведь ни что так не воодушевляет чем просто чтение того как получилось у других, как все повторить самим и уже на основе этого наложить свое видение. Ладно к чему еще говорить, спустя три долгих недели ожидания вот он Raspberry PI 3 model B+ пришел и началось. А что началось, сразу обнаружилось (а я должен был предвидеть это) как подключить его к компьютеру или подключиться к нему, монитора то с HDMI выходом у меня нет. А раз так, то вроде как с помощью USB-TTL адаптера можно подключиться.
Вот и сейчас я разберу, как данный адаптер подключить к моему домашнему ноутбуку Lenovo E555 (Ubuntu 14.04.5 Desktop amd64 Gnome Classic)
В наличии:
- PL2303 USB UART Board (mini), Преобразователь USB-UART на базе PL2303 с разъемом USB mini-AB
- Кабель miniUSB на USB
Соединяю их и разъемом USB подключаю его к своему ноутбуку, система говорит, что:
[Сб. февр. 11 18:54:17 2017] usb 6-1: new full-speed USB device number 2 using xhci_hcd
[Сб. февр. 11 18:54:17 2017] usb 6-1: New USB device found, idVendor=067b, idProduct=2303
[Сб. февр. 11 18:54:17 2017] usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[Сб. февр. 11 18:54:17 2017] usb 6-1: Product: USB-Serial Controller
[Сб. февр. 11 18:54:17 2017] usb 6-1: Manufacturer: Prolific Technology Inc.
[Сб. февр. 11 18:54:17 2017] usbcore: registered new interface driver usbserial
[Сб. февр. 11 18:54:17 2017] usbcore: registered new interface driver usbserial_generic
[Сб. февр. 11 18:54:17 2017] usbserial: USB Serial support registered for generic
[Сб. февр. 11 18:54:17 2017] usbcore: registered new interface driver pl2303
[Сб. февр. 11 18:54:17 2017] usbserial: USB Serial support registered for pl2303
[Сб. февр. 11 18:54:17 2017] pl2303 6-1:1.0: pl2303 converter detected
[Сб. февр. 11 18:54:17 2017] usb 6-1: pl2303 converter now attached to ttyUSB0
ekzorchik@navy:~$ sudo modinfo pl2303
filename: /lib/modules/4.4.0-57-generic/kernel/drivers/usb/serial/pl2303.ko
license: GPL
description: Prolific PL2303 USB to serial adaptor driver
srcversion: A72335A7497CE03F142BCAC
depends: usbserial
intree: Y
vermagic: 4.4.0-57-generic SMP mod_unload modversions
ekzorchik@navy:~$ ls /dev/ttyUSB0 -lh
crw-rw---- 1 root dialout 188, 0 февр. 11 18:54 /dev/ttyUSB0
ekzorchik@navy:~$ sudo usermod -a -G dialout ekzorchik
ekzorchik@navy:~$ apt-cache search setserial
setserial – Управление конфигурацией последовательных портов
ekzorchik@navy:~$ sudo apt-get install setserial -y
ekzorchik@navy:~$ sudo setserial -g /dev/ttyUSB0
/dev/ttyUSB0, UART: 16654, Port: 0x0000, IRQ: 0
Из вывода вижу, что система успешно опознала данный адаптер, а на самом адаптере загорелся индикатор: PWR
- Далее на самом адаптере выставить переключатель, что работа будет вестись на 5V
Далее нужно подключить адаптер к Raspberry Pi 3 по следующей схеме:
Но т. к. сейчас питание адаптера идет от компьютера то
- от адаптера TXD ↔ к raspberry pi 3 PIN10 (RXD0)
- от адаптера RXD ↔ к raspberry pi 3 PIN8 (TXD0)
- от адаптера GND ↔ к raspberry pi 3 PIN6
- от адаптера VCCIO ↔ к raspberry pi 3 PIN2
Теперь подключаю свой Raspberry PI 3 к нему, но предварительно вставив в него записанный образ.
Затем для подключения с компьютера мне понадобиться программа: putty
ekzorchik@navy:~$ sudo apt-get install putty -y
Запускаю установленную программу putty:
Приложения — Интернет — PuTTY SSH Client и настраиваю подключение: Connection — Serial
- Serial line to connect to: /dev/ttyUSB0
- Speed (baud): 115200
- Data bits: 8
- Stop bits: 1
- Parity: None
- Flow Control: None
Затем перехожу в категорию (Category) Session и переключаю тип подключения (Connection type) в положение Serial
строка подключения примет вид:
Serial line: /dev/ttyUSB0
Speed: 115200
и нажимаю кнопку Open — если все сделано правильно я подключусь к своему мини-компьютеру:
или же через другую утилиту именуемую как minicom:
ekzorchik@navy:~$ sudo apt-get install minicom -y
Скажу так, все выше по подключению к консоли мини компьютера Raspberry Pi 3 Model B было бесполезно.
потому как в текущей операционной системе jessie:
pi@raspberrypi:~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 8.0 (jessie)
Release: 8.0
Codename: jessie
Разработчики по умолчанию отключили все интерфейсы удаленного взаимодействия. Это значит, что мне пришлось отдельно покупать переходник с HDMI на VGA дабы подключить Raspberry Pi 3 Model B к монитору. Когда я подключил, то зайдя в меню настройки интерфейсов увидел своими глазами почему у меня не получалось подключиться:
Preferences — Raspberry Pi Configuration — вкладка Interfaces –
Serial: Disabled
Включаю интерфейс либо через вкладку Interfaces, Serial — Enable или же через консоль:
Ctrl + Alt + T → pi@raspberrypi:~ $ sudo raspi-config — Interfacing Options, Select – P6 Serial, Select – Would you like a login shell to be accessible over serial? Yes
The serial login shell is enabled
The serial interface is enabled
и нажимаю Ok, Finish
После чтобы изменения вступили в силу необходимо перезагрузиться:
Would you like to reboot now? Yes
После перезагрузки, шаги подключения к консоли миникомпьютера Raspberry следующие:
- Соединяем PL2303 USB UART Board (mini) с миникомпьютером Raspberry Pi 3 Model B контактами: RX,TX,GND
- Подключаем адаптер PC2303 через microUSB и USB к ноутбуку
- Запускаем консоль putty/minicom создаем соединение на /dev/ttyUSB0 при скорости 115200, когда подключение произойдет у Вас должен быть просто черный экран
- После подключаем с адаптера PC2303 пин VCC0 и PI2 на плате Raspberry Pi 3 Model B
Теперь же переводим свой взор на консоль Putty и видим, как бегут строки загрузки операционной системы Raspbian и в конце строки когда все загрузилось:
Raspbian GNU/Linux 8 raspberry ttyS0
raspberry login:
указываю дефолтные значения
Login: pi
Password: raspberry
и вуаля я все же разобрал как подключиться к консоли миникомпьютера:
pi@raspberry:~$
Имея такое подключение я могу уже вызвать утилиту raspi-config и включить необходимые интерфейсы, такие как VNC, SSH и другие для взаимодействия. Данная последовательная консоль подключения применяется при первоначальной настройке, восстановления если по каким-либо причинам нельзя подключиться через другие способы, отладки. Жаль что разработчики пошли другим путем и заблокировали изначально данную возможность, как Serial подключение.
Если же Вы закрыли консоль putty, что чтобы вновь в нее подключиться потребуется разъединить PIN питания и подключить его заново при открытой консоли putty или minicom.
Подключаюсь через утилиту minicom к сохраненной конфигурации которую создал с учетом параметров подключения для клиента putty, за справкой по настройки утилиты minicom обратился к заметке:
ekzorchik@navy:~$ sudo minicom -o rasp
[ OK ] Started Permit User Sessions.
[ OK ] Started Login Service.
Starting Light Display Manager...
Starting Hold until boot process finishes up...
Starting Terminate Plymouth Boot Screen...
[ OK ] Started LSB: WebIOPi initscript.
[ OK ] Started LSB: triggerhappy hotkey daemon.
Raspbian GNU/Linux 8 raspberrypi ttyS0
raspberrypi login: pi
Password: raspberry
Last login: Sat Feb 25 21:58:52 MSK 2017 on tty1
Linux raspberrypi 4.9.11-v7+ #971 SMP Mon Feb 20 20:44:55 GMT 2017 armv7l
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
pi@raspberrypi:~$ w
21:59:24 up 0 min, 3 users, load average: 0.34, 0.10, 0.04
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
pi :0 :0 21:58 ?xdm? 11.62s 0.30s /usr/bin/lxsess
pi tty1 21:58 38.00s 0.36s 0.33s -bash
pi ttyS0 21:59 4.00s 0.52s 0.03s w
а вот с использованием утилиты minicom не нужно разрывать связь между PINом VCCI0 и 5V, подключение сохраняется:
pi@raspberrypi:~$ exit
logout
Raspbian GNU/Linux 8 raspberrypi ttyS0
raspberrypi login:
Итого заметка разобрана и много нового я узнал и применил полученные навыки исходя из прошлого. Я горжусь собой. По сути я могу настроить образ Raspberry с учетом своих предпочтений и включенными настройки по удаленному администрированию: VNC, SSH, Serial; а затем создать образ и уже когда нужно разворачивать его и не важно если ли под рукой переходник для подключения монитора или нет. Да, вот и будет следующая заметка на этот счет, как создать образ своего. А пока я прощаюсь, с уважением Олло Александр aka ekzorchik