Перезапуск порта USB

Подскажите как перезапустить USB порт на WB8?
Есть USB устройство, работало идеально 6 мес, пришлось перенести его, длинна кабеля 42м, поставили удлинитель USB->RJ45->USB, но устройство стало отваливаться
Получаю такую ошибку: Serial protocol error: /dev/ttyACM0, can’t open serial port
Задался вопросом, как его перезапустить при такой ошибке?
Других вариантов подключения USB не нашел, остаётся перезапуск или перенос контроллера к устройству, чего очень не хочется.

Добрый день!

Перезагрузка порта, как по мне — это жёсткий костыль, и я бы не стал так делать.

Рекомендую рассмотреть более надёжные варианты:

  • Активный USB-хаб (с внешним питанием) — на стороне устройства. Это решает проблему нестабильности питания.
  • USB-over-IP — если устройство можно подключить удалённо и требуется гибкость.

Если всё же нужно временно “перезагрузить” порт вручную, то вот пример скрипта:

echo "$PORT" > /sys/bus/usb/drivers/usb/unbind
sleep 2
echo "$PORT" > /sys/bus/usb/drivers/usb/bind

Где $PORT — это, например, 1-1.3. Уточнить можно через lsusb -t или dmesg | grep usb.

Активный USB-хаб (с внешним питанием) уже пробовал, подвисает в 5 минут.
USB-over-IP ничего толкого не нашел, как правило с USB на другие протоколы.

Благодарю за скрипт, только я начинающий, осваиваю WB, подскажите как эти команды выполнить из WB-RULES?

А что за устройство, если не секрет? А то может эта проблема имеет больше решений, чем кажется сейчас.

Терминал оплаты СБП MERTECH

Удлинитель же не активный? 42 метра это слишком для USB. Померийте, возможно там от 5 вольт практически ничего не остается. Есть преобразователи USB-LAN. Которые шнуруют USB прям через существующую локалку. Сервер же подключается к железке по IP адресу и получает у себя еще один USB порт. Это работает.
Так как у терминала есть еще и BT соединение, то возможно есть вариант как-то Bluetooth прошнуровать в Ethernet. Возможно некий BT “свисток” заведется на 42 метрах.

1 лайк

Добрый день!

Вот такие устройства использовали для проброса лицензий 1С по сети и различные токены USB.

С Wiren Board не проверял, но теоретически должно работать — есть поддержка Linux, включая установку клиента для работы с USB-over-IP.

Был и активный, с внешним питанием, подвисает через 5 минут.
https://ozon.ru/t/wimt9cx
Простой сутки может работать без подвисания.

Добрый день!

А рядом с устройством нет источников сильных электромагнитных помех? Например, контакторов, пускателей, индуктивных нагрузок или силовых кабелей?

нет ничего такого.
Остается только перенести WB контроллер к устройству и поставив WB-MIO
или второй контроллер.

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

Пробовал такой. Оно и на тесте с 1м патчкордом работало не стабильно