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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

Автор Тема: не работает USB to UART адаптер cp210x  (Прочитано 8812 раз)

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

Оффлайн klenov

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
не работает USB to UART адаптер cp210x
« : 17 Сентября 2012, 22:49:54 »
Почему-то не работает usb-serial адаптер. Права на чтение/запись ttyUSB0 есть. На виндовом ноуте работает.

$ dmesg
[448944.948042] usb 2-6: new full-speed USB device number 13 using ohci_hcd
[448945.170216] cp210x 2-6:1.0: cp210x converter detected
[448945.348046] usb 2-6: reset full-speed USB device number 13 using ohci_hcd
[448945.555347] usb 2-6: cp210x converter now attached to ttyUSB0

$ lsusb
Bus 002 Device 013: ID 10c4:ea60 Cygnal Integrated Products, Inc. CP210x Composite Device

$ lsmod | grep cp
cp210x                 17514  0
usbserial              37173  2 ftdi_sio,cp210x

12.04 3.2.0-29
« Последнее редактирование: 17 Сентября 2012, 22:53:02 от klenov »

Оффлайн suslikk

  • Старожил
  • *
  • Сообщений: 2485
    • Просмотр профиля
Re: не работает USB to UART адаптер cp210x
« Ответ #1 : 17 Сентября 2012, 22:52:31 »
Как вы узнаёте, что он не работает?
Нарисуй свой город на openstreetmap.org

Оффлайн klenov

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Re: не работает USB to UART адаптер cp210x
« Ответ #2 : 17 Сентября 2012, 22:58:24 »
к нему подключен модем APC230, другой такой же подключен к микроконтроллеру и отправляет на первый данные
пробовал подключаться к терминалу ttyUSB0 разными способами (putty, minicom)

Оффлайн vselax

  • Активист
  • *
  • Сообщений: 309
    • Просмотр профиля
Re: не работает USB to UART адаптер cp210x
« Ответ #3 : 18 Сентября 2012, 17:46:54 »
У меня на 11.10 кажется тоже шнур не работал нивкакую. Баг был с драйвером и не исправился. Зато на 10.04 на ура. Правда не помню на каком чипе был. А вообще, нужно замкнуть RX-TX и что-то еще, точно сейчас не помню, и попробовать эхо через миником. Большая машина с настоящим комом и убунтой есть? Если да, то можно на ней попробовать. Приду домой посмотрю что у меня на заглушке напаяно.

Оффлайн klenov

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Re: не работает USB to UART адаптер cp210x
« Ответ #4 : 19 Сентября 2012, 01:24:16 »

при замыкании rx и tx эхо работает: получаю то, что посылаю
вобщем у меня модем подключен к ардуино, ардуино шлет на него данные
если я второй модем втыкаю через USB to UART на виндовом ноуте и там запускаю serial monitor то там данные видно
работает и прием и передача через модем
в убунте почему-то не работает

Оффлайн vselax

  • Активист
  • *
  • Сообщений: 309
    • Просмотр профиля
Re: не работает USB to UART адаптер cp210x
« Ответ #5 : 19 Сентября 2012, 12:26:40 »
Эхо смотрите на линуховом ноуте? Если да, то шнур точно работает. А что говорит модем? У него ведь должны быть AT команды. Есть? Какие есть? Что за модем? Похоже он просто не инициализирован.

Пользователь решил продолжить мысль 19 Сентября 2012, 13:40:10:
Кстати, а что за версия ядра? Возможно, соответствующий модуль поддерживает не все сигналы COM`а, вот модем и не работает. Если это будет так, то может можно настроить модем соответствующим образом? Можно проверить хардварно: Сделать удлинитель COM-COM с разведенными сигналами RX и TX (только этими сигналами), соединить модем с COM шнуром через него, воткнуть шнур в виндовый компьютер и посмотреть, будет ли работать?

Пользователь решил продолжить мысль 19 Сентября 2012, 15:54:33:
Погуглил немного на баги с этим шнуром. В общем, ядро должно быть 2.6.36.1 или новее, в нем, как я понял, был исправлен баг с линиями DTR/RTS.
Здесь: http://linux.softpedia.com/progChangelog/Linux-Kernel-Stable-Changelog-1960.html
Вразделе "What's new in Linux Kernel 2.6.36.1:", написано: "USB: ftdi_sio: revert "USB: ftdi_sio: fix DTR/RTS line modes"".
А вообще, в новых ядрах что-нибудь могли и отломать. Можно попробовать работу с другими ядрами, конкретно с 2.6.36.1 и 2.6.37.3. Если есть другая машина, с другим linux`ом и/или ядром и/или COM`ом, нужно попробовать на ней.
« Последнее редактирование: 19 Сентября 2012, 15:54:33 от vselax »

Оффлайн klenov

  • Автор темы
  • Новичок
  • *
  • Сообщений: 5
    • Просмотр профиля
Re: не работает USB to UART адаптер cp210x
« Ответ #6 : 19 Сентября 2012, 17:15:04 »
vselax, спасибо за помощь!

проблема решилась, точно не понял из-за чего так просиходит, дело именно в RTS
проверил в программе для win https://sites.google.com/site/terminalbpp/ если RTS=1 то данные не принимаются
почему при чтении разными способами в Linux(например CuteCom) RTS равен 1 не знаю, может так и должно быть?
или надо что-то поменять в настройка порта через stty, сейчас настройки такие:
$ stty -a < /dev/ttyUSB0
speed 9600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = <undef>; eol2 = <undef>; swtch = <undef>; start = ^Q; stop = ^S;
susp = ^Z; rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 -hupcl -cstopb cread clocal -crtscts
-ignbrk -brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr -icrnl -ixon -ixoff -iuclc -ixany -imaxbel -iutf8
-opost -olcuc -ocrnl -onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
-isig -icanon -iexten -echo -echoe -echok -echonl -noflsh -xcase -tostop -echoprt -echoctl -echoke

gem для руби serialport позволяет rts изменять, вот скрипт который в итоге работает
возможно для моей задачи этого достаточно, если выясню что-то еще - напишу, вдруг кому-то пригодиться

#simplest ruby program to read from serial,
#using the SerialPort gem
#(http://rubygems.org/gems/serialport)
 
require "serialport"
 
#params for serial port
port_str = "/dev/ttyUSB0"
baud_rate = 9600
data_bits = 8
stop_bits = 1
parity = SerialPort::NONE
 
sp = SerialPort.new(port_str, baud_rate, data_bits, stop_bits, parity)

sp.rts = 0


while c=sp.getc do

  printf("%c", c)

end
 
sp.close


Оффлайн vselax

  • Активист
  • *
  • Сообщений: 309
    • Просмотр профиля
Re: не работает USB to UART адаптер cp210x
« Ответ #7 : 19 Сентября 2012, 17:47:48 »
Честно, не очень понял всех тонкостей настроек, но тут есть один момент: по окончании работы, предыдущие настройки COM`а сами не сбрасываются. Это черевато тем, что если добиться каким-либо образом работы COM`а, а потом перезагрузить машину, то возможно, добиться работы вновь не получится, ведь часть настроек можно просто упустить из виду. Например у меня некоторое время были проблемы с инициализацией COM`а из командной строки, но после запуска minicom`а все работало, до следующей перезагрузки.

Пользователь решил продолжить мысль 19 Сентября 2012, 18:03:02:
Да, и еще один ОЧЕНЬ важный момент: по окончании работы с COM`ом, ОБЯЗАТЕЛЬНО опусти все сигналы вниз. Если этого не сделать, то при переподключении устройства без подачи на него питания и последующего его включения или просто при предергивании питания на ходу есть риск спалить его и/или COM. Лучше всего поставить токоограничительные резисторы, это хотя бы сбережет COM.
« Последнее редактирование: 19 Сентября 2012, 18:03:02 от vselax »

 

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