Страница 1 из 1

FreeBSD, USB to UART

Добавлено: 2011-04-07 11:52:51
OmIkRoNiXz
FreeBSD 8.1-RELEASE

такой девайс подключеный через USB UART Bridge (настроен на 9600 бод)
Изображение

Код: Выделить всё

Apr  6 16:07:30 home kernel: ugen3.2: <Silicon Labs> at usbus3
Apr  6 16:07:30 home kernel: uslcom0: <CP2102 USB to UART Bridge Controller> on usbus3

Код: Выделить всё

# usbconfig
ugen0.1: <UHCI root HUB Intel> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
ugen1.1: <UHCI root HUB Intel> at usbus1, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
ugen2.1: <UHCI root HUB Intel> at usbus2, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
ugen3.1: <UHCI root HUB Intel> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON
ugen4.1: <EHCI root HUB Intel> at usbus4, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON
ugen3.2: <CP2102 USB to UART Bridge Controller Silicon Labs> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON

Код: Выделить всё

# stty -a -f /dev/cuaU0
speed 9600 baud; 0 rows; 0 columns;
lflags: icanon isig iexten echo echoe -echok echoke -echonl echoctl
        -echoprt -altwerase -noflsh -tostop -flusho -pendin -nokerninfo
        -extproc
iflags: -istrip icrnl -inlcr -igncr ixon -ixoff ixany imaxbel -ignbrk
        brkint -inpck -ignpar -parmrk
oflags: opost onlcr -ocrnl tab0 -onocr -onlret
cflags: cread cs8 -parenb -parodd hupcl -clocal -cstopb -crtscts -dsrflow
        -dtrflow -mdmbuf
cchars: discard = ^O; dsusp = ^Y; eof = ^D; eol = <undef>;
        eol2 = <undef>; erase = ^?; erase2 = ^H; intr = ^C; kill = ^U;
        lnext = ^V; min = 1; quit = ^\; reprint = ^R; start = ^Q;
        status = ^T; stop = ^S; susp = ^Z; time = 0; werase = ^W;

Код: Выделить всё

# cu -l /dev/cuaU0 -s 9600
Connected
или

Код: Выделить всё

# tail -f /dev/cuau0 | hexdump
и всё больше ничего не показывает. подключаю его к винде беру термина выставляю 9600 бод и всё вижу чётко.
может кому не лень будет подсказать в чём может быть трабл ? может там этот uslcom драйвер чутка надо поправить и всё ?
Я так его немного глянул но не представляю что там может быть не так


включил ещё дебаг побольше в messages что-то вроде такого

Код: Выделить всё

Apr  6 16:09:41 home kernel: uslcom_set_dtr: onoff = 0
Apr  6 16:09:41 home kernel: uslcom_set_rts: onoff = 1
Apr  6 16:09:43 home kernel: uslcom_set_dtr: onoff = 1
Apr  6 16:09:43 home kernel: uslcom_set_rts: onoff = 1
Apr  6 16:09:43 home kernel: uslcom_get_status:
Apr  6 16:09:43 home kernel: uslcom_param:
Apr  6 16:09:43 home kernel: uslcom_param:
Apr  6 16:09:47 home kernel: uslcom_set_dtr: onoff = 0
Apr  6 16:09:47 home kernel: uslcom_set_rts: onoff = 1
Apr  6 16:12:02 home kernel: uslcom_set_dtr: onoff = 1
Apr  6 16:12:02 home kernel: uslcom_set_rts: onoff = 1
Apr  6 16:12:02 home kernel: uslcom_get_status:
Apr  6 16:12:02 home kernel: uslcom_param:
Apr  6 16:12:02 home kernel: uslcom_param:
Apr  6 16:12:07 home kernel: uslcom_write_callback: actlen = 1
Apr  6 16:12:07 home kernel: uslcom_write_callback: actlen = 1
Apr  6 16:16:44 home kernel: uslcom_set_dtr: onoff = 1
Apr  6 16:16:44 home kernel: uslcom_set_rts: onoff = 1
Apr  6 16:16:44 home kernel: uslcom_get_status:
Apr  6 16:16:44 home kernel: uslcom_param:
Apr  6 16:16:49 home kernel: uslcom_set_dtr: onoff = 0
Apr  6 16:16:49 home kernel: uslcom_set_rts: onoff = 1
Apr  6 16:34:38 home kernel: uslcom_set_dtr: onoff = 1
Apr  6 16:34:38 home kernel: uslcom_set_rts: onoff = 1
Apr  6 16:34:38 home kernel: uslcom_get_status:
Apr  6 16:34:38 home kernel: uslcom_param:
Apr  6 16:34:38 home kernel: uslcom_param:
Apr  6 16:38:18 home kernel: uslcom_write_callback: actlen = 1
Apr  6 16:38:26 home last message repeated 10 times
Apr  6 16:38:26 home kernel: uslcom_write_callback: actlen = 2
Apr  6 16:38:26 home kernel: uslcom_write_callback: actlen = 244
Apr  6 16:38:26 home kernel: uslcom_write_callback: actlen = 103
Apr  6 16:38:27 home kernel: uslcom_set_dtr: onoff = 0
Apr  6 16:38:27 home kernel: uslcom_set_rts: onoff = 1
Apr  6 17:12:40 home kernel: uslcom_set_dtr: onoff = 1
Apr  6 17:12:40 home kernel: uslcom_set_dtr: onoff = 0
Apr  6 17:12:40 home kernel: uslcom_set_rts: onoff = 1
Apr  6 17:12:40 home kernel: uslcom_get_status:
Apr  6 17:12:40 home kernel: uslcom_param:
Apr  6 17:14:20 home kernel: uslcom_set_dtr: onoff = 1
Apr  6 17:14:20 home kernel: uslcom_set_rts: onoff = 1
Apr  6 17:14:20 home kernel: uslcom_get_status:
Apr  6 17:14:20 home kernel: uslcom_param:
Apr  6 17:14:20 home kernel: uslcom_param:
Apr  6 17:15:56 home kernel: uslcom_set_dtr: onoff = 0
Apr  6 17:15:56 home kernel: uslcom_set_rts: onoff = 1

Re: FreeBSD, USB to UART

Добавлено: 2011-04-10 19:55:23
Alex Keda
прикольный девайс =)

Re: FreeBSD, USB to UART

Добавлено: 2011-04-10 22:31:01
OmIkRoNiXz
Alex Keda писал(а):прикольный девайс =)
Угу вот жаль только что запустить на FreeBSD не получается :(

Пробовал "minicom" тоже никаких результатов, вот планирую может обновится до последней версии FreeBSD и попытать счастье ещё раз :)

Re: FreeBSD, USB to UART

Добавлено: 2011-04-12 15:47:06
OmIkRoNiXz
Подключил немножко подругому девайс взял шнурок от Trendnet TU-S9 к нему RS232-TTL

Изображение

к нему подключил платку на которой контроллер по UART к нему подключен передатчик этот же самый APC220 как в первом посте на картинке (ну конечно без USB-UART уже) и ещё теже самые RX TX от контроллера подключил к этому RS232-TTL подключил всё к FreeBSD

Код: Выделить всё

Apr 12 15:35:14 home kernel: ugen3.2: <Prolific Technology Inc.> at usbus3
Apr 12 15:35:14 home kernel: uplcom0: <Prolific Technology Inc. USB-Serial Controller D, class 0/0, rev 1.10/4.00, addr 2> on usbus3

Код: Выделить всё

ugen3.2: <USB-Serial Controller D Prolific Technology Inc.> at usbus3, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON

Код: Выделить всё

[15:37] root@home~> cat /dev/cuaU0 | hexdump
0000000 4a01 0201 0278 0202 01c0 7902 0202 3401
0000010 0201 0278 0202 01c9 7802 0202 4d02 0201
0000020 0276 0102 0106 7802 0202 8202 0201 0278
при этом приёмник APC220 с USB-UART как в первом посте который пытаюсь запустить и прочитать на FreeBSD с него подключил к виндовой машине дабы проверить доходят ли пакетики до него, включил терминал и увидел теже самые данные. Перевешиваю назад на FreeBSD приёмник и передатчик просто подключаю к батарейке нифига не могу прочитать на бзде. Я так понимаю это проблема с драйвером uslcom ? Если на uplcom впринципе всё вроде как пашет.

Re: FreeBSD, USB to UART

Добавлено: 2011-04-12 20:57:03
OmIkRoNiXz
Отбой, ложная тревога по поводу драйвера, всё запустил оказалось что на этом USB->UART не нужен был один контакт (Enable) без него всё запустилось.
Тему можно закрывать.

Alex Keda, сорри писал препоследний пост в торопях забыл про code.