Debug Console: различия между версиями
Fizikdaos (обсуждение | вклад) |
|||
(не показано 20 промежуточных версий 4 участников) | |||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE:Отладочный порт | {{DISPLAYTITLE:Отладочный порт}} | ||
== | == Где находится порт == | ||
У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console». | У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console». | ||
<gallery mode="packed" caption="" heights="150px" | <gallery mode="packed" caption="" heights="150px"> | ||
Image: WirenBoard7DebugConsole.png | Wiren Board 7.x | Image: WirenBoard7DebugConsole.png | Wiren Board 7.x | ||
Image: WirenBoard6DebugConsole.png | Wiren Board 6.x | Image: WirenBoard6DebugConsole.png | Wiren Board 6.x | ||
Image: Debugusb58.png | Wiren Board 5.8 и 5.9 | Image: Debugusb58.png | Wiren Board 5.8 и 5.9 | ||
</gallery> | </gallery> | ||
Подключившись к нему, как и в случае [[SSH | SSH]] подключения, вы превращаете свой компьютер в монитор и клавиатуру контроллера. И получаете доступ к его консоли (командной строке). А в отличие от SSH, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке. | Подключившись к нему, как и в случае [[SSH | SSH]] подключения, вы превращаете свой компьютер в монитор и клавиатуру контроллера. И получаете доступ к его консоли (командной строке). А в отличие от SSH, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке. | ||
Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте [[Веб-интерфейс Wiren Board | веб-интерфейс]] или SSH. | Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте [[Веб-интерфейс Wiren Board | веб-интерфейс]] или SSH. | ||
Если у вас Wiren Board 5.6 или еще более ранний — смотрите [[WB5.6_Debug_Console| Подключение к отладочному порту в Wiren Board 5.6 и младше]]. | |||
== Подключение == | == Подключение == | ||
Подключение выполняется стандартными кабелями, их легко купить. В комплекте с вашим смартфоном может быть такой. Бывают кабели с такими же разъёмами, но предназначенные только для зарядки — с ними могут быть проблемы. | |||
<gallery mode="packed" caption="Виды кабелей для подключения к отладочному порту" heights="250px"> | |||
Image: USBA-USBC.png | Для подключения '''Wiren Board 7''' к компьютеру нужен кабель USB (A) – USB-c | |||
Image: USBA-MICROUSBB.png | Для подключения более ранних контроллеров - USB (A) – Micro-USB (B) | |||
</gallery> | |||
Подключение выполняется стандартными кабелями, их легко купить. В комплекте с вашим смартфоном может быть такой. | |||
Для подключения '''Wiren Board 7''' к компьютеру нужен кабель | |||
Далее надо настроить операционную систему и программу. | |||
== Настройка == | |||
=== Windows === | === Windows === | ||
Если у вас на компьютере '''Windows 10''', а контроллер '''Wiren Board 6.4 или новее''', то система сама, после физического подключения, назначит виртуальный COM порт и установит необходимый драйвер. Увидеть | Если у вас на компьютере '''Windows 10''', а контроллер '''Wiren Board 6.4 или новее''', то система сама, после физического подключения, назначит виртуальный COM порт и установит необходимый драйвер. Увидеть это можно в Диспетчере устройств Windows: | ||
[[Файл:Dispatcher.png|left]] | [[Файл:Dispatcher.png|left]] | ||
<br clear="both" /> | <br clear="both" /> | ||
При использовании '''Windows XP, 7, 8''' скачайте и установите драйвер | При использовании '''Windows XP, 7, 8''' скачайте и установите драйвер: | ||
* для [https://wirenboard.com/wiki/images/3/38/HT42B534_inf.zip Wiren Board 6.4 или | * для [https://wirenboard.com/wiki/images/3/38/HT42B534_inf.zip Wiren Board 6.4 или старше]; | ||
* для [http://www.wch.cn/downloads/CH341SER_ZIP.html более ранних версий]. | * для [http://www.wch.cn/downloads/CH341SER_ZIP.html более ранних версий]. | ||
Далее подключайте контроллер, и в Диспетчере устройств Windows вы должны увидеть виртуальный COM порт, как на иллюстрации выше. | Далее подключайте контроллер, и в Диспетчере устройств Windows вы должны увидеть виртуальный COM порт, как на иллюстрации выше. | ||
В качестве программы для общения с контроллером мы рекомендуем использовать [https://mobaxterm.mobatek.net/ MobaXterm] от компании Mobatek. | В качестве программы для общения с контроллером мы рекомендуем использовать [https://mobaxterm.mobatek.net/ MobaXterm] от компании Mobatek. Возможности программы очень обширны. Она бесплатна для домашнего использования, для коммерческого — есть платная версия. | ||
Нам нужно создать новую сессию '''Sessions''' → '''New session''' → '''Serial''': | Нам нужно создать новую сессию '''Sessions''' → '''New session''' → '''Serial''': | ||
Строка 96: | Строка 67: | ||
Для работы с Debug console мы рекомендуем использовать Minicom. Команда для подключения будет выглядеть так: | Для работы с Debug console мы рекомендуем использовать Minicom. Команда для подключения будет выглядеть так: | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
minicom -D /dev/ | minicom -D /dev/ttyUSB0 -b 115200 -8 -a off | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Скорее всего, для доступа к порту вам понадобятся права суперпользователя - используйте sudo. | Скорее всего, для доступа к порту вам понадобятся права суперпользователя - используйте sudo. | ||
Строка 117: | Строка 88: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Для '''более ранних''' контроллеров необходимо отредактировать файл: | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
/lib/systemd/system/ModemManager.service | /lib/systemd/system/ModemManager.service | ||
Строка 129: | Строка 100: | ||
=== MacOS === | === MacOS === | ||
{{note|warn| Если у вас Wiren Board 7 и Mac с USB | {{note|warn| Если у вас Wiren Board 7 и Mac с USB Type-C на процессоре Intel - нужно отключить питание контроллера, он будет питаться от USB. При наличии питания порт операционной системой не определяется. На более старые Mac и Mac на процессорах Apple эта особенность не распространяется. }} | ||
Начиная с версии MacOS '''10.14 Mojave''' все должно определиться автоматически. Предыдущие версии, возможно, потребуют установки драйвера [http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC]. | Начиная с версии MacOS '''10.14 Mojave''' все должно определиться автоматически. Предыдущие версии, возможно, потребуют установки драйвера [http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC]. | ||
Строка 162: | Строка 133: | ||
Начиная с Android версии 9 все работает без установки дополнительных драйверов. Подключение через OTG. Тестировалось с приложением [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console], если ссылка не работает - ищите в Google Play. | Начиная с Android версии 9 все работает без установки дополнительных драйверов. Подключение через OTG. Тестировалось с приложением [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console], если ссылка не работает - ищите в Google Play. | ||
<br clear="both" /> | <br clear="both" /> | ||
== Работа с отладочным портом == | == Работа с отладочным портом == | ||
[[Файл: | [[Файл:Putty serial logged in.png|500px|thumb|right| Отладочная консоль]] | ||
Контроллер к компьютеру вы подключили, программу настроили, движемся дальше. | |||
# Включаете питание контроллера. Наблюдаете сообщения, появляющиеся на экране при загрузке контроллера. Текст меняется быстро, отследить его невозможно. Но, если возникнет критическая ошибка при загрузке — загрузка остановится, и сообщение об ошибке будет у вас перед глазами. | |||
# Если загрузка прошла нормально — вы увидите приглашение контроллера. Вводите логин, пароль — командная строка в вашем распоряжении. Можете настроить сеть, исправить конфигурационные файлы, посмотреть логи и т. д. ВАЖНО! При работе с Debug console на экран время от времени будут «выпадать» сообщения от работающих сервисов Linux. Особенно, если сервис работает с ошибкой. Вы можете продолжать ввод команды с клавиатуры — все будет отработано корректно. Для отключения вывода «лишних» сообщений на экран используйте команду <code>dmesg -n1</code>. Теперь будут выводится только те сообщения, которые требуют немедленного вмешательства. | |||
# Пролистывая экран назад вы можете просмотреть все сообщения, «выпавшие» при загрузке. Обращайте внимание на error, warning, filed. Не можете сами разобраться — записывайте сеанс в лог файл и обращайтесь в нашу техподдержку. | |||
Вводите логин, пароль | |||
ВАЖНО! При работе с Debug console на экран время от времени будут «выпадать» сообщения от работающих сервисов Linux. Особенно, если сервис работает с ошибкой. Вы можете продолжать ввод команды с клавиатуры — все будет отработано корректно. Для отключения вывода «лишних» сообщений на экран используйте команду <code>dmesg -n1</code>. Теперь будут выводится только те сообщения, которые требуют немедленного вмешательства. | |||
== Технические спецификации == | |||
=== Физическая реализация в контроллерах === | |||
== Физическая реализация в контроллерах == | |||
{| border="1" class="wikitable" | {| border="1" class="wikitable" | ||
! Версия контроллера || Тип разъема || Название разъема || Интерфейс || Чип USB/UART | ! Версия контроллера || Тип разъема || Название разъема || Интерфейс || Чип USB/UART | ||
Строка 214: | Строка 159: | ||
|} | |} | ||
Программно во всех случаях это последовательный порт. | Программно во всех случаях это последовательный порт. | ||
=== Параметры подключения === | |||
{| border="1" class="wikitable" | |||
|+ Параметры подключения к Debug-консоли контроллера Wiren Board | |||
! Параметр|| Значение || Описание | |||
|- | |||
| Serial Port|| | |||
* Windows — COMx | |||
* Linux — /dev/ttyACM0 или до версии WB6.4 — /dev/ttyUSB0 | |||
|| Подробнее смотрите выше в этой статье | |||
|- | |||
| Baud rate || 115200 || Скорость, бит/с | |||
|- | |||
| Data bits || 8 || Количество битов данных | |||
|- | |||
| Parity || None || Бит чётности | |||
|- | |||
| Stop bits || 1 || Количество стоповых битов | |||
|- | |||
| Hardware flow control || None || Аппаратный контроль потока | |||
|- | |||
| Software flow control || None || Программный контроль потока | |||
|- | |||
|} |
Версия 13:56, 23 декабря 2022
Где находится порт
У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console».
Подключившись к нему, как и в случае SSH подключения, вы превращаете свой компьютер в монитор и клавиатуру контроллера. И получаете доступ к его консоли (командной строке). А в отличие от SSH, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке.
Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте веб-интерфейс или SSH.
Если у вас Wiren Board 5.6 или еще более ранний — смотрите Подключение к отладочному порту в Wiren Board 5.6 и младше.
Подключение
Подключение выполняется стандартными кабелями, их легко купить. В комплекте с вашим смартфоном может быть такой. Бывают кабели с такими же разъёмами, но предназначенные только для зарядки — с ними могут быть проблемы.
Далее надо настроить операционную систему и программу.
Настройка
Windows
Если у вас на компьютере Windows 10, а контроллер Wiren Board 6.4 или новее, то система сама, после физического подключения, назначит виртуальный COM порт и установит необходимый драйвер. Увидеть это можно в Диспетчере устройств Windows:
При использовании Windows XP, 7, 8 скачайте и установите драйвер:
Далее подключайте контроллер, и в Диспетчере устройств Windows вы должны увидеть виртуальный COM порт, как на иллюстрации выше.
В качестве программы для общения с контроллером мы рекомендуем использовать MobaXterm от компании Mobatek. Возможности программы очень обширны. Она бесплатна для домашнего использования, для коммерческого — есть платная версия.
Нам нужно создать новую сессию Sessions → New session → Serial:
и настроить ее:
Во вкладке Terminal settings вы можете настроить шрифт, цвета и, при необходимости, указать файл для записи всего, что будет выводится на экран во время сеанса:
А во вкладке Bookmark settings укажите внятное название сессии:
Linux
Порт должен назначиться автоматически. В выводе команды dmesg контроллеров Wiren Board 6.4 или новее должна появиться строка:
cdc_acm:3-6:1.0: ttyACM0: USB ACM device
В более ранних версиях:
usb 1-1: ch341-uart converter now attached to ttyUSB0
Номер порта ttyUSBx или ttyACMx может меняться, в зависимости от того, что у вас подключено к контроллеру.
Для работы с Debug console мы рекомендуем использовать Minicom. Команда для подключения будет выглядеть так:
minicom -D /dev/ttyUSB0 -b 115200 -8 -a off
Скорее всего, для доступа к порту вам понадобятся права суперпользователя - используйте sudo.
Более подробно про Minicom смотрите в нашем руководстве.
Linux — возможные проблемы
Сервис ModemManager может мешать работе с портом. Если у вас WirenBoard 6.4 или новее — правильно сконфигурируйте udev.
- Создайте файл исключений udev:
sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules
- Добавьте в него строчку:
ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1"
- После сохранения файла перезагрузите правило udev:
sudo udevadm control --reload-rules
Для более ранних контроллеров необходимо отредактировать файл:
/lib/systemd/system/ModemManager.service
Подробности здесь:
ModemManager does not honor blacklisted ttys
SystemD ModemManager: failed to set dtr/rts
MacOS
Если у вас Wiren Board 7 и Mac с USB Type-C на процессоре Intel - нужно отключить питание контроллера, он будет питаться от USB. При наличии питания порт операционной системой не определяется. На более старые Mac и Mac на процессорах Apple эта особенность не распространяется.
Начиная с версии MacOS 10.14 Mojave все должно определиться автоматически. Предыдущие версии, возможно, потребуют установки драйвера CH341SER_MAC.
При подключении создается устройство:
Wiren Board 7 | Wiren Board 6.4 и новее | Более ранние |
---|---|---|
/dev/tty.usbmodemWB71 | /dev/tty.usbmodem00001 | /dev/tty.usbserial-1410 |
Встроенная утилита cu позволит вам работать с Debug console:
sudo cu -s 115200 -l /dev/tty.usbserial-1410
Для выхода из cu введите символы
~!
MacOS — возможные проблемы
Порт может не определиться. Потребуется установка драйвера. Для этого (начиная с MacOS High Sierra 10.13) нужно дать на это разрешение в Settings → Security&Privacy → Allow apps downloaded from:
И вот хорошая статья - человек подключает Arduino к MacOS. Хоть устройство и другое, но там используется точно такой же чип. Возможно, там есть ответы на ваши вопросы.
Android
Начиная с Android версии 9 все работает без установки дополнительных драйверов. Подключение через OTG. Тестировалось с приложением USB Serial Console, если ссылка не работает - ищите в Google Play.
Работа с отладочным портом
Контроллер к компьютеру вы подключили, программу настроили, движемся дальше.
- Включаете питание контроллера. Наблюдаете сообщения, появляющиеся на экране при загрузке контроллера. Текст меняется быстро, отследить его невозможно. Но, если возникнет критическая ошибка при загрузке — загрузка остановится, и сообщение об ошибке будет у вас перед глазами.
- Если загрузка прошла нормально — вы увидите приглашение контроллера. Вводите логин, пароль — командная строка в вашем распоряжении. Можете настроить сеть, исправить конфигурационные файлы, посмотреть логи и т. д. ВАЖНО! При работе с Debug console на экран время от времени будут «выпадать» сообщения от работающих сервисов Linux. Особенно, если сервис работает с ошибкой. Вы можете продолжать ввод команды с клавиатуры — все будет отработано корректно. Для отключения вывода «лишних» сообщений на экран используйте команду
dmesg -n1
. Теперь будут выводится только те сообщения, которые требуют немедленного вмешательства. - Пролистывая экран назад вы можете просмотреть все сообщения, «выпавшие» при загрузке. Обращайте внимание на error, warning, filed. Не можете сами разобраться — записывайте сеанс в лог файл и обращайтесь в нашу техподдержку.
Технические спецификации
Физическая реализация в контроллерах
Версия контроллера | Тип разъема | Название разъема | Интерфейс | Чип USB/UART |
---|---|---|---|---|
7.x | USB-C | Debug Console | USB/UART | HT42B534 |
6.4-6.9 | Micro-USB | Debug Console | USB/UART | HT42B534 |
5.8-6.3 | Micro-USB | Debug Console | USB/UART | CH340 |
5.6.1 | 3-pin UART (Gnd, Rx, TX) | UART | UART (3,3B) | - |
4, 5.3 | 3-pin UART (Gnd, Rx, TX) | Debug UART | UART (3,3B) | - |
2.8, 3.5 | 3-pin UART (Gnd, Rx, TX) | UEXT1 (выводы 2,3,4) и 3-pin разъем без названия | UART (3,3B) | - |
Программно во всех случаях это последовательный порт.
Параметры подключения
Параметр | Значение | Описание |
---|---|---|
Serial Port |
|
Подробнее смотрите выше в этой статье |
Baud rate | 115200 | Скорость, бит/с |
Data bits | 8 | Количество битов данных |
Parity | None | Бит чётности |
Stop bits | 1 | Количество стоповых битов |
Hardware flow control | None | Аппаратный контроль потока |
Software flow control | None | Программный контроль потока |