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

Материал из Wiren Board
 
(не показано 37 промежуточных версий 3 участников)
Строка 1: Строка 1:
 
{{DISPLAYTITLE:Отладочный порт в контроллерах Wiren Board}}
<languages/>
<translate>
<!--T:109-->
{{DISPLAYTITLE:Отладочный порт}}
 
<!--T:100-->
== Описание ==
== Описание ==
У контроллеров Wiren Board есть отладочный порт, через который можно получить доступ к консоли контроллера. Через него можно взаимодействовать с загрузчиком, следить за загрузкой операционной системы.
У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console».
 
<gallery mode="packed" caption="" heights="150px" perrow=1>
Отладочный порт — это инструмент доступа к контроллеру, когда вы не можете подключиться к нему через [[Веб-интерфейс Wiren Board | веб-интерфейс]] или по [[SSH | SSH]]. Мы не рекомендуем его для постоянного использования.
 
Для подключения к порту используйте одну из программ, перечисленных в статье [[Serial Port | Работа с последовательным портом]].
 
== Контроллеры Wiren Board 5.8, 5.9, 6.x и 7.x == <!--T:104-->
 
<gallery mode="packed" caption="Расположение разъёма Debug Console на контроллерах Wiren Board" 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
Строка 21: Строка 8:
</gallery>
</gallery>


[[Файл:SerialUART_Win.png|250px|thumb|right|Номер порта в Windows]]
Подключившись к нему, как и в случае [[SSH | SSH]] подключения, вы превращаете свой компьютер в монитор и клавиатуру контроллера. И получаете доступ к его консоли (командной строке). А в отличие от SSH, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке.
[[Файл:USBA-MICROUSBB.png|250px|thumb|right|Кабель USB (A) - Micro-USB (B)]]
[[Файл:USBA-USBC.png|250px|thumb|right|Кабель USB (A) - USB-C]]


Разъём отладочного порта подписан на корпусе контроллера как '''Debug Console'''.
Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте [[Веб-интерфейс Wiren Board | веб-интерфейс]] или SSH.


<!--T:115-->
== Подключение ==
В зависимости от версии контроллера, для подключения используйте стандартный кабель от смартфонов:
{{YouTube
* '''Wiren Board 5.8, 5.9 и 6''' — USB (A) - Micro-USB (B).
|link=https://youtu.be/VA_XHrY1RVA?t=135
* '''Wiren Board 7''' — USB (A) - USB-C.
|text= Про командную строку, SSH и Debug Console}}


Разъём USB (A) подключается к компьютеру, а Micro-USB (B) или USB-C — к контроллеру.
Если у вас контроллер Wiren Board 5.6 и старее, обратитесь к [[WB5.6_Debug_Console| статье ]].


<!--T:116-->
Подключение выполняется стандартными кабелями, их легко купить. В комплекте с вашим смартфоном может быть такой.  
Кабели от зарядных устройств подходят, но бывают исключения. Лучше выбирать такие, на которых указано, что они предназначены для передачи данных. Если кабель выбран правильно, Windows сообщит звуком об обнаружении устройства.


=== Драйвера адаптеров и названия виртуальных COM-портов === <!--T:117-->
{{note|warn| Бывают кабели с такими же разъёмами, но предназначенные только для зарядки — они не подойдут. }}


<!--T:118-->
Для подключения  '''Wiren Board 7''' к компьютеру нужен кабель '''USB Тип A – USB Тип C'''.
Внутри контроллера установлен переходник USB-UART.


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


<!--T:120-->
Самый простой способ проверить, подходит ли кабель для подключения к контроллеру — подключить к компьютеру через этот кабель мобильный телефон. Если компьютер обнаружил новое устройство кабель можно использовать и для контролера.
*'''Windows''': может потребоваться установка драйвера (см. таблицу [[#os-compatible|Поддержка в операционных системах]]). В Диспетчере устройств в разделе '''Ports(COM&LPT)''' появится виртуальный COM-порт контроллера.
 
<!--T:121-->
*'''macOS''': начиная с High Sierra отладочная консоль контроллеров определяется из коробки. Предыдущие версии операционной системы, возможно, потребуют установки драйверов. При подключении создается устройство <code>/dev/tty.usbserial-1410</code> или <code>/dev/tty.usbmodem00001</code> (для контроллеров версии 6.4 и младше).
 
<!--T:122-->
*'''Android''': поздние версии Android при подключении через OTG поддерживают отладочную консоль контроллеров без дополнительных драйверов. Тестировалось с приложением [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console].
<div id="os-compatible"></div>
{| class="wikitable"
|+ Поддержка в операционных системах
! Версия <br /> контроллера !! Linux  !! Windows XP, 7, 8 !! Windows 10 !! MacOS X <br />(High Sierra)  !! Android 9 + <br /> USB Serial Console
|-
| 7.x<br>6.4 – 6.9 || Модуль ядра cdc_acm (все новые дистрибутивы — из коробки),
| Нужны inf файлы: [[Медиа:HT42B534_inf.zip]] || Из коробки || Из коробки
|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]
|-
|}
 
=== Особенности подключения к WB6.4 и новее из Linux === <!--T:123-->
На некоторых Linux-системах процесс ''ModemManager'' автоматически открывает устройство <code>/dev/ttyACM0</code>.
Чтобы ModemManager не мешал работе с портом, его надо отключить для этого устройства с помощью правил '''udev''':
# Создайте файл исключений '''udev''':
#:<syntaxhighlight lang="bash"> sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules </syntaxhighlight>
# Добавьте в него строчку:
#:<syntaxhighlight lang="bash"> ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1" </syntaxhighlight>
# После сохранения файла перезагрузите правило '''udev''':
#:<syntaxhighlight lang="bash"> sudo udevadm control --reload-rules </syntaxhighlight>
# В свежих операционных системах может понадобиться отредактировать файл <code>/lib/systemd/system/ModemManager.service</code>. Смотрите подробнее по ссылкам: [https://bugs.launchpad.net/ubuntu/+source/modemmanager/+bug/1827328 ModemManager does not honor blacklisted ttys] и [https://nick.zoic.org/art/failed-to-set-dtr-rts-systemd-modemmanager/ SystemD ModemManager: failed to set dtr/rts].
 
=== Параметры подключения ===


== Настройка порта, программное обеспечение ==
Необходимо определить, к какому порту компьютера подключен Wiren Board, и настроить этот порт в соответствии с настройками Debug console.
{|  border="1" class="wikitable"  
{|  border="1" class="wikitable"  
|+ Параметры подключения к Debug-консоли контроллера Wiren Board
|+ Параметры порта Debug console
! Параметр|| Значение || Описание
! Параметр|| Значение || Описание
|-
|-
| Serial Port||
* Windows — COMx
* Linux — /dev/ttyACM0 или до версии WB6.4 — /dev/ttyUSB0
||  Подробнее смотрите выше в этой статье
|-
|-
| Baud rate || 115200 ||  Скорость, бит/с
| Baud rate || 115200 ||  Скорость, бит/с
Строка 113: Строка 50:
|}
|}


<gallery mode="traditional" widths ="260px" heights="200px">
=== Windows ===
Image: Putty serial settings.png | Настройка параметров для подключения к Debug-консоли контроллера в программе [[PuTTY]]
Если у вас на компьютере '''Windows 10''', а контроллер '''Wiren Board 6.4 или новее''', то система сама, после физического подключения, назначит виртуальный COM порт и установит необходимый драйвер. Увидеть номер этого порта можно в Диспетчере устройств Windows:
Image: Putty serial open.png | Открытие сессии в программе [[PuTTY]]
[[Файл:Dispatcher.png|left]]
Image: Putty serial logged in.png | Приветственное сообщение контроллера при подключении к его Debug-консоли
<br clear="both" />
</gallery>
 
При использовании '''Windows XP, 7, 8''' скачайте и установите драйвер. Для установки драйвера вам потребуются навыки администрирования ОС Windows, ссылки на файлы:
* для [https://wirenboard.com/wiki/images/3/38/HT42B534_inf.zip Wiren Board 6.4 или новее];
* для [http://www.wch.cn/downloads/CH341SER_ZIP.html более ранних версий].
 
Далее подключайте контроллер, и в Диспетчере устройств Windows вы должны увидеть виртуальный COM порт, как на иллюстрации выше.
 
В качестве программы для общения с контроллером мы рекомендуем использовать [https://mobaxterm.mobatek.net/ MobaXterm] от компании Mobatek. ЕЕ возможности очень обширны. В платной версии их больше, но для наших целей достаточно и бесплатной версии.
 
Нам нужно создать новую сессию '''Sessions''' → '''New session''' → '''Serial''':
[[Файл:Sessions.png|left]]
<br clear="both" />
 
и настроить ее:
[[Файл:Basic.png|left]]
<br clear="both" />
 
Во вкладке '''Terminal settings''' вы можете настроить шрифт, цвета и, при необходимости, указать файл для записи всего, что будет выводится на экран во время сеанса:
[[Файл:SessionLog.png|left]]
<br clear="both" />
 
А во вкладке '''Bookmark settings''' укажите внятное название сессии:
[[Файл:SessionName.png|left]]
<br clear="both" />
 
=== Linux ===
Порт должен назначиться автоматически. В выводе команды dmesg контроллеров '''Wiren Board 6.4 или новее''' должна появиться строка:
<syntaxhighlight lang="console">
cdc_acm:3-6:1.0: ttyACM0: USB ACM device
</syntaxhighlight>
 
В '''более ранних''' версиях:
<syntaxhighlight lang="console">
usb 1-1: ch341-uart converter now attached to ttyUSB0
</syntaxhighlight>
 
Номер порта ttyUSBx или ttyACMx может меняться, в зависимости от того, что у вас подключено к контроллеру.
 
Для работы с Debug console мы рекомендуем использовать Minicom. Команда для подключения будет выглядеть так:
<syntaxhighlight lang="console">
minicom -D /dev/ttyACM0 -b 115200 -8 -a off
</syntaxhighlight>
Скорее всего, для доступа к порту вам понадобятся права суперпользователя - используйте sudo.
 
Более подробно про Minicom смотрите в нашем [[Minicom | руководстве]].
 
==== Linux — возможные проблемы ====
Сервис '''ModemManager''' может мешать работе с портом. Если у вас WirenBoard 6.4 или новее — правильно сконфигурируйте udev.
* Создайте файл исключений udev:
<syntaxhighlight lang="bash">
sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules
</syntaxhighlight>
* Добавьте в него строчку:
<syntaxhighlight lang="bash">
ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1"
</syntaxhighlight>
* После сохранения файла перезагрузите правило udev:
<syntaxhighlight lang="bash">
sudo udevadm control --reload-rules
</syntaxhighlight>
 
В свежих операционных системах Linux может потребоваться отредактировать файл:
<syntaxhighlight lang="bash">
/lib/systemd/system/ModemManager.service
</syntaxhighlight>
 
Подробности здесь:
 
[https://bugs.launchpad.net/ubuntu/+source/modemmanager/+bug/1827328 ModemManager does not honor blacklisted ttys]
 
[https://nick.zoic.org/art/failed-to-set-dtr-rts-systemd-modemmanager SystemD ModemManager: failed to set dtr/rts]
 
=== MacOS ===
{{note|warn| Если у вас Wiren Board 7 и Mac с USB Тип C на процессоре Intel - нужно отключить питание контроллера, он будет питаться от USB. При наличии питания порт операционной системой не определяется. На более старые Mac и Mac на процессорах Apple эта особенность не распространяется. }}
 
Начиная с версии MacOS '''10.14 Mojave'''  все должно определиться автоматически. Предыдущие версии, возможно, потребуют установки драйвера [http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC].
 
При подключении создается устройство:
{|  border="1" class="wikitable"
! Wiren Board 7 || Wiren Board 6.4 и новее || Более ранние
|-
| /dev/tty.usbmodemWB71 || /dev/tty.usbmodem00001 ||  /dev/tty.usbserial-1410
|-
|}
 
Встроенная утилита cu позволит вам работать с Debug console:
<syntaxhighlight lang="bash">
sudo cu -s 115200 -l /dev/tty.usbserial-1410
</syntaxhighlight>
 
Для выхода из cu введите символы
<syntaxhighlight lang="bash">
~!
</syntaxhighlight>
 
==== MacOS — возможные проблемы ====
Порт может не определиться. Потребуется установка драйвера. Для этого (начиная с MacOS '''High Sierra 10.13''')  нужно дать на это разрешение в <code>Settings → Security&Privacy → Allow apps downloaded from:</code>
[[Файл:Allow.png|left]]
<br clear="both" />
 
И вот хорошая [https://kig.re/2014/12/31/how-to-use-arduino-nano-mini-pro-with-CH340G-on-mac-osx-yosemite.html статья] - человек подключает Arduino к MacOS. Хоть устройство и другое, но там используется точно такой же чип. Возможно, там есть ответы на ваши вопросы.
 
=== Android ===
[[Файл:OTG.png|150px|thumb|right| OTG-кабель]]
Начиная с 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" />
 
== Работа с отладочным портом ==
[[Файл:DebugConsoleWindowLogin.png|500px|thumb|right| Отладочная консоль]]
Итак:
* Контроллер к компьютеру подключен;
* Программа запущена;
* Настройки порта программы соответствуют настройкам порта Debug console.
Теперь можно начинать работу.
 
''' Если контроллер исправен '''
 
Если контроллер работает нормально — вы будете видеть сообщения, выводимые операционной системой контроллера на консоль. Нажав клавишу ENTER, вы увидите приглашение операционной системы, типа такого:
<syntaxhighlight lang="console">
Debian GNU/Linux 11 wirenboard-AQ4RCD2E ttyS0
 
wirenboard-AQ4RCD2E login:
</syntaxhighlight>
 
Вводите логин, пароль ({{Wbincludes:Controller SSH Default Login Password|short=true}}) — командная строка в вашем распоряжении. Можете настроить сеть, исправить конфигурационные файлы, посмотреть логи и т. д.
 
ВАЖНО! При работе с Debug console на экран время от времени будут «выпадать» сообщения от работающих сервисов Linux. Особенно, если сервис работает с ошибкой. Вы можете продолжать ввод команды с клавиатуры — все будет отработано корректно. Для отключения вывода «лишних» сообщений на экран используйте команду <code>dmesg -n1</code>. Теперь будут выводится только те сообщения, которые требуют немедленного вмешательства.
 
Логи можно смотреть через [[Journalctl]].
 
''' Если контроллер неисправен '''
 
Если контроллер нормально не функционирует - отключите питание контроллера выключателем.
{{note|info| Для Wiren Board 7 также отключите кабель USB (контроллер получает питание от USB, в обход выключателя). }}
Включите питание контроллера. Начнется загрузка контроллера.
{{note|info| Для Wiren Board 7 сначала присоедините кабель (сразу начнется загрузка контроллера), затем включите выключатель (для питания модулей расширения).}}
Наблюдайте сообщения, появляющиеся на экране при загрузке контроллера. Текст меняется быстро, отследить его невозможно. Но, если возникнет критическая ошибка — загрузка остановится, и сообщение об ошибке будет у вас перед глазами.
 
Пролистывая экран назад вы можете просмотреть все сообщения, выведенные при загрузке. Обращайте внимание на  слова error, warning, filed. Не можете сами разобраться — записывайте сеанс в лог файл и обращайтесь в нашу техподдержку.


== Физическая реализация в контроллерах == <!--T:111-->
== Физическая реализация в контроллерах ==
{| class="wikitable"
{| border="1" class="wikitable"  
! Версия контроллера !! Тип разъема !! Название разъема !! Интерфейс !! Чип USB/UART
! Версия контроллера || Тип разъема || Название разъема || Интерфейс || Чип USB/UART
|-
|-
| 7.x
| 7.x || USB-C || Debug Console || USB/UART || HT42B534
| USB-C || Debug Console || USB/UART || HT42B534  
|-
|-
| 6.4–6.9  
| 6.4-6.9 || Micro-USB || Debug Console || USB/UART || HT42B534
| rowspan="2" | Micro-USB  
| rowspan="2" | Debug Console || USB/UART || HT42B534
|-
|-
| 6.0 - 6.3, 5.8 - 5.9  ||  USB/UART || CH340
| 5.8-6.3 || Micro-USB ||  Debug Console || USB/UART || CH340
|-
|-
| 5.6.1  
| 5.6.1 || 3-pin UART (Gnd, Rx, TX) || UART || UART (3,3B) || -
| rowspan="2" | 3-pin UART (Gnd, Rx, Tx) || UART  
|rowspan="3" | UART (3,3 В)  
|rowspan="3" |
|-
|-
| 5.3, ||  Debug UART  
| 4, 5.3 || 3-pin UART (Gnd, Rx, TX) ||  Debug UART || UART (3,3B) || -
|-
|-
| 3.5, 2.8 || 3-pin UART (Gnd, Tx, Rx) || UEXT1 (выводы 2,3,4) и 3-pin разъем без названия  
| 2.8, 3.5 || 3-pin UART (Gnd, Rx, TX) || UEXT1 (выводы 2,3,4) и 3-pin разъем без названия|| UART (3,3B) || -
|-
|-
|}
|}
Программно во всех случаях это последовательный порт.
Программно во всех случаях это последовательный порт.
== Контроллеры Wiren Board ≤5.6 ==
[[WB5.6_Debug_Console| Подключение к отладочному порту в Wiren Board 5.6 и старее]]
</translate>

Текущая версия на 10:58, 12 января 2024

Описание

У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console».

Подключившись к нему, как и в случае SSH подключения, вы превращаете свой компьютер в монитор и клавиатуру контроллера. И получаете доступ к его консоли (командной строке). А в отличие от SSH, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке.

Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте веб-интерфейс или SSH.

Подключение

Про командную строку, SSH и Debug Console

Если у вас контроллер Wiren Board 5.6 и старее, обратитесь к статье .

Подключение выполняется стандартными кабелями, их легко купить. В комплекте с вашим смартфоном может быть такой.

Бывают кабели с такими же разъёмами, но предназначенные только для зарядки — они не подойдут.

Для подключения Wiren Board 7 к компьютеру нужен кабель USB Тип A – USB Тип C.

Для подключения более ранних контроллеров - USB тип A – Micro-USB Тип B.

Самый простой способ проверить, подходит ли кабель для подключения к контроллеру — подключить к компьютеру через этот кабель мобильный телефон. Если компьютер обнаружил новое устройство — кабель можно использовать и для контролера.

Настройка порта, программное обеспечение

Необходимо определить, к какому порту компьютера подключен Wiren Board, и настроить этот порт в соответствии с настройками Debug console.

Параметры порта Debug console
Параметр Значение Описание
Baud rate 115200 Скорость, бит/с
Data bits 8 Количество битов данных
Parity None Бит чётности
Stop bits 1 Количество стоповых битов
Hardware flow control None Аппаратный контроль потока
Software flow control None Программный контроль потока

Windows

Если у вас на компьютере Windows 10, а контроллер Wiren Board 6.4 или новее, то система сама, после физического подключения, назначит виртуальный COM порт и установит необходимый драйвер. Увидеть номер этого порта можно в Диспетчере устройств Windows:

Dispatcher.png


При использовании Windows XP, 7, 8 скачайте и установите драйвер. Для установки драйвера вам потребуются навыки администрирования ОС Windows, ссылки на файлы:

Далее подключайте контроллер, и в Диспетчере устройств Windows вы должны увидеть виртуальный COM порт, как на иллюстрации выше.

В качестве программы для общения с контроллером мы рекомендуем использовать MobaXterm от компании Mobatek. ЕЕ возможности очень обширны. В платной версии их больше, но для наших целей достаточно и бесплатной версии.

Нам нужно создать новую сессию SessionsNew sessionSerial:

Sessions.png


и настроить ее:

Basic.png


Во вкладке Terminal settings вы можете настроить шрифт, цвета и, при необходимости, указать файл для записи всего, что будет выводится на экран во время сеанса:

SessionLog.png


А во вкладке Bookmark settings укажите внятное название сессии:

SessionName.png


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/ttyACM0 -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

В свежих операционных системах Linux может потребоваться отредактировать файл:

/lib/systemd/system/ModemManager.service

Подробности здесь:

ModemManager does not honor blacklisted ttys

SystemD ModemManager: failed to set dtr/rts

MacOS

Если у вас Wiren Board 7 и Mac с USB Тип 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:

Allow.png


И вот хорошая статья - человек подключает Arduino к MacOS. Хоть устройство и другое, но там используется точно такой же чип. Возможно, там есть ответы на ваши вопросы.

Android

OTG-кабель

Начиная с Android версии 9 все работает без установки дополнительных драйверов. Подключение через OTG. Тестировалось с приложением USB Serial Console, если ссылка не работает - ищите в Google Play.

Работа с отладочным портом

Отладочная консоль

Итак:

  • Контроллер к компьютеру подключен;
  • Программа запущена;
  • Настройки порта программы соответствуют настройкам порта Debug console.

Теперь можно начинать работу.

Если контроллер исправен

Если контроллер работает нормально — вы будете видеть сообщения, выводимые операционной системой контроллера на консоль. Нажав клавишу ENTER, вы увидите приглашение операционной системы, типа такого:

Debian GNU/Linux 11 wirenboard-AQ4RCD2E ttyS0

wirenboard-AQ4RCD2E login:

Вводите логин, пароль (по умолчанию root/wirenboard) — командная строка в вашем распоряжении. Можете настроить сеть, исправить конфигурационные файлы, посмотреть логи и т. д.

ВАЖНО! При работе с Debug console на экран время от времени будут «выпадать» сообщения от работающих сервисов Linux. Особенно, если сервис работает с ошибкой. Вы можете продолжать ввод команды с клавиатуры — все будет отработано корректно. Для отключения вывода «лишних» сообщений на экран используйте команду dmesg -n1. Теперь будут выводится только те сообщения, которые требуют немедленного вмешательства.

Логи можно смотреть через Journalctl.

Если контроллер неисправен

Если контроллер нормально не функционирует - отключите питание контроллера выключателем. Для Wiren Board 7 также отключите кабель USB (контроллер получает питание от USB, в обход выключателя). Включите питание контроллера. Начнется загрузка контроллера. Для Wiren Board 7 сначала присоедините кабель (сразу начнется загрузка контроллера), затем включите выключатель (для питания модулей расширения). Наблюдайте сообщения, появляющиеся на экране при загрузке контроллера. Текст меняется быстро, отследить его невозможно. Но, если возникнет критическая ошибка — загрузка остановится, и сообщение об ошибке будет у вас перед глазами.

Пролистывая экран назад вы можете просмотреть все сообщения, выведенные при загрузке. Обращайте внимание на слова 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) -

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