|
|
(не показано 298 промежуточных версий 11 участников) |
Строка 1: |
Строка 1: |
| {{DISPLAYTITLE:Отладочный порт в контроллерах Wiren Board}}
| |
| == Описание ==
| |
| У контроллеров Wiren Board есть отладочный порт. Он обозначен как «Debug console».
| |
| <gallery mode="packed" caption="" heights="150px" perrow=1>
| |
| Image: WirenBoard7DebugConsole.png | Wiren Board 7.x
| |
| Image: WirenBoard6DebugConsole.png | Wiren Board 6.x
| |
| Image: Debugusb58.png | Wiren Board 5.8 и 5.9
| |
| </gallery>
| |
|
| |
|
| Подключившись к нему, как и в случае [[SSH | SSH]] подключения, вы превращаете свой компьютер в монитор и клавиатуру контроллера. И получаете доступ к его консоли (командной строке). А в отличие от SSH, вы сможете увидеть информацию, выводимую контроллером на экран при его начальной загрузке.
| |
|
| |
|
| Нужен этот порт для аварийных ситуаций, когда подключения по сети недоступны. Например, если вы неверно сконфигурировали сеть, и контроллер не может к ней подключиться. Или, если возникла какая-то проблема, мешающая контроллеру нормально загрузиться. Для обычной работы использовать это подключение мы не рекомендуем, используйте [[Веб-интерфейс Wiren Board | веб-интерфейс]] или SSH.
| | <languages/> |
| | <translate> |
| | <!--T:1--> |
| | __NOTOC__ |
| | '''Внимание!''' |
| | [[Файл:Duart.jpg|thumb|right|USB-UART]] |
|
| |
|
| == Подключение ==
| | <!--T:2--> |
| {{YouTube
| | # Подключайте Debug UART только через переходники USB-UART или RS-232-UART с напряжением 3.3В. |
| |link=https://youtu.be/VA_XHrY1RVA?t=135
| | # UART не является синонимом RS-232. Подключение Debug UART к порту RS-232 (или переходнику USB-RS-232) напрямую гарантировано убьёт устройство. |
| |text= Про командную строку, SSH и Debug Console}}
| |
|
| |
|
| Если у вас контроллер Wiren Board 5.6 и старее, обратитесь к [[WB5.6_Debug_Console| статье ]].
| | <!--T:3--> |
| | '''Debug UART''', он же отладочный UART - порт в Wiren Board, подключившись к которому можно получить прямой доступ к консоли Wiren Board. На него также выводится консоль Linux при загрузке. Доступ к консоли также можно получить через [[SSH]]. |
|
| |
|
| Подключение выполняется стандартными кабелями, их легко купить. В комплекте с вашим смартфоном может быть такой.
| | == Как подключиться по Wiren Board по отладочному порту == <!--T:4--> |
|
| |
|
| {{note|warn| Бывают кабели с такими же разъёмами, но предназначенные только для зарядки — они не подойдут. }}
| | #Воткните адаптер USB-UART в компьютер, соедините контакты адаптера с контактами (штырьками) отладочного порта на контроллере по схеме GND к GND, TX к RX, RX к TX. На некоторых переходниках перепутана маркировка - попробуйте соединить TX с TX и RX с RX. |
| | #Запустите программу для работы с последовательным портом, настройки соединения '''115200 8N1''' (115200 кбит/с, 8 бит, нет бита чётности, один стоп-бит). Логин и пароль по умолчанию - ''root'' - ''wirenboard''. |
|
| |
|
| Для подключения '''Wiren Board 7''' к компьютеру нужен кабель '''USB Тип A – USB Тип C'''.
| | == Если вы работает с последовательным портом впервые == |
| | === Установка программы для работы с последовательным портом === <!--T:7--> |
|
| |
|
| Для подключения более ранних контроллеров - '''USB тип A – Micro-USB Тип B'''. | | <!--T:8--> |
| | Для работы с последовательным портом установите на вашем компьютере подходящую утилиту - например, PuTTY: |
| | * версия для Windows - [http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe скачать с официального сайта] |
| | * версия для Linux Debian или Ubuntu - выполните команду ''apt-get install putty'' |
| | Подойдут также [http://elinux.org/RPi_Serial_Connection другие программы]. |
|
| |
|
| Самый простой способ проверить, подходит ли кабель для подключения к контроллеру — подключить к компьютеру через этот кабель мобильный телефон. Если компьютер обнаружил новое устройство — кабель можно использовать и для контролера.
| | === Подключение === <!--T:9--> |
|
| |
|
| == Настройка порта, программное обеспечение ==
| | <!--T:10--> |
| Необходимо определить, к какому порту компьютера подключен Wiren Board, и настроить этот порт в соответствии с настройками Debug console.
| | #Запустите приложение от имени администратора: |
| {| border="1" class="wikitable"
| | #* в Windows - щёлкните по значку PuTTY правой кнопкой и выберите ''Run This Program As An Administrator'' |
| |+ Параметры порта Debug console
| | #* в Linux - <code>gksu putty</code> |
| ! Параметр|| Значение || Описание
| | #В меню слева выберите последний пункт - ''Serial''. В появившиеся поля справа введите настройки порта: |
| |-
| | #*название последовательного порта |
| |-
| | #**для Windows - это ''COM4'' ('''цифра может меняться''', точную можно узнать через ''Диспетчер устройств'', найдя в нём переходник USB-UART) |
| | Baud rate || 115200 || Скорость, бит/с
| | #**для Linux - это ''/dev/ttyUSB0'' ('''цифра может меняться''', смотрите список файлов в папке ''/dev/'') |
| |-
| | #*скорость - ''115200'' |
| | Data bits || 8 || Количество битов данных
| | #*количество битов в посылке - ''8'' |
| |-
| | #*количество стоп-битов - ''1'' |
| | Parity || None || Бит чётности
| | #*чётность - ''нет'' |
| |-
| | #*контроль потока - ''нет'' |
| | Stop bits || 1 || Количество стоповых битов
| | #:[[Файл:Putty serial settings.png|500px]] |
| |-
| | #В меню слева выберите первый пункт - ''Session''. Справа переключите тип подключения на Serial - в поля должны попасть настройки порта. Затем нажмите ''Open''. |
| | Hardware flow control || None || Аппаратный контроль потока
| | #:[[Файл:Putty serial open.png|500px]] |
| |- | | #Чтобы проверить, правильно ли вы всё сделали, кнопкой выключите и включите контроллер - на экране должны появиться сообщения о загрузке. После завершения загрузки появится запрос логина - введите ''root'' и нажмите ''Enter'', и пароля - введите ''wirenboard'' (вводимые символы не будут отображаться) и нажмите ''Enter''. |
| | Software flow control || None || Программный контроль потока | | #Появится приветственное сообщение - вы в консоли контроллера. |
| |-
| | #:[[Файл:Putty serial logged in.png|500px]] |
| |} | |
|
| |
|
| === Windows ===
| | </translate> |
| Если у вас на компьютере '''Windows 10''', а контроллер '''Wiren Board 6.4 или новее''', то система сама, после физического подключения, назначит виртуальный COM порт и установит необходимый драйвер. Увидеть номер этого порта можно в Диспетчере устройств Windows:
| |
| [[Файл:Dispatcher.png|left]]
| |
| <br clear="both" /> | |
| | |
| При использовании '''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. Не можете сами разобраться — записывайте сеанс в лог файл и обращайтесь в нашу техподдержку.
| |
| | |
| == Физическая реализация в контроллерах ==
| |
| {| 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) || -
| |
| |-
| |
| |}
| |
| Программно во всех случаях это последовательный порт.
| |