Debug Console: различия между версиями
Sergey (обсуждение | вклад) |
|||
(не показана 71 промежуточная версия 5 участников) | |||
Строка 1: | Строка 1: | ||
<languages/> | |||
<translate> | |||
<!--T:109--> | |||
{{DISPLAYTITLE:Отладочный порт}} | |||
<!--T:100--> | |||
Контроллеры Wiren Board имеют отладочный порт, через который можно получить прямой доступ к консоли контроллера. Через него можно взаимодействовать с загрузчиком и следить за загрузкой операционной системы (последовательная консоль, serial console). Другие способы подключения к контроллеру: [[Веб-интерфейс Wiren Board | через веб-интерфейс]], [[SSH | по SSH]]. | |||
== Подключение == | == Подключение к отладочному порту контроллеров Wiren Board 6, 5.8 и 5.9 == <!--T:104--> | ||
[[Файл: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]] | ||
| | [[Файл:SerialUART_Win.png|250px|thumb|right|Номер порта в Windows]] | ||
На корпусе напротив разъема порта отладочной консоли находится надпись ''Debug Console''. | |||
<!--T:115--> | |||
Подключается стандартным кабелем USB (A) — Micro-USB (B) - такой же, как для сотовых телефонов. Разъемом USB (А) - к компьютеру, Micro-USB (B) — к контроллеру. | |||
<!--T:116--> | |||
Кабели от зарядных устройств подходят, но бывают исключения. Лучше выбирать такие, на которых указано, что они предназначены для передачи данных. | |||
Если кабель выбран правильно, Windows сообщит звуком об обнаружении устройства. | |||
=== Драйвера адаптеров и названия виртуальных COM-портов === <!--T:117--> | |||
<!--T:118--> | |||
Внутри контроллера установлен переходник USB-UART. | |||
<!--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 и выше]]. | |||
<!--T:120--> | |||
*'''Windows''': может потребоваться установка драйвера (см. [[#Поддержка в операционных системах|Поддержка в операционных системах]]). В Диспетчере устройств в разделе Ports(COM&LPT) появится виртуальный COM-порт контроллера. | |||
! | |||
| | |||
<!--T:121--> | |||
*'''macOS''': Начиная с High Sierra отладочная консоль контроллеров определяется из коробки. Предыдущие версии операционной системы, возможно, потребуют установки драйверов. При подключении создается устройство /dev/tty.usbserial-1410 или /dev/tty.usbmodem00001 (для контроллеров версии 6.4 и младше). | |||
<!--T:122--> | |||
*'''Android''': Поздние версии Android при подключении через OTG поддерживают отладочную консоль контроллеров без дополнительных драйверов. Тестировалось с приложением [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console]. | |||
Поддержка в операционных системах: | |||
{| 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;"| Из коробки | |||
<br | |||
<br | |||
<br | |||
cdc_acm | |||
|- | |- | ||
| / | | 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 для WB6.4 и выше === <!--T:123--> | |||
< | |||
<!--T:124--> | |||
На некоторых системах процесс ModemManager автоматически открывает устройство ''/dev/ttyACM0''. | |||
Чтобы ModemManager не мешал работе с портом, его надо отключить для этого устройства с помощью правил ''udev''. | |||
<!--T:125--> | |||
* Создать файл исключений ''udev'': | |||
<syntaxhighlight lang="bash"> sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules </syntaxhighlight> | |||
<!--T:126--> | |||
* в который записать cтрочку: | |||
<syntaxhighlight lang="bash"> ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1" </syntaxhighlight> | |||
<!--T:127--> | |||
* После сохранения файла перезагрузить правило ''udev'': | |||
<syntaxhighlight lang="bash"> sudo udevadm control --reload-rules </syntaxhighlight> | |||
<!--T:142--> | |||
* В свежих операционных системах может понадобится редактирование файла /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:8--> | |||
</ | Для работы с последовательным портом установите на вашем компьютере подходящую утилиту - например, PuTTY: | ||
* версия для Windows - [http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe скачать с официального сайта] | |||
* версия для Linux Debian или Ubuntu - выполните команду ''apt-get install putty'' | |||
* версия для macOS и инструкция по установке: [https://www.ssh.com/ssh/putty/mac/ PuTTY for Mac OS X], возможно использование терминального клиента <code>cu</code>, например, | |||
<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]. | |||
Подойдут также [http://elinux.org/RPi_Serial_Connection другие программы]. | |||
=== Подключение === | |||
[[Файл:Putty serial settings.png|400px|thumb|right | Настройка порта]] | |||
[[Файл:Putty serial open.png|400px|thumb|right| Открытие сессии]] | |||
#Запустите приложение от имени администратора: | |||
#* в Windows - щёлкните по значку PuTTY правой кнопкой и выберите ''Run This Program As An Administrator''; | |||
#* в Linux - <code>gksu putty</code>; | |||
#В меню, слева выберите последний пункт - ''Serial''. В появившиеся поля справа введите настройки порта: | |||
#*название последовательного порта: | |||
#**для Windows - это ''COM4'' ('''цифра может меняться''', см.выше); | |||
#**для Linux - это ''/dev/ttyACM0'' или ''/dev/ttyUSB0'' (до версии WB6.4). '''Цифра может меняться''', см.выше. | |||
#*скорость - ''115200''; | |||
#*количество битов в посылке - ''8''; | |||
#*количество стоп-битов - ''1''; | |||
#*чётность - ''нет''; | |||
#*контроль потока - ''нет''. <br /><br /> | |||
#В меню, слева выберите первый пункт - ''Session''. Справа переключите тип подключения на Serial - должны автоматически заполниться настройки порта. Затем нажмите ''Open''.<br /><br /> | |||
#Для проверки подключения нажмите Enter. Будет предложена авторизация: | |||
#*запрос логина - введите ''root'' и нажмите ''Enter''; | |||
#*запрос пароля - введите ''wirenboard'' (вводимые символы не будут отображаться) и нажмите ''Enter''.<br /><br /> | |||
#Появится приветственное сообщение - вы в консоли контроллера. Для перехода в визуальный файловый менеджер введите <code>mc</code>.<br /><br /> | |||
#:[[Файл:Putty serial logged in.png|500px]] | |||
== Физическая реализация в контроллерах == <!--T:111--> | |||
{| class="wikitable" | |||
! Версия коннтроллера !! Тип разъема !! Название разъема !! Интерфейс !! Чип USB/UART | |||
== Физическая реализация в контроллерах == | |||
{| | |||
! Версия | |||
|- | |- | ||
| 6.4 | | 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 || 3-pin UART (Gnd, Rx, | | 5.6.1 | ||
| rowspan="2" | 3-pin UART (Gnd, Rx, Tx) || UART | |||
|rowspan="3" | UART (3,3 В) | |||
|rowspan="3" | — | |||
|- | |- | ||
| | | 5.3, 4 || Debug UART | ||
|- | |- | ||
| 2.8 | | 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> |
Версия 19:26, 29 октября 2020
Контроллеры Wiren Board имеют отладочный порт, через который можно получить прямой доступ к консоли контроллера. Через него можно взаимодействовать с загрузчиком и следить за загрузкой операционной системы (последовательная консоль, serial console). Другие способы подключения к контроллеру: через веб-интерфейс, по SSH.
Подключение к отладочному порту контроллеров Wiren Board 6, 5.8 и 5.9
На корпусе напротив разъема порта отладочной консоли находится надпись Debug Console.
Подключается стандартным кабелем USB (A) — Micro-USB (B) - такой же, как для сотовых телефонов. Разъемом USB (А) - к компьютеру, Micro-USB (B) — к контроллеру.
Кабели от зарядных устройств подходят, но бывают исключения. Лучше выбирать такие, на которых указано, что они предназначены для передачи данных. Если кабель выбран правильно, Windows сообщит звуком об обнаружении устройства.
Драйвера адаптеров и названия виртуальных COM-портов
Внутри контроллера установлен переходник USB-UART.
- 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: может потребоваться установка драйвера (см. Поддержка в операционных системах). В Диспетчере устройств в разделе Ports(COM&LPT) появится виртуальный COM-порт контроллера.
- macOS: Начиная с High Sierra отладочная консоль контроллеров определяется из коробки. Предыдущие версии операционной системы, возможно, потребуют установки драйверов. При подключении создается устройство /dev/tty.usbserial-1410 или /dev/tty.usbmodem00001 (для контроллеров версии 6.4 и младше).
- Android: Поздние версии Android при подключении через OTG поддерживают отладочную консоль контроллеров без дополнительных драйверов. Тестировалось с приложением USB Serial Console.
Поддержка в операционных системах:
Версия контроллера |
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 5.8 - 5.9, |
Модуль ядра ch341 (все новые дистрибутивы — из коробки) | Необходим драйвер CH341SER | CH341SER_MAC |
Настройка работы в 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
- В свежих операционных системах может понадобится редактирование файла /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/
Установка программы для работы с последовательным портом
Для работы с последовательным портом установите на вашем компьютере подходящую утилиту - например, PuTTY:
- версия для Windows - скачать с официального сайта
- версия для Linux Debian или Ubuntu - выполните команду apt-get install putty
- версия для macOS и инструкция по установке: PuTTY for Mac OS X, возможно использование терминального клиента
cu
, например,
cu -s 115200 -l /dev/usbmodem00001
- Android: используйте, например, USB Serial Console.
Подойдут также другие программы.
Подключение
- Запустите приложение от имени администратора:
- в Windows - щёлкните по значку PuTTY правой кнопкой и выберите Run This Program As An Administrator;
- в Linux -
gksu putty
;
- В меню, слева выберите последний пункт - Serial. В появившиеся поля справа введите настройки порта:
- название последовательного порта:
- для Windows - это COM4 (цифра может меняться, см.выше);
- для Linux - это /dev/ttyACM0 или /dev/ttyUSB0 (до версии WB6.4). Цифра может меняться, см.выше.
- скорость - 115200;
- количество битов в посылке - 8;
- количество стоп-битов - 1;
- чётность - нет;
- контроль потока - нет.
- название последовательного порта:
- В меню, слева выберите первый пункт - Session. Справа переключите тип подключения на Serial - должны автоматически заполниться настройки порта. Затем нажмите Open.
- Для проверки подключения нажмите Enter. Будет предложена авторизация:
- запрос логина - введите root и нажмите Enter;
- запрос пароля - введите wirenboard (вводимые символы не будут отображаться) и нажмите Enter.
- Появится приветственное сообщение - вы в консоли контроллера. Для перехода в визуальный файловый менеджер введите
mc
.
Физическая реализация в контроллерах
Версия коннтроллера | Тип разъема | Название разъема | Интерфейс | Чип USB/UART |
---|---|---|---|---|
6.4 и младше | Micro-USB | Debug Console | USB/UART | HT42B534 |
6.0 - 6.3, 5.8 - 5.9 | USB/UART | CH340 | ||
5.6.1 | 3-pin UART (Gnd, Rx, Tx) | UART | UART (3,3 В) | — |
5.3, 4 | Debug UART | |||
3.5, 2.8 | 3-pin UART (Gnd, Tx, Rx) | UEXT1 (выводы 2,3,4) и 3-pin разъем без названия |
Программно во всех случаях это последовательный порт.