16 885
правок
Dust (обсуждение | вклад) |
|||
(не показано 26 промежуточных версий 3 участников) | |||
Строка 1: | Строка 1: | ||
{{DISPLAYTITLE:Отладочный порт}} | {{DISPLAYTITLE:Отладочный порт в контроллерах Wiren Board}} | ||
= | == Описание == | ||
У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console». | У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console». | ||
<gallery mode="packed" caption="" heights="150px"> | <gallery mode="packed" caption="" heights="150px" perrow=1> | ||
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, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке. | |||
Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте [[Веб-интерфейс Wiren Board | веб-интерфейс]] или SSH. | Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте [[Веб-интерфейс Wiren Board | веб-интерфейс]] или SSH. | ||
Если у вас Wiren Board 5.6 | == Подключение == | ||
{{YouTube | |||
|link=https://youtu.be/VA_XHrY1RVA?t=135 | |||
|text= Про командную строку, SSH и Debug Console}} | |||
Если у вас контроллер Wiren Board 5.6 и старее, обратитесь к [[WB5.6_Debug_Console| статье ]]. | |||
Подключение выполняется стандартными кабелями, их легко купить. В комплекте с вашим смартфоном может быть такой. | |||
{{note|warn| Бывают кабели с такими же разъёмами, но предназначенные только для зарядки — они не подойдут. }} | |||
Для подключения '''Wiren Board 7''' к компьютеру нужен кабель '''USB Тип A – USB Тип C'''. | |||
Для подключения более ранних контроллеров - '''USB тип A – Micro-USB Тип B'''. | |||
Самый простой способ проверить, подходит ли кабель для подключения к контроллеру — подключить к компьютеру через этот кабель мобильный телефон. Если компьютер обнаружил новое устройство — кабель можно использовать и для контролера. | |||
= Настройка = | == Настройка порта, программное обеспечение == | ||
Необходимо определить, к какому порту компьютера подключен Wiren Board, и настроить этот порт в соответствии с настройками Debug console. | |||
{| border="1" class="wikitable" | |||
|+ Параметры порта Debug console | |||
! Параметр|| Значение || Описание | |||
|- | |||
|- | |||
| Baud rate || 115200 || Скорость, бит/с | |||
|- | |||
| Data bits || 8 || Количество битов данных | |||
|- | |||
| Parity || None || Бит чётности | |||
|- | |||
| Stop bits || 1 || Количество стоповых битов | |||
|- | |||
| Hardware flow control || None || Аппаратный контроль потока | |||
|- | |||
| Software flow control || None || Программный контроль потока | |||
|- | |||
|} | |||
== 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''' скачайте и установите драйвер. Для установки драйвера вам потребуются навыки администрирования ОС Windows, ссылки на файлы: | ||
* для [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.png|left]] | [[Файл:Sessions.png|left]] | ||
<br clear="both" /> | <br clear="both" /> | ||
Строка 46: | Строка 71: | ||
<br clear="both" /> | <br clear="both" /> | ||
Во вкладке | Во вкладке '''Terminal settings''' вы можете настроить шрифт, цвета и, при необходимости, указать файл для записи всего, что будет выводится на экран во время сеанса: | ||
[[Файл:SessionLog.png|left]] | [[Файл:SessionLog.png|left]] | ||
<br clear="both" /> | <br clear="both" /> | ||
А во вкладке | А во вкладке '''Bookmark settings''' укажите внятное название сессии: | ||
[[Файл:SessionName.png|left]] | [[Файл:SessionName.png|left]] | ||
<br clear="both" /> | <br clear="both" /> | ||
== Linux == | === Linux === | ||
Порт должен назначиться автоматически. В выводе команды dmesg контроллеров '''Wiren Board 6.4 или новее''' должна появиться строка: | Порт должен назначиться автоматически. В выводе команды dmesg контроллеров '''Wiren Board 6.4 или новее''' должна появиться строка: | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
Строка 60: | Строка 85: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
В '''более | В '''более ранних''' версиях: | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
usb 1-1: ch341-uart converter now attached to ttyUSB0 | usb 1-1: ch341-uart converter now attached to ttyUSB0 | ||
Строка 69: | Строка 94: | ||
Для работы с Debug console мы рекомендуем использовать Minicom. Команда для подключения будет выглядеть так: | Для работы с Debug console мы рекомендуем использовать Minicom. Команда для подключения будет выглядеть так: | ||
<syntaxhighlight lang="console"> | <syntaxhighlight lang="console"> | ||
minicom -D /dev/ | minicom -D /dev/ttyACM0 -b 115200 -8 -a off | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Скорее всего, для доступа к порту вам понадобятся права суперпользователя - используйте sudo. | Скорее всего, для доступа к порту вам понадобятся права суперпользователя - используйте sudo. | ||
Строка 75: | Строка 100: | ||
Более подробно про Minicom смотрите в нашем [[Minicom | руководстве]]. | Более подробно про Minicom смотрите в нашем [[Minicom | руководстве]]. | ||
=== Linux | ==== Linux — возможные проблемы ==== | ||
Сервис '''ModemManager''' может мешать работе с портом. Если у вас WirenBoard 6.4 или новее — правильно сконфигурируйте udev. | Сервис '''ModemManager''' может мешать работе с портом. Если у вас WirenBoard 6.4 или новее — правильно сконфигурируйте udev. | ||
* Создайте файл исключений udev: | * Создайте файл исключений udev: | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="bash"> | ||
sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules | sudo nano /etc/udev/rules.d/99-wb-debug-usb.rules | ||
</syntaxhighlight> | </syntaxhighlight> | ||
* Добавьте в него строчку: | * Добавьте в него строчку: | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="bash"> | ||
ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1" | ATTRS{idVendor}=="04d9" ATTRS{idProduct}=="b534", ENV{ID_MM_DEVICE_IGNORE}="1" | ||
</syntaxhighlight> | </syntaxhighlight> | ||
* После сохранения файла перезагрузите правило udev: | * После сохранения файла перезагрузите правило udev: | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="bash"> | ||
sudo udevadm control --reload-rules | sudo udevadm control --reload-rules | ||
</syntaxhighlight> | </syntaxhighlight> | ||
В свежих операционных системах Linux может потребоваться отредактировать файл: | |||
<syntaxhighlight lang=" | <syntaxhighlight lang="bash"> | ||
/lib/systemd/system/ModemManager.service | /lib/systemd/system/ModemManager.service | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 101: | Строка 126: | ||
[https://nick.zoic.org/art/failed-to-set-dtr-rts-systemd-modemmanager SystemD ModemManager: failed to set dtr/rts] | [https://nick.zoic.org/art/failed-to-set-dtr-rts-systemd-modemmanager SystemD ModemManager: failed to set dtr/rts] | ||
== MacOS == | === 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]. | Начиная с версии MacOS '''10.14 Mojave''' все должно определиться автоматически. Предыдущие версии, возможно, потребуют установки драйвера [http://www.wch.cn/download/ch341ser_mac_zip.html CH341SER_MAC]. | ||
Строка 115: | Строка 140: | ||
Встроенная утилита cu позволит вам работать с Debug console: | Встроенная утилита cu позволит вам работать с Debug console: | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="bash"> | ||
sudo cu -s 115200 -l /dev/tty.usbserial-1410 | sudo cu -s 115200 -l /dev/tty.usbserial-1410 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Для выхода из cu введите символы | Для выхода из cu введите символы | ||
<syntaxhighlight lang=" | <syntaxhighlight lang="bash"> | ||
~! | ~! | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== MacOS | ==== MacOS — возможные проблемы ==== | ||
Порт может не определиться. Потребуется установка драйвера. Для этого (начиная с MacOS '''High Sierra 10.13''') нужно дать на это разрешение в <code>Settings → Security&Privacy → Allow apps downloaded from:</code> | Порт может не определиться. Потребуется установка драйвера. Для этого (начиная с MacOS '''High Sierra 10.13''') нужно дать на это разрешение в <code>Settings → Security&Privacy → Allow apps downloaded from:</code> | ||
[[Файл:Allow.png|left]] | [[Файл:Allow.png|left]] | ||
Строка 131: | Строка 156: | ||
И вот хорошая [https://kig.re/2014/12/31/how-to-use-arduino-nano-mini-pro-with-CH340G-on-mac-osx-yosemite.html статья] - человек подключает Arduino к MacOS. Хоть устройство и другое, но там используется точно такой же чип. Возможно, там есть ответы на ваши вопросы. | И вот хорошая [https://kig.re/2014/12/31/how-to-use-arduino-nano-mini-pro-with-CH340G-on-mac-osx-yosemite.html статья] - человек подключает Arduino к MacOS. Хоть устройство и другое, но там используется точно такой же чип. Возможно, там есть ответы на ваши вопросы. | ||
== Android == | === Android === | ||
[[Файл:OTG.png| | [[Файл: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. | Начиная с 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" /> | ||
= | == Работа с отладочным портом == | ||
[[Файл: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. Не можете сами разобраться — записывайте сеанс в лог файл и обращайтесь в нашу техподдержку. | |||
== Физическая реализация в контроллерах == | == Физическая реализация в контроллерах == | ||
{| border="1" class="wikitable" | {| border="1" class="wikitable" | ||
Строка 161: | Строка 212: | ||
|} | |} | ||
Программно во всех случаях это последовательный порт. | Программно во всех случаях это последовательный порт. | ||