wb_editors
71
правка
Dust (обсуждение | вклад) (Отмена правки 70795, сделанной Dust (обсуждение)) Метка: отмена |
Dust (обсуждение | вклад) |
||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE:Отладочный порт}} | {{DISPLAYTITLE:Отладочный порт}} | ||
У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console». | |||
У контроллеров Wiren Board есть отладочный порт | |||
<gallery mode="packed" caption="" heights="150px"> | |||
<gallery mode="packed" caption=" | |||
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, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке. | |||
Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте [[Веб-интерфейс Wiren Board | веб-интерфейс]] или SSH. | |||
Если у вас Wiren Board 5.6 или еще более ранний — обратитесь к [[WB5.6_Debug_Console| статье]]. | |||
== Подключение == | |||
[[Файл:USBA- | Для подключения '''Wiren Board 7''' к компьютеру нужен кабель USB (A) – USB-c. | ||
[[Файл:USBA- | [[Файл:USBA-USBC.png|250px|thumb|left|Кабель USB (A) - USB-C]] | ||
<br clear="both" /> | |||
Для подключения более ранних контроллеров - USB (A) – Micro-USB (B). | |||
[[Файл:USBA-MICROUSBB.png|250px|thumb|left|Кабель USB (A) - Micro-USB (B)]] | |||
<br clear="both" /> | |||
Это стандартные кабели, их легко купить. В комплекте с вашим смартфоном может быть такой. Бывают кабели с такими же разъёмами, но предназначенные только для зарядки - с ними могут быть проблемы. | |||
Далее надо настроить операционную систему и программу. | |||
== Настройка == | |||
=== Windows === | |||
Если у вас на компьютере '''Windows 10''', а контроллер '''Wiren Board 6.4 или новее''', то система сама, после физического подключения, назначит виртуальный COM порт и установит необходимый драйвер. Увидеть это можно в Диспетчере устройств Windows: | |||
??? | |||
При использовании '''Windows XP, 7, 8''' скачайте и установите драйвер: | |||
* для [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): | |||
??? | |||
и настроить ее: | |||
??? | |||
Во вкладке “Terminal settings” вы можете настроить шрифт, цвета и, при необходимости, указать файл для записи всего, что будет выводится на экран во время сеанса: | |||
??? | |||
А во вкладке “Bookmark settings” укажите внятное название сессии: | |||
??? | |||
=== 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 | usb 1-1: ch341-uart converter now attached to ttyUSB0 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
*:<syntaxhighlight lang=" | Номер порта ttyUSBx или ttyACMx может меняться, в зависимости от того, что у вас подключено к контроллеру. | ||
Для работы с Debug console мы рекомендуем использовать Minicom. Команда для подключения будет выглядеть так: | |||
<syntaxhighlight lang="console"> | |||
minicom -D /dev/ttyUSB0 -b 115200 -8 -a off | |||
</syntaxhighlight> | |||
Скорее всего, для доступа к порту вам понадобятся права суперпользователя - используйте sudo. | |||
Более подробно про Minicom смотрите в нашем [[Minicom | руководстве]]. | |||
=== Linux - возможные проблемы === | |||
Сервис '''ModemManager''' может мешать работе с портом. Если у вас WirenBoard 6.4 или новее — правильно сконфигурируйте udev. | |||
* Создайте файл исключений udev: | |||
<syntaxhighlight lang="console"> | |||
sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules | |||
</syntaxhighlight> | |||
* Добавьте в него строчку: | |||
<syntaxhighlight lang="console"> | |||
ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1" | |||
</syntaxhighlight> | |||
* После сохранения файла перезагрузите правило udev: | |||
<syntaxhighlight lang="console"> | |||
sudo udevadm control --reload-rules | |||
</syntaxhighlight> | |||
Для '''более старших''' контроллеров необходимо отредактировать файл: | |||
<syntaxhighlight lang="console"> | |||
/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 === | |||
''ВАЖНО! Если у вас 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]. | |||
При подключении создается устройство: | |||
{| 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="console"> | |||
sudo cu -s 115200 -l /dev/tty.usbserial-1410 | |||
</syntaxhighlight> | |||
Для выхода из cu введите символы | |||
<syntaxhighlight lang="console"> | |||
~! | |||
</syntaxhighlight> | |||
=== MacOS - возможные проблемы === | |||
Порт может не определиться. Потребуется установка драйвера. Для этого (начиная с MacOS '''High Sierra 10.13''') нужно дать на это разрешение в | |||
<syntaxhighlight lang="console"> | |||
Settings → Security&Privacy → Allow apps downloaded from: | |||
</syntaxhighlight> | |||
??? | |||
И вот хорошая [https://kig.re/2014/12/31/how-to-use-arduino-nano-mini-pro-with-CH340G-on-mac-osx-yosemite.html статья] - человек подключает Arduino к MacOS. Хоть устройство и другое, но там используется точно такой же чип. Возможно, там есть ответы на ваши вопросы. | |||
=== Android === | |||
Начиная с Android версии 9 все работает без установки дополнительных драйверов. Подключение через OTG: | |||
??? | |||
Тестировалось с приложением [https://play.google.com/store/apps/details?id=jp.sugnakys.usbserialconsole&hl=en_US USB Serial Console], если ссылка не работает - ищите в Google Play. | |||
== Работа с отладочным портом === | |||
Контроллер к компьютеру вы подключили, программу настроили, движемся дальше. | |||
# Включаете питание контроллера. Наблюдаете сообщения, появляющиеся на экране при загрузке контроллера. Текст меняется быстро, отследить его невозможно. Но, если возникнет критическая ошибка при загрузке — загрузка остановится, и сообщение об ошибке будет у вас перед глазами. | |||
# Если загрузка прошла нормально — вы увидите приглашение контроллера. Вводите логин, пароль — командная строка в вашем распоряжении: | |||
??? | |||
Можете настроить сеть, исправить конфигурационные файлы, посмотреть логи и т. д. | |||
ВАЖНО! При работе с Debug console на экран время от времени будут «выпадать» сообщения от работающих сервисов Linux. Особенно, если сервис работает с ошибкой. Вы можете продолжать ввод команды с клавиатуры — все будет отработано корректно. Для отключения вывода “лишних” сообщений на экран используйте команду: | |||
<syntaxhighlight lang="console"> | |||
dmesg -n1 | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Теперь будут выводится только те сообщения, которые требуют немедленного вмешательства. | |||
3. Пролистывая экран назад вы можете просмотреть все сообщения, «выпавшие» при загрузке. Обращайте внимание на error, warning, filed. Не можете сами разобраться — записывайте сеанс в лог файл и обращайтесь в нашу техподдержку. | |||
== Технические спецификации == | |||
Физическая реализация в контроллерах | |||
{| border="1" class="wikitable" | |||
! Версия контроллера || Тип разъема || Название разъема || Интерфейс || Чип 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) || - | |||
|- | |- | ||
|} | |} | ||
Программно во всех случаях это последовательный порт. | |||
=== Параметры подключения === | === Параметры подключения === | ||
Строка 112: | Строка 205: | ||
|- | |- | ||
|} | |} | ||