Debug Console: различия между версиями

Материал из Wiren Board
м (Откат правок Fizikdaos (обсуждение) к версии EvgenyBoger)
Метка: откат
Строка 8: Строка 8:
Контроллеры Wiren Board имеют отладочный порт, через который можно получить прямой доступ к консоли контроллера. Через него можно взаимодействовать с загрузчиком и следить за загрузкой операционной системы (последовательная консоль, serial console). Другие способы подключения к контроллеру: [[Веб-интерфейс Wiren Board | через веб-интерфейс]], [[SSH | по SSH]].
Контроллеры Wiren Board имеют отладочный порт, через который можно получить прямой доступ к консоли контроллера. Через него можно взаимодействовать с загрузчиком и следить за загрузкой операционной системы (последовательная консоль, serial console). Другие способы подключения к контроллеру: [[Веб-интерфейс Wiren Board | через веб-интерфейс]], [[SSH | по SSH]].


== Подключение к отладочному порту контроллеров Wiren Board 6, 5.8 и 5.9 == <!--T:104-->
== Физическая реализация порта отладочной консоли == <!--T:105-->
Физически в разных версиях контроллера отладочный порт реализован по разному:
* для версий '''WB 6 и позднее''' он выглядит как Micro-USB разъём (подпись ''Debug Console'');
* для версий '''WB 5.8 и позднее''' он выглядит как Micro-USB разъём (подпись ''Debug Console'' или ''Debug USB'');
* для версий '''WB 5.6 и ранее, до версии 2.8 ''' он выглядит как трёхштыревой разъём (подпись ''Debug UART'').
Программно во всех случаях это последовательный порт.
 
<!--T:110-->
Варианты реализации отладочной консоли в разных версиях контроллеров перечислены ниже.
 
=== Реализация отладочной консоли в контроллерах Wiren Board === <!--T:111-->
{| class="wikitable"
! Версия коннтроллера !! Тип разъема !! Название разъема !! Интерфейс !! Чип USB/UART
|-
| 6.4 и старше || microUSB || Debug Console || USB/UART || HT42B534
|-
| 6.0 — 6.3  || microUSB || Debug Console || USB/UART  || CH340
|-
| 5.8 — 5.9 || microUSB || Debug Console || USB/UART || CH340
|-
| 5.6.1 || 3-pin UART (Gnd, Rx, Tx) || UART || UART (3,3 В) || —
|-
| 5.3  || 3-pin UART (Tx, Rx, GND) || Debug UART || UART (3,3 В) || —
|-
| 4 || 3-pin UART (Gnd, Rx, Tx) || Debug UART || UART (3,3 В) || —
|-
| 3.5 || 3-pin UART (Gnd, Tx, Rx) || UEXT1 (выводы 2,3,4) и 3-pin разъем без названия || UART (3,3 В) || —
|-
| 2.8 || 3-pin UART (Gnd, Tx, Rx) || UEXT1 (выводы 2,3,4) и 3-pin разъем без названия || UART (3,3 В) || —
|}
 
== Поддержка в операционных системах == <!--T:3-->
{| class="wikitable"
! Версия контроллера !! Linux  !! Windows XP, 7, 8 !! Windows 10 !! MacOS X (High Sierra)  !! Android 9 + USB Serial Console
|-
| 6.4 и старше
| Модуль ядра cdc_acm (все новые дистрибутивы — из коробки), смотрите [[#Настройка работы отладочного порта в Linux для WB6.4 и выше| дополнительную информацию по настройке порта]] || Необходим драйвер [http://www.holtek.com/documents/10179/116677/USBBridgeSetup_CA.zip HT42B534] || Из коробки || Из коробки || Из коробки
|-
| 6.0 — 6.3
| Модуль ядра ch341 (все новые дистрибутивы — из коробки)|| Необходим драйвер [http://www.wch.cn/downloads/CH341SER_ZIP.html CH341SER] || Необходим драйвер [http://www.wch.cn/downloads/CH341SER_ZIP.html CH341SER] || [[http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC.ZIP]] || Из коробки
|-
| 5.8 — 5.9
| Модуль ядра ch341 (все новые дистрибутивы — из коробки)|| Необходим драйвер [http://www.wch.cn/downloads/CH341SER_ZIP.html CH341SER]|| Необходим драйвер [http://www.wch.cn/downloads/CH341SER_ZIP.html CH341SER] || [[http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC.ZIP]] || Из коробки
|-
|}
 
<!--T:112-->
Для контроллеров версии 5.6.1 и младше требуется переходник USB/UART. См. раздел [[#Подключение к отладочному порту в Wiren Board 5.6 и младше|Подключение к отладочному порту в Wiren Board 5.6 и младше]]
 
== Подключение к отладочному порту контроллеров Wiren Board 6, Wiren Board 5.8 и Wiren Board 5.9 == <!--T:104-->
[[Файл:Debugusb58.png|250px|thumb|right|Разъем ''Debug Console'' Wiren Board 5.8 и 5.9]]
[[Файл:WirenBoard6DebugConsole.png|250px|thumb|right|Разъем ''Debug Console'' Wiren Board 6]]
[[Файл:WirenBoard6DebugConsole.png|250px|thumb|right|Разъем ''Debug Console'' Wiren Board 6]]
[[Файл:Debugusb58.png|250px|thumb|right|Разъем ''Debug Console'' Wiren Board 5.8 и 5.9]]
[[Файл:USBA-MICROUSBB.png|250px|thumb|right|Кабель USB — Micro-USB]]
[[Файл:USBA-MICROUSBB.png|250px|thumb|right|Кабель USB — Micro-USB]]
[[Файл:SerialUART_Win.png|250px|thumb|right|Номер порта в Windows]]
[[Файл:SerialUART_Win.png|250px|thumb|right|Номер порта в Windows]]
=== Как найти порт отладочной консоли ===


<!--T:113-->
На корпусе напротив разъема порта отладочной консоли находится надпись ''Debug Console''.
На корпусе напротив разъема порта отладочной консоли находится надпись ''Debug Console''.
=== Подключение === <!--T:114-->


<!--T:115-->
<!--T:115-->
Подключается стандартным кабелем USB (A) — Micro-USB (B) - такой же, как для сотовых телефонов. Разъемом USB (А) - к компьютеру, Micro-USB (B) — к контроллеру.
Для подключения понадобится стандартный кабель USB — Micro-USB - такой же, как для подключения сотовых телефонов. Более точное название кабеля USB (A) — Micro-USB (B). Разъем USB (А) подключается к компьютеру, Micro-USB (B) — к контроллеру.


<!--T:116-->
<!--T:116-->
Строка 26: Строка 79:


<!--T:118-->
<!--T:118-->
Внутри контроллера установлен переходник USB-UART.
Внутри контроллера установлен переходник USB-UART; подробнее — в таблице [[ #Реализация отладочной консоли в контроллерах Wiren Board |Реализация отладочной консоли в контроллерах Wiren Board]].


<!--T:119-->
<!--T:119-->
*'''Linux''': адаптер обычно определяется автоматически, при подключении в выводе команды <code>dmesg</code> должна появиться строка <code>usb 1-1: ch341-uart converter now attached to ttyUSB0</code> или (для версий контроллера 6.4 и старше) <code>cdc_acm:3-6:1.0: ttyACM0: USB ACM device</code>. Номер порта ttyUSBx или ttyACMx может меняться, в зависимости от уже подключенных устройств. Смотрите список файлов в папке /dev/ . Консольный порт контроллеров новых версий 6.4 и старше определяется автоматически как устройство ''/dev/ttyACM0''. Смотрите также раздел [[#Настройка работы отладочного порта в Linux для WB6.4 и выше|Настройка работы отладочного порта в Linux для WB6.4 и выше]].
*'''Linux''': адаптер обычно определяется автоматически, при подключении в выводе команды <code>dmesg</code> должна появится строка <code>usb 1-1: ch341-uart converter now attached to ttyUSB0</code> или (для версий контроллера 6.4 и старше) <code>cdc_acm:3-6:1.0: ttyACM0: USB ACM device</code>. Номер порта ttyUSBx или ttyACMx может меняться, в зависимости от уже подключенных устройств. Смотрите список файлов в папке /dev/ . Консольный порт контроллеров новых версий 6.4 и старше определяется автоматически как устройство ''/dev/ttyACM0''. Смотрите также раздел [[#Настройка работы отладочного порта в Linux для WB6.4 и выше|Настройка работы отладочного порта в Linux для WB6.4 и выше]].


<!--T:120-->
<!--T:120-->
*'''Windows''': может потребоваться установка драйвера (см. [[#Поддержка в операционных системах|Поддержка в операционных системах]]). В Диспетчере устройств в разделе Ports(COM&LPT) появится виртуальный COM-порт контроллера.
*'''Windows''': в зависимости от версии и типа контроллера возможно потребуется установка драйвера (см. таблицу [[#Поддержка в операционных системах|Поддержка в операционных системах]]). В Диспетчере устройств (Device Manager) в разделе Ports(COM&LPT) должен появиться виртуальный COM-порт контроллера. Если не очевидно, какой из портов используется контроллером, можно отсоединить кабель и включить снова.


<!--T:121-->
<!--T:121-->
*'''macOS''': Начиная с High Sierra отладочная консоль контроллеров определяется из коробки. Предыдущие версии операционной системы, возможно, потребуют установки драйверов. При подключении создается устройство /dev/tty.usbserial-1410 или /dev/tty.usbmodem00001 (для контроллеров версии 6.4 и старше).
*'''macOS''': Начиная с High Sierra отладочная консоль контроллеров определяется из коробки, предыдущие версии операционной системы, возможно, потребуют установки драйверов. При подключении создается устройство /dev/tty.usbserial-1410 или /dev/tty.usbmodem00001 (для контроллеров версии 6.4 и старше).


<!--T:122-->
<!--T:122-->
*'''Android''': Поздние версии Android при подключении через OTG поддерживают отладочную консоль контроллеров без дополнительных драйверов. Тестировалось с приложением [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console].
*'''Android''': Поздние версии Android при подключении через OTG поддерживают отладочную консоль контроллеров без дополнительных драйверов. Тестировалось с приложением [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console].


Поддержка в операционных системах:
=== Настройка работы отладочного порта в Linux для WB6.4 и выше === <!--T:123-->
{| class="wikitable"
! Версия <br /> контроллера !! Linux  !! Windows XP, 7, 8 !! Windows 10 !! MacOS X <br />(High Sierra)  !! Android 9 + <br /> USB Serial Console
|-
| 6.4 и старше || Модуль ядра cdc_acm (все новые дистрибутивы — из коробки),
смотрите [[#Настройка работы отладочного порта в Linux для WB6.4 и выше| дополнительную информацию по настройке порта]]
| Необходим драйвер [http://www.holtek.com/documents/10179/116677/USBBridgeSetup_CA.zip HT42B534] || Из коробки || Из коробки
|rowspan="2" style="text-align:center;"| Из коробки
|-
| 6.0 - 6.3 <br /> 5.8 - 5.9, 
| Модуль ядра ch341 (все новые дистрибутивы — из коробки)
|colspan="2" style="text-align:center;"| Необходим драйвер [http://www.wch.cn/downloads/CH341SER_ZIP.html CH341SER] || [http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC]
|-
|}
 
=== Настройка работы в Linux === <!--T:123-->


<!--T:124-->
<!--T:124-->
На некоторых системах процесс ModemManager автоматически открывает устройство ''/dev/ttyACM0''.
'''Суть проблемы:''' на некоторых системах процесс ModemManager автоматически открывает устройство ''/dev/ttyACM0''.
Чтобы ModemManager не мешал работе с портом, его надо отключить для этого устройства с помощью правил ''udev''.
Чтобы ModemManager не мешал работе с портом, необходимо отключить его для данного устройства с помощью правил ''udev''.


<!--T:125-->
<!--T:125-->
* Создать файл исключений ''udev'':
* Создаем файл исключений ''udev''
<syntaxhighlight lang="bash"> sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules </syntaxhighlight>
<syntaxhighlight lang="bash"> sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules </syntaxhighlight>


<!--T:126-->
<!--T:126-->
* в который записать cтрочку:
* в который записываем cтрочку
<syntaxhighlight lang="bash"> ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1" </syntaxhighlight>
<syntaxhighlight lang="bash"> ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1" </syntaxhighlight>


<!--T:127-->
<!--T:127-->
* После сохранения файла перезагрузить правило ''udev'':
* После сохранения файла необходимо перезагрузить правила ''udev'':
<syntaxhighlight lang="bash"> sudo udevadm control --reload-rules </syntaxhighlight>
<syntaxhighlight lang="bash"> sudo udevadm control --reload-rules </syntaxhighlight>


Строка 76: Строка 114:
* В свежих операционных системах может понадобится редактирование файла /lib/systemd/system/ModemManager.service . Подробнее смотрите: https://bugs.launchpad.net/ubuntu/+source/modemmanager/+bug/1827328 и https://nick.zoic.org/art/failed-to-set-dtr-rts-systemd-modemmanager/
* В свежих операционных системах может понадобится редактирование файла /lib/systemd/system/ModemManager.service . Подробнее смотрите: https://bugs.launchpad.net/ubuntu/+source/modemmanager/+bug/1827328 и https://nick.zoic.org/art/failed-to-set-dtr-rts-systemd-modemmanager/


<!--T:128-->
Переходите к [[#Настройка работы с последовательным портом | настройке работы с последовательным портом]].
== Подключение к отладочному порту в Wiren Board 5.6 и младше== <!--T:4-->
=== Как найти штыревой разъем порта отладочной консоли ===
<!--T:129-->
<gallery mode="traditional" heights=200 widths=200 style="text-align:left">
Image:Wb56 uart.jpg|В '''Wiren Board 5.6''' Debug UART выведен на гребенку между разъемами FW и IR.
Image:Wb53 uart.jpg|Debug UART в '''Wiren Board 5.3''' выведен на боковую панель.
Image:WirenBoard4DebugConsole.png|В '''Wiren Board 4''' Debug UART находятся на боковой панели рядом с разъёмами для microSD и microSIM карт.
Image:WB3.5.png|В '''Wiren Board Smart Home rev 3.5''' Debug UART выведен на разъём UEXT1, а также отдельно на гребёнку (рядом с аудиовыходом, см. схему). Для Debug UART используются ножки 2,3,4.
Image:WirenBoard2.8DebugConsole.png| В '''Wiren Board 2.8''' Debug UART dыведен на разъём UEXT1 (чёрный разъём с десятью штырьками на длинной стороне платы).
File:WirenBoard2.8UEXTPINS.png| Расположение выводов UART на разъеме UEXT1 (вид сбоку)
</gallery>
=== Подключение === <!--T:130-->
<!--T:131-->
Для подключения понадобится адаптер USB-UART.
'''Внимание!'''
[[Файл:Duart.jpg|thumb|right|Адаптер USB-UART и набор соединительных проводов]]
<!--T:132-->
* Подключайте Debug UART только через переходники USB-UART с напряжением '''3,3 В'''.
* UART не является синонимом RS-232 (где напряжение на линии может быть 5 В, 12 В и т.д.). Подключение Debug UART к порту RS-232 (или переходнику USB-RS-232) напрямую '''приведет к необратимому повреждению устройства'''.
<!--T:133-->
Подключите адаптер USB-UART к компьютеру, соедините контакты адаптера с контактами (штырьками) отладочного порта на контроллере по схеме:
*GND к GND,
*TX к RX,
*RX к TX.
<!--T:134-->
На некоторых переходниках маркировка перепутана — попробуйте соединить TX с TX и RX с RX.
=== Поддержка переходников USB/UART === <!--T:135-->
<!--T:136-->
Существует большое количество переходников USB/UART, в таблице приводится информация о поддержке в операционных системах переходников с наиболее распространенными чипами. Таблица будет уточняться по мере получения новых данных.
<!--T:137-->
{| class="wikitable"
! Переходник USB/UART (чип) !! Linux  !! Windows XP, 7, 8 !! Windows 10 !! MacOS X (High Sierra)  !! Android 9 + USB Serial Console
|-
| FTDI232
| Модуль ядра ftdi_sio || требуют драйверов на ОС из коробки || требуют драйверов на ОС из коробки || Нет информации || Из коробки
|-
| CP2102
| Модуль ядра cp210x || [https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers Silicon Labs CP210x VCP Driver] || [https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers Silicon Labs CP210x VCP Driver] || [https://www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers Silicon Labs CP210x VCP Driver] || Из коробки
|-
| CH340/CH341
| Модуль ядра ch341 || Необходим драйвер [http://www.wch.cn/downloads/CH341SER_ZIP.html CH341SER] || Из коробки || [http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC.ZIP] || Из коробки
|-
| PL2303xx
| Модуль ядра pl2303 || необходим драйвер || нет информации || нет информации  || нет информации
|}
=== Драйвера адаптеров === <!--T:138-->
<!--T:139-->
*Windows: установите драйвер конкретного адаптера, если он не поддерживается операционной системой.
*Linux: адаптер скорее всего будет сразу поддерживаться ядром, но, возможно, придётся скомпилировать соответствующий модуль.
*macOS: установите драйвер конкретного адаптера, если он не поддерживается операционной системой.
*Android: установите драйвер конкретного адаптера, если он не поддерживается операционной системой.
<!--T:140-->
Переходите к [[#Настройка работы с последовательным портом | настройке работы с последовательным портом]].
== Настройка работы с последовательным портом == <!--T:7-->
=== Установка программы для работы с последовательным портом ===
=== Установка программы для работы с последовательным портом ===


Строка 83: Строка 192:
* версия для Linux Debian или Ubuntu - выполните команду ''apt-get install putty''
* версия для Linux Debian или Ubuntu - выполните команду ''apt-get install putty''
* версия для macOS и инструкция по установке: [https://www.ssh.com/ssh/putty/mac/ PuTTY for Mac OS X], возможно использование терминального клиента <code>cu</code>, например  
* версия для macOS и инструкция по установке: [https://www.ssh.com/ssh/putty/mac/ PuTTY for Mac OS X], возможно использование терминального клиента <code>cu</code>, например  
<pre>cu -s 115200 -l /dev/usbmodem00001</pre>
<pre>cu -s 115200 -l /dev/usbmodem00001</pre>.
* Android: используйте, например, [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console].   
* Android: используйте, например, [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console].   
Подойдут также [http://elinux.org/RPi_Serial_Connection другие программы].
Подойдут также [http://elinux.org/RPi_Serial_Connection другие программы].  


=== Подключение ===  
<!--T:141-->
[[Файл:Putty serial settings.png|400px|thumb|right]]
Настройки соединения: '''115200 8N1''' (115200 кбит/с, 8 бит, нет бита чётности, один стоп-бит), root/wirenboard.
[[Файл:Putty serial open.png|400px|thumb|right]]
 
=== Подключение === <!--T:9-->
 
<!--T:10-->
#Запустите приложение от имени администратора:
#Запустите приложение от имени администратора:
#* в Windows - щёлкните по значку PuTTY правой кнопкой и выберите ''Run This Program As An Administrator''
#* в Windows - щёлкните по значку PuTTY правой кнопкой и выберите ''Run This Program As An Administrator''
#* в Linux - <code>gksu putty</code>  
#* в Linux - <code>gksu putty</code> <br /><br />
#В меню слева выберите последний пункт - ''Serial''. В появившиеся поля справа введите настройки порта:
#В меню слева выберите последний пункт - ''Serial''. В появившиеся поля справа введите настройки порта:
#*название последовательного порта
#*название последовательного порта
#**для Windows - это ''COM4'' ('''цифра может меняться''', см.выше)
#**для Windows - это ''COM4'' ('''цифра может меняться''', см.выше)
#**для Linux - это ''/dev/ttyACM0'' или ''/dev/ttyUSB0'' (до версии WB6.4). '''Цифра может меняться''', см.выше.
#**для Linux - это ''/dev/ttyUSB0'' либо ''/dev/ttyACM0'' (для WB6.4 и выше). '''Цифра может меняться''', см.выше.
#*скорость - ''115200''
#*скорость - ''115200''
#*количество битов в посылке - ''8''
#*количество битов в посылке - ''8''
Строка 102: Строка 214:
#*чётность - ''нет''
#*чётность - ''нет''
#*контроль потока - ''нет'' <br /><br />
#*контроль потока - ''нет'' <br /><br />
#:[[Файл:Putty serial settings.png|500px]] <br /><br />
#В меню слева выберите первый пункт - ''Session''. Справа переключите тип подключения на Serial - должны автоматически заполниться настройки порта. Затем нажмите ''Open''.<br /><br />
#В меню слева выберите первый пункт - ''Session''. Справа переключите тип подключения на Serial - должны автоматически заполниться настройки порта. Затем нажмите ''Open''.<br /><br />
#Для проверки подключения нажмите Enter. Будет предложена авторизация.
#:[[Файл:Putty serial open.png|500px]] <br /><br />
#*запрос логина - введите ''root'' и нажмите ''Enter'',
#Чтобы проверить, правильно ли вы всё сделали:
#*запрос пароля - введите ''wirenboard'' (вводимые символы не будут отображаться) и нажмите ''Enter''.<br /><br />
#*для '''Wiren Board 5.8 и старше''': нажмите Enter. Будет предложена авторизация.
 
<!--T:143-->
#*для '''Wiren Board 5.6 и младше, до версии 2.8 включительно''': кнопкой выключите и включите контроллер - на экране должны появиться сообщения о загрузке.
#**запрос логина - введите ''root'' и нажмите ''Enter'',
#**запрос пароля - введите ''wirenboard'' (вводимые символы не будут отображаться) и нажмите ''Enter''.<br /><br />
#Появится приветственное сообщение - вы в консоли контроллера. Для перехода в визуальный файловый менеджер введите <code>mc</code>.<br /><br />
#Появится приветственное сообщение - вы в консоли контроллера. Для перехода в визуальный файловый менеджер введите <code>mc</code>.<br /><br />
#:[[Файл:Putty serial logged in.png|500px]]
#:[[Файл:Putty serial logged in.png|500px]]
== Физическая реализация в контроллерах == <!--T:111-->
{| class="wikitable"
! Версия коннтроллера !! Тип разъема !! Название разъема !! Интерфейс !! Чип USB/UART
|-
| 6.4 и старше
| rowspan="2" | Micro-USB
| rowspan="2" | Debug Console || USB/UART || HT42B534
|-
| 6.0 - 6.3, 5.8 - 5.9  ||  USB/UART  || CH340
|-
| 5.6.1
| rowspan="2" | 3-pin UART (Gnd, Rx, Tx) || UART
|rowspan="3" | UART (3,3 В)
|rowspan="3" | —
|-
| 5.3, 4  ||  Debug UART
|-
| 3.5, 2.8 || 3-pin UART (Gnd, Tx, Rx) || UEXT1 (выводы 2,3,4) и 3-pin разъем без названия
|-
|}
Программно во всех случаях это последовательный порт.
== Отладочный порт в старых версиях ==
[[WB5.6_Debug_Console| Подключение к отладочному порту в Wiren Board 5.6 и младше]]


</translate>
</translate>

Версия 15:57, 19 августа 2020



Контроллеры Wiren Board имеют отладочный порт, через который можно получить прямой доступ к консоли контроллера. Через него можно взаимодействовать с загрузчиком и следить за загрузкой операционной системы (последовательная консоль, serial console). Другие способы подключения к контроллеру: через веб-интерфейс, по SSH.

Физическая реализация порта отладочной консоли

Физически в разных версиях контроллера отладочный порт реализован по разному:

  • для версий WB 6 и позднее он выглядит как Micro-USB разъём (подпись Debug Console);
  • для версий WB 5.8 и позднее он выглядит как Micro-USB разъём (подпись Debug Console или Debug USB);
  • для версий WB 5.6 и ранее, до версии 2.8 он выглядит как трёхштыревой разъём (подпись Debug UART).

Программно во всех случаях это последовательный порт.

Варианты реализации отладочной консоли в разных версиях контроллеров перечислены ниже.

Реализация отладочной консоли в контроллерах Wiren Board

Версия коннтроллера Тип разъема Название разъема Интерфейс Чип USB/UART
6.4 и старше microUSB Debug Console USB/UART HT42B534
6.0 — 6.3 microUSB Debug Console USB/UART CH340
5.8 — 5.9 microUSB Debug Console USB/UART CH340
5.6.1 3-pin UART (Gnd, Rx, Tx) UART UART (3,3 В)
5.3 3-pin UART (Tx, Rx, GND) Debug UART UART (3,3 В)
4 3-pin UART (Gnd, Rx, Tx) Debug UART UART (3,3 В)
3.5 3-pin UART (Gnd, Tx, Rx) UEXT1 (выводы 2,3,4) и 3-pin разъем без названия UART (3,3 В)
2.8 3-pin UART (Gnd, Tx, Rx) UEXT1 (выводы 2,3,4) и 3-pin разъем без названия UART (3,3 В)

Поддержка в операционных системах

Версия контроллера Linux Windows XP, 7, 8 Windows 10 MacOS X (High Sierra) Android 9 + USB Serial Console
6.4 и старше Модуль ядра cdc_acm (все новые дистрибутивы — из коробки), смотрите дополнительную информацию по настройке порта Необходим драйвер HT42B534 Из коробки Из коробки Из коробки
6.0 — 6.3 Модуль ядра ch341 (все новые дистрибутивы — из коробки) Необходим драйвер CH341SER Необходим драйвер CH341SER [CH341SER_MAC.ZIP] Из коробки
5.8 — 5.9 Модуль ядра ch341 (все новые дистрибутивы — из коробки) Необходим драйвер CH341SER Необходим драйвер CH341SER [CH341SER_MAC.ZIP] Из коробки

Для контроллеров версии 5.6.1 и младше требуется переходник USB/UART. См. раздел Подключение к отладочному порту в Wiren Board 5.6 и младше

Подключение к отладочному порту контроллеров Wiren Board 6, Wiren Board 5.8 и Wiren Board 5.9

Разъем Debug Console Wiren Board 5.8 и 5.9
Разъем Debug Console Wiren Board 6
Кабель USB — Micro-USB
Номер порта в Windows

Как найти порт отладочной консоли

На корпусе напротив разъема порта отладочной консоли находится надпись Debug Console.

Подключение

Для подключения понадобится стандартный кабель USB — Micro-USB - такой же, как для подключения сотовых телефонов. Более точное название кабеля USB (A) — Micro-USB (B). Разъем USB (А) подключается к компьютеру, Micro-USB (B) — к контроллеру.

Кабели от зарядных устройств подходят, но бывают исключения. Лучше выбирать такие, на которых указано, что они предназначены для передачи данных. Если кабель выбран правильно, Windows сообщит звуком об обнаружении устройства.

Драйвера адаптеров и названия виртуальных COM-портов

Внутри контроллера установлен переходник USB-UART; подробнее — в таблице Реализация отладочной консоли в контроллерах Wiren Board.

  • Linux: адаптер обычно определяется автоматически, при подключении в выводе команды dmesg должна появится строка usb 1-1: ch341-uart converter now attached to ttyUSB0 или (для версий контроллера 6.4 и старше) cdc_acm:3-6:1.0: ttyACM0: USB ACM device. Номер порта ttyUSBx или ttyACMx может меняться, в зависимости от уже подключенных устройств. Смотрите список файлов в папке /dev/ . Консольный порт контроллеров новых версий 6.4 и старше определяется автоматически как устройство /dev/ttyACM0. Смотрите также раздел Настройка работы отладочного порта в Linux для WB6.4 и выше.
  • Windows: в зависимости от версии и типа контроллера возможно потребуется установка драйвера (см. таблицу Поддержка в операционных системах). В Диспетчере устройств (Device Manager) в разделе Ports(COM&LPT) должен появиться виртуальный COM-порт контроллера. Если не очевидно, какой из портов используется контроллером, можно отсоединить кабель и включить снова.
  • macOS: Начиная с High Sierra отладочная консоль контроллеров определяется из коробки, предыдущие версии операционной системы, возможно, потребуют установки драйверов. При подключении создается устройство /dev/tty.usbserial-1410 или /dev/tty.usbmodem00001 (для контроллеров версии 6.4 и старше).
  • Android: Поздние версии Android при подключении через OTG поддерживают отладочную консоль контроллеров без дополнительных драйверов. Тестировалось с приложением USB Serial Console.

Настройка работы отладочного порта в Linux для WB6.4 и выше

Суть проблемы: на некоторых системах процесс ModemManager автоматически открывает устройство /dev/ttyACM0. Чтобы ModemManager не мешал работе с портом, необходимо отключить его для данного устройства с помощью правил udev.

  • Создаем файл исключений udev
 sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules
  • в который записываем cтрочку
 ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1"
  • После сохранения файла необходимо перезагрузить правила udev:
 sudo udevadm control --reload-rules

Переходите к настройке работы с последовательным портом.

Подключение к отладочному порту в Wiren Board 5.6 и младше

Как найти штыревой разъем порта отладочной консоли

Подключение

Для подключения понадобится адаптер USB-UART. Внимание!

Адаптер USB-UART и набор соединительных проводов
  • Подключайте Debug UART только через переходники USB-UART с напряжением 3,3 В.
  • UART не является синонимом RS-232 (где напряжение на линии может быть 5 В, 12 В и т.д.). Подключение Debug UART к порту RS-232 (или переходнику USB-RS-232) напрямую приведет к необратимому повреждению устройства.

Подключите адаптер USB-UART к компьютеру, соедините контакты адаптера с контактами (штырьками) отладочного порта на контроллере по схеме:

  • GND к GND,
  • TX к RX,
  • RX к TX.

На некоторых переходниках маркировка перепутана — попробуйте соединить TX с TX и RX с RX.

Поддержка переходников USB/UART

Существует большое количество переходников USB/UART, в таблице приводится информация о поддержке в операционных системах переходников с наиболее распространенными чипами. Таблица будет уточняться по мере получения новых данных.

Переходник USB/UART (чип) Linux Windows XP, 7, 8 Windows 10 MacOS X (High Sierra) Android 9 + USB Serial Console
FTDI232 Модуль ядра ftdi_sio требуют драйверов на ОС из коробки требуют драйверов на ОС из коробки Нет информации Из коробки
CP2102 Модуль ядра cp210x Silicon Labs CP210x VCP Driver Silicon Labs CP210x VCP Driver Silicon Labs CP210x VCP Driver Из коробки
CH340/CH341 Модуль ядра ch341 Необходим драйвер CH341SER Из коробки CH341SER_MAC.ZIP Из коробки
PL2303xx Модуль ядра pl2303 необходим драйвер нет информации нет информации нет информации


Драйвера адаптеров

  • Windows: установите драйвер конкретного адаптера, если он не поддерживается операционной системой.
  • Linux: адаптер скорее всего будет сразу поддерживаться ядром, но, возможно, придётся скомпилировать соответствующий модуль.
  • macOS: установите драйвер конкретного адаптера, если он не поддерживается операционной системой.
  • Android: установите драйвер конкретного адаптера, если он не поддерживается операционной системой.

Переходите к настройке работы с последовательным портом.

Настройка работы с последовательным портом

Установка программы для работы с последовательным портом

Для работы с последовательным портом установите на вашем компьютере подходящую утилиту - например, PuTTY:

  • версия для Windows - скачать с официального сайта
  • версия для Linux Debian или Ubuntu - выполните команду apt-get install putty
  • версия для macOS и инструкция по установке: PuTTY for Mac OS X, возможно использование терминального клиента cu, например
cu -s 115200 -l /dev/usbmodem00001

.

Подойдут также другие программы.

Настройки соединения: 115200 8N1 (115200 кбит/с, 8 бит, нет бита чётности, один стоп-бит), root/wirenboard.

Подключение

  1. Запустите приложение от имени администратора:
    • в Windows - щёлкните по значку PuTTY правой кнопкой и выберите Run This Program As An Administrator
    • в Linux - gksu putty

  2. В меню слева выберите последний пункт - Serial. В появившиеся поля справа введите настройки порта:
    • название последовательного порта
      • для Windows - это COM4 (цифра может меняться, см.выше)
      • для Linux - это /dev/ttyUSB0 либо /dev/ttyACM0 (для WB6.4 и выше). Цифра может меняться, см.выше.
    • скорость - 115200
    • количество битов в посылке - 8
    • количество стоп-битов - 1
    • чётность - нет
    • контроль потока - нет

    Putty serial settings.png

  3. В меню слева выберите первый пункт - Session. Справа переключите тип подключения на Serial - должны автоматически заполниться настройки порта. Затем нажмите Open.

    Putty serial open.png

  4. Чтобы проверить, правильно ли вы всё сделали:
    • для Wiren Board 5.8 и старше: нажмите Enter. Будет предложена авторизация.
    • для Wiren Board 5.6 и младше, до версии 2.8 включительно: кнопкой выключите и включите контроллер - на экране должны появиться сообщения о загрузке.
      • запрос логина - введите root и нажмите Enter,
      • запрос пароля - введите wirenboard (вводимые символы не будут отображаться) и нажмите Enter.

  1. Появится приветственное сообщение - вы в консоли контроллера. Для перехода в визуальный файловый менеджер введите mc.

    Putty serial logged in.png