Raspberry Pi Zero USB Stem: подключение, настройка и начало работы
Используйте Zero USB Stem для превращения самых маленьких Raspberry Pi, а точнее Zero и Zero W в компактный USB-стик.
Полноценный USB-порт позволит подключать малинку к ПК аналогично USB-флешке без единого провода. А программное обеспечение подарит возможность коммуницировать с Zero по USB как OTG-устройство, например притворится виртуальным COM-портом или полноценным Ethernet устройством. А в завершении USB Stem позволяет запустить малинку без SD-карты.
Сборка устройства
Raspberry Pi Zero Stem поставляется в разобранном виде. После покупки вам нужно пройти небольшой квест и спаять модуль. Следуйте нашей инструкции, и вы получите готовое к работе устройство!
Что понадобится
Как спаять
- Установите разъем USB на лицевую сторону платы Zero Stem.
- Припаяйте два крепления порта USB на обратной стороне платы.
- Припаяйте USB-разъём к контактным площадкам SMD на лицевой стороне платы.
- Скрепите Zero Stem с платой Raspberry Pi через винты и гайки.
- Спаяйте между Raspberry Pi и Zero Stem контактные площадки питания VBUS и земли GND.
- Спаяйте между Raspberry Pi и Zero Stem контактные площадки D+ и D−.
- Ура, устройство готово. Теперь можно переходить к примерам использования малины в виде USB-стика.
Примеры для USB-стика
На большинстве плат Raspberry Pi, USB-порты подключены к центральному процессору через USB-концентратор и настроены как хост-устройства. Т.е. порты ожидают подключения только периферийных устройств, например USB-Flash накопителя, клавиатуры, мышки и т.д.
Но на Raspberry Pi Zero и Zero W контакты USB-порта подключены непосредственно к самому процессору малины. Это даёт возможность использовать младшую версию Raspberry Pi не только как хост-устройство, но и выступать самой в виде периферийного девайса, например при подключении к ПК по USB стать Flash-накопителем, MIDI-устройством, виртуальным COM-портом «Serial Gadget», Ethernet-соединением «Ethernet Gadget» и т.д.
Serial Gadget
Драйвер Serial Gadget позволяет Raspberry Pi Zero при подключении к ПК по USB, определятся как последовательный COM-порт. Простота коммуникации заключается в том, что вы можете использовать малину с любым компьютером без дополнительных драйверов и танца с бубном.
Настройка Serial Gadget
- Отредактируйте файлДобавьте в конец файла строчку:
dtoverlay=dwc2
- Отредактируйте файлНайдите в файле строку
rootwait
и добавьте после неё строку
modules-load=dwc2,g_serial
- Подключитесь к Raspberry Pi через рабочий стол по HDMI или SSH.
- Проверьте установку драйвера, вбейте в терминал команду:
sudo dmesg
Найдите в отображенном списке, драйвер
среди других устройств. - Далее привяжите консоль Raspberry Pi к новоиспеченном последовательному порту. Вбейте в терминале команду:
sudo systemctl enable getty@ttyGS0.service
- Перезагрузите малину:
sudo reboot
- Проверьте привязку консоли к COM-порту. Вбейте в терминал команду:
sudo systemctl is-active getty@ttyGS0.service
В ответ вы увидите одно из двух сообщений системы:
- active: всё получилось и можно переходить к следующему шагу.
- inactive: что то пошло не так, повторите предыдущие шаги.
- Выключите Raspberry Pi
sudo shutdown -r now
- Отключите все устройства и провода от малины, кроме SD-карты.
Запуск
- Подключите Raspberry Pi к USB-порту компьютера через Zero Stem без единого провода.
- Запустите диспетчер устройств Windows и раскройте вкладку. Вы должны увидеть COM-порт с именем , где x — номер последовательного порта, запомните его.
- Запустите любой клиент с поддержкой Serial-соединения, например Putty. Вбейте номер COM-порта из предыдущего пункта, выставите скорость и нажмите на кнопку .
- Введите логин и пароль от малины, по умолчанию логин —, пароль — . В случае успешного ввода данных, увидите приветственное окно консоли.
- Для теста подключения, вбейте в консоль команду отображения даты и времени:
date
- Putty не единственная программа, который может осуществлять Serial-комуникацию. Для связи можно использовать любой софт, например встроенный терминал из Arduino IDE.
Ethernet Gadget
Драйвер Ethernet Gadget позволяет Raspberry Pi Zero при подключении к ПК через USB-стик, определятся как виртуальное сетевое подключение Ethernet. Это даёт возможность общаться с малинкой по протоколам SSH, SCP, VNC без дополнительных Ethernet-соединений и Wi-Fi. Ethernet Gadget также позволяет поделится настройками сети, что бы Raspberry Pi мог получить доступ к интернету через внешний компьютер по USB-подключению.
При подключении к Raspberry Pi через USB-стик в режиме «Ethernet Gadget», IP-адрес назначается системой динамически, т.е. малинке будет присваиваться новый IP-адрес при каждом включении питания. А это означает, что заранее нельзя узнать к какому IP-адресу подключатся для коммуникации. Решение проблемы — Zeroconf, технология которая позволяет подключатся к локальным устройствам по имени.
Настройка Ethernet Gadget
- Отредактируйте файлДобавьте в конец файла строчку:
dtoverlay=dwc2
- Отредактируйте файлНайдите в файле строку
rootwait
и добавьте после неё строку
modules-load=dwc2,g_ether
- Подключитесь к Raspberry Pi через рабочий стол по HDMI или SSH.
- Проверьте установку драйвера, вбейте в терминал команду:
sudo dmesg
Найдите в отображенном списке, драйвер
среди других устройств. - Выключите Raspberry Pi
sudo shutdown -r now
- Отключите все устройства и провода от малины, кроме SD-карты.
Запуск
- Подключите Raspberry Pi к USB-порту компьютера через Zero Stem без единого провода.
- Запустите диспетчер устройств Windows:
- Если во вкладкевы видите Ethernet-соединение с именем . Это значит всё получилось и можно переходить к следующему шагу.
- Если во вкладке обновите драйвер вручную.Ethernet-соединение с именем нет, тогда скорей всего система Windows назначила девайсу неправильный драйвер. Для проверки откройте вкладу и если обнаружите девайс с именем , тогда
- Запустите любой SSH-клиент, например Putty. Вбейте в поле хост строку , порт оставьте по умолчанию и нажмите на кнопку .
- Введите логин и пароль от малины, по умолчанию логин —, пароль — . В случае успешного ввода данных, увидите приветственное окно консоли.
- Для теста подключения, вбейте в консоль команду отображения даты и времени:
date
- Проверьте текущий IP-адрес назначенной системой по USB через виртуальное Ethernet-соединение. Вбейте в консоль команду:
ifconfig
В ответ вы получите список сетевых подключений, где нас интересует тип соединения
. Обратите внимания, что при каждом новом включении малины, IP-адрес будет меняться.
Доступ к интернету
Режим Ethernet Gadget также позволяет дать доступ Raspberry Pi к интернету через внешний компьютер по USB-подключению.
- Откройте страницу сетевых подключений.
- Выберите текущее подключение по которому осуществляется выход в интернет и в настройках подключения предоставьте общий доступ.
- Проверьте доступ в мировую сеть. Вбейте в консоль команду:
sudo ping www.google.com
В ответ вы увидите процесс обмена данными между клиентом и сервером. Это значит всё получилось и можно переходить к дальнейшим экспериментам и урокам.
Элементы платы
USB-порт
На торце платы расположен USB-порт Type-A, который позволяет подключить малину непосредственно в USB-порт компьютера без дополнительных кабелей аналогично обычной флешке.
Контакты питания
Имя контакта | Назначение |
---|---|
VBUS | Входной пин для подключения источника напряжения малины |
GND | Вывод земли |
Контакты данных
Имя контакта | Назначение |
---|---|
D− | Сигнальный пин для обмена данными по USB |
D+ | Сигнальный пин для обмена данными по USB |
Габаритный чертёж
Характеристики
- Модель: Raspberry Pi Zero USB Stem
- Совместимость: платы Raspberry Pi Zero и Zero W
- Размеры: 49,7×30×5 мм