Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Проблема с модулем ftdi_sio  (Прочитано 981 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн borune

  • Автор темы
  • Новичок
  • *
  • Сообщений: 31
    • Просмотр профиля
Проблема с модулем ftdi_sio
« : 05 Апрель 2020, 17:04:55 »
Всем привет.

Такой вопрос. Пишу приложение для работы с 2 девайсами, основанными на чипах FTDI. Существует известная проблема, заключающаяся в том, что у FTDI есть 2 различных несовместимых драйвера - драйвер виртуального ком-порта (он встроен в Ubuntu и называется ftdi_sio) и ftd2xx, который можно скачать с их сайта. Так вот для взаимодействия с одним из моих девайсов нужно использовать ftd2xx, а для другого нужен ftdi_sio.

Проблему я решил, сделав небольшую улититку, которая делает rmmod или modprobe для ftdi_sio. Т.е. когда мне нужно поработать с первым девайсом, я выгружаю драйвер ftdi_sio, а когда надо что-то сделать со вторым - загружаю ftdi_sio. Решение так себе, но ничего более красивого я не придумал.

Вроде бы все нормально работает, но есть один момент. После выполнения команды modprobe ftdi_sio имею такое:
$ lsmod | grep ftdi
ftdi_sio               53248  2
usbserial              45056  5 ftdi_sio

Спустя секунд 20 вывод меняется на более адекватный:
$ lsmod | grep ftdi
ftdi_sio               53248  0
usbserial              45056  1 ftdi_sio


В течение этих 20 секунд открыть порт не получается - получаю ошибку "port busy". Подскажите, что это за процессы, которые начинают использовать драйвер сразу же после его загрузки и можно ли как-то их отключить или хотя бы сократить время их работы?
« Последнее редактирование: 05 Апрель 2020, 18:37:01 от borune »

Оффлайн Morisson

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 4744
    • Просмотр профиля
Re: Проблема с модулем ftdi_sio
« Ответ #1 : 05 Апрель 2020, 22:33:47 »
А что за устройства?

Оффлайн borune

  • Автор темы
  • Новичок
  • *
  • Сообщений: 31
    • Просмотр профиля
Re: Проблема с модулем ftdi_sio
« Ответ #2 : 06 Апрель 2020, 11:20:12 »
А что за устройства?
Кардридер и тонометр. Но это разве важно?

Оффлайн Morisson

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 4744
    • Просмотр профиля
Re: Проблема с модулем ftdi_sio
« Ответ #3 : 06 Апрель 2020, 16:36:26 »
Кардридер и тонометр. Но это разве важно?
системой они как определяются?
и вывод dmesg на момент подключений
« Последнее редактирование: 06 Апрель 2020, 16:38:17 от Morisson »

Оффлайн borune

  • Автор темы
  • Новичок
  • *
  • Сообщений: 31
    • Просмотр профиля
Re: Проблема с модулем ftdi_sio
« Ответ #4 : 06 Апрель 2020, 18:02:08 »
системой они как определяются?
Если драйвер ftdi_sio не загружен и заблеклистен, то никак. В противном случае как /dev/ttyUSBx

и вывод dmesg на момент подключений

Если драйвер в блеклисте:

[   39.328272] usb 1-4: new full-speed USB device number 6 using xhci_hcd
[   39.483735] usb 1-4: New USB device found, idVendor=0403, idProduct=6001
[   39.483745] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   39.483751] usb 1-4: Product: FT232R USB UART
[   39.483758] usb 1-4: Manufacturer: FTDI
[   39.483763] usb 1-4: SerialNumber: A90059Hf

[  414.631483] usb 1-1: new full-speed USB device number 7 using xhci_hcd
[  414.786160] usb 1-1: New USB device found, idVendor=0403, idProduct=6001
[  414.786167] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  414.786172] usb 1-1: Product: FT232R USB UART
[  414.786176] usb 1-1: Manufacturer: FTDI
[  414.786181] usb 1-1: SerialNumber: A904PLIN

Если нет:

[  125.303041] usb 1-1: new full-speed USB device number 10 using xhci_hcd
[  125.459026] usb 1-1: New USB device found, idVendor=0403, idProduct=6001
[  125.459032] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  125.459036] usb 1-1: Product: FT232R USB UART
[  125.459039] usb 1-1: Manufacturer: FTDI
[  125.459042] usb 1-1: SerialNumber: A904PLIN
[  125.462284] ftdi_sio 1-1:1.0: FTDI USB Serial Device converter detected
[  125.462344] usb 1-1: Detected FT232RL
[  125.462802] usb 1-1: FTDI USB Serial Device converter now attached to ttyUSB0

[  145.823207] usb 1-4: new full-speed USB device number 11 using xhci_hcd
[  145.978268] usb 1-4: New USB device found, idVendor=0403, idProduct=6001
[  145.978278] usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  145.978285] usb 1-4: Product: FT232R USB UART
[  145.978291] usb 1-4: Manufacturer: FTDI
[  145.978298] usb 1-4: SerialNumber: A90059Hf
[  145.981622] ftdi_sio 1-4:1.0: FTDI USB Serial Device converter detected
[  145.981752] usb 1-4: Detected FT232RL
[  145.982171] usb 1-4: FTDI USB Serial Device converter now attached to ttyUSB1

« Последнее редактирование: 06 Апрель 2020, 21:40:44 от borune »

Оффлайн smart

  • Участник
  • *
  • Сообщений: 164
    • Просмотр профиля
Re: Проблема с модулем ftdi_sio
« Ответ #5 : 26 Апрель 2020, 12:09:14 »
ftd2xx, который можно скачать с их сайта.
я так понимаю, проприетарный драйвер ? Тогда проблема в чипах - для борьбы с китайскими чипами, производитель в своём драйвере проводит проверку на валидность чипа. Если это не их чип - то драйвер не работает или глючит. По крайней мере в винде это 100% Я думаю, что погуглив, можно найти утилитку под винду для тестирования чипов. У меня где-то есть, но найти - нереально :)

 

Страница сгенерирована за 0.088 секунд. Запросов: 25.