Подключение Ubuntu 18.04 к Raspberry через UART

Posted by

В виду того факта, что я сейчас в поиске работы, я все же провожу время с пользой для самого себя. И тут мне понадобилось самолично разобрать, а после использовать систему MajorDoMo но уже не на дистрибутиве Raspbian Jessie, а на Raspbian Stretch. Исходя из этого, я вспомнил, что используя преобразователь USB-UART на базе PL2303 с разъемом USB mini-AB настраивал первоначальное подключение к миникомпьютеру Raspberry Pi 3 Model B и надо бы все повторить, но акцент сделать на рабочую систему используемую в данный момент времени — это Ubuntu 18.04 Desktop

Большая часть заметки опирается на уже написанный ранее материал, здесь лишь некоторые дополнения.

ekzorchik@navy:~$ dmesg -T

[Вт июл 17 10:05:23 2018] usb 8-1: new full-speed USB device number 2 using xhci_hcd

[Вт июл 17 10:05:23 2018] usb 8-1: New USB device found, idVendor=067b, idProduct=2303

[Вт июл 17 10:05:23 2018] usb 8-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0

[Вт июл 17 10:05:23 2018] usb 8-1: Product: USB-Serial Controller

[Вт июл 17 10:05:23 2018] usb 8-1: Manufacturer: Prolific Technology Inc.

[Вт июл 17 10:05:23 2018] usbcore: registered new interface driver usbserial_generic

[Вт июл 17 10:05:23 2018] usbserial: USB Serial support registered for generic

[Вт июл 17 10:05:23 2018] usbcore: registered new interface driver pl2303

[Вт июл 17 10:05:23 2018] usbserial: USB Serial support registered for pl2303

[Вт июл 17 10:05:23 2018] pl2303 8-1:1.0: pl2303 converter detected

[Вт июл 17 10:05:23 2018] usb 8-1: pl2303 converter now attached to ttyUSB0

ekzorchik@navy:~$ sudo modinfo pl2303

filename: /lib/modules/4.15.0-24-generic/kernel/drivers/usb/serial/pl2303.ko

license: GPL v2

description: Prolific PL2303 USB to serial adaptor driver

srcversion: 524869E91E2E26FF29029C7

depends: usbserial

retpoline: Y

intree: Y

name: pl2303

vermagic: 4.15.0-24-generic SMP mod_unload

signat: PKCS#7

signer:

sig_key:

sig_hashalgo: md4

ekzorchik@navy:~$ ls /dev/ttyUSB0 -lh

crw-rw---- 1 root dialout 188, 0 июл 17 10:05 /dev/ttyUSB0

ekzorchik@navy:~$ sudo usermod -aG dialout ekzorchik

ekzorchik@navy:~$ sudo apt-get install setserial minicom -y

ekzorchik@navy:~$ sudo setserial -g /dev/ttyUSB0

/dev/ttyUSB0, UART: 16654, Port: 0x0000, IRQ: 0

Записываю образ (2016-11-25-raspbian-jessie.img) raspbian на карту памяти MicroSD, затем активирую функции которые разработчики выключили по дефолту прямо в основной системе (Ubuntu 18.04 Desktop) ноутбука Lenovo E555:

ekzorchik@navy:~$ sudo touch /media/ekzorchik/boot/ssh

ekzorchik@navy:~$ sudo nano /media/ekzorchik/boot/config.txt

enable_uart=1

После извлекаю карту памяти из картридера ноутбука.

Шаги подключения:

  • 1) Кабель питания не подключаю к Raspberry Pi 3 Model B
  • 2) Выставляю режим питания модуля UART на 5V
  • 3) Схема подключения модуля и Raspberry аналогична той что была ранее в заметке
  • 4) Подключение происходит через настроенное подключение утилитой minicom через putty не удалось.
  • 5) После в терминале где запущена утилита sudo minicon -c on uart (uart — это мое имя сохраненных настроек подключения) я получаю:

raspbian GNU/Linux 8 raspberrypi ttyS0

raspberrypi login:

Raspbian GNU/Linux 8 raspberrypi ttyS0

raspberrypi login: pi

Password: ввожу дефолтный пароль raspberry

Last login: Fri Nov 25 18:09:33 UTC 2016 on tty1

Linux raspberrypi 4.4.34-v7+ #930 SMP Wed Nov 23 15:20:41 GMT 2016 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.

SSH is enabled and the default password for the 'pi' user has not been changed.

This is a security risk - please login as the 'pi' user and type 'passwd' to se.

pi@raspberrypi:~$ uname -a

Linux raspberrypi 4.4.34-v7+ #930 SMP Wed Nov 23 15:20:41 GMT 2016 armv7l GNU/Linux

Для себя проверяю, что настройки внесенные на этапе когда я записал образ raspbian на карту памяти впечатались/сохранились:

pi@raspberrypi:~$ cat /boot/config.txt | grep uart

enable_uart=1

Отлично. А теперь все тоже самое попробую, если на карту памяти записать образ: 2018-06-27-raspbian-stretch.img, но перед тем как это сделать, что разорвать связь между платой PL2303 USB UART Board (mini) и Raspberry Pi 3 Model B нужно всего лишь отсоединить разъем VCC (питание) или через консоль терминала скомандовать sudo poweroff. Т.к. я не закрывал консоль в которой командой sudo minicom -c on uart подключался ранее, то перейдя в нее вижу, какие сообщения система передавала на консоль:

pi@raspberrypi:~$ [ 2.071640] Under-voltage detected! (0x00050005)

[ 7.767237] sysrq: SysRq : Resetting

[ 7.772208] CPU1: stopping

[ 7.776524] CPU2: stopping

[ 7.780792] CPU3: stopping

[ 2.073976] Under-voltage detected! (0x00050005)

[ 2.071598] Under-voltage detected! (0x00050005)

[ 2.071932] Under-voltage detected! (0x00050005)

Raspbian GNU/Linux 9 raspberrypi ttyS0

raspberrypi login: pi

Password: авторизуюсь использую дефолтный пароль raspberry

Last login: Wed Jun 27 01:22:39 UTC 2018 on tty1

Linux raspberrypi 4.14.50-v7+ #1122 SMP Tue Jun 19 12:26:26 BST 2018 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.

SSH is enabled and the default password for the 'pi' user has not been changed.

This is a security risk - please login as the 'pi' user and type 'passwd' to set a new passwor.

pi@raspberrypi:~$ uname -a

Linux raspberrypi 4.14.50-v7+ #1122 SMP Tue Jun 19 12:26:26 BST 2018 armv7l GNU/Linux

Итого работает. Самое главное что я ранее разбирал это и мне не стоило большого труда вспомнить, как спустя долгое время от той заметке подключиться к Raspberry Pi 3 Model B через Преобразователь USB-UART на базе PL2303 с разъемом USB mini-AB.

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

pi@raspberrypi:~$ sudo ifconfig wlan0 up

pi@raspberrypi:~$ whereis wpa_passphrase

wpa_passphrase: /usr/bin/wpa_passphrase /usr/share/man/man8/wpa_passphrase.8.gz

pi@raspberrypi:~$ sudo wpa_passphrase network password

network={

ssid="network"

#psk="password"

psk=<Закодированная_фраза_пароля_на_Wi-Fi>

}

pi@raspberrypi:~$ sudo su -

root@raspberrypi:~# wpa_passphrase network password >> /etc/wpa_supplicant/wpa_supplicant.conf

root@raspberrypi:~# vi /etc/wpa_supplicant/wpa_supplicant.conf

На заметку: параметр country=RU следует удалить

root@raspberrypi:~# exit

pi@raspberrypi:~$ sudo ifconfig wlan0 down

pi@raspberrypi:~$ sudo ifconfig wlan0 up

pi@raspberrypi:~$ sudo killall wpa_supplicant

pi@raspberrypi:~$ sudo wpa_supplicant -B -c/etc/wpa_supplicant/wpa_supplicant.conf -iwlan0 -Dnl80211,wext

Successfully initialized wpa_supplicant

pi@raspberrypi:~$ sudo iwconfig wlan0

wlan0 IEEE 802.11 ESSID:"network"

Mode:Managed Frequency:2.412 GHz Access Point: E4:8D:8C:21:B8:60

Bit Rate=24 Mb/s Tx-Power=31 dBm

Retry short limit:7 RTS thr:off Fragment thr:off

Encryption key:off

Power Management:on

Link Quality=27/70 Signal level=-83 dBm

Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0

Tx excessive retries:0 Invalid misc:0 Missed beacon:0

pi@raspberrypi:~$ sudo dhclient wlan0

RTNETLINK answers: File exists

pi@raspberrypi:~$ sudo ifconfig wlan0 | grep "inet"

inet 172.40.40.36 netmask 255.255.255.0 broadcast 172.40.40.255

inet6 fe80::beba:7fc7:52d2:97d8 prefixlen 64 scopeid 0x20<link>

Теперь я могу подключиться к миникомпьютеру Raspberry Pi 3 Model B по SSH в пределах своей локальной сети:

ekzorchik@navy:~$ ssh -l pi 172.40.40.36

pi@172.40.40.36's password: ввожу дефолтный пароль raspberry

pi@raspberrypi:~ $ и вот я подключился, преобразователь мне более не нужен. Исходя из этого мне для конфигурирования не особо то и нужен монитор, мышь, клавиатура я все делаю как грамотный системный администратор. На этом у меня всё, с уважением автор блога Олло Александр aka ekzorchik.