0
votes

I have a device using an Atmel processor running under Linux. To this device I want to connect a remote device using a AT91SAM7 processor. This remote device is configured to do a pseudo-serial over the USB, under Windows this works fine and shows up as "AT91 USB to Serial Converter (COM3)".

Under Linux the device appears in the /dev as following:

crw-rw----    1 root     root     253,   7 Aug 30 10:52 /dev/usbdev2.2_ep00
crw-rw----    1 root     root     253,   5 Aug 30 10:52 /dev/usbdev2.2_ep01
crw-rw----    1 root     root     253,   6 Aug 30 10:52 /dev/usbdev2.2_ep82
crw-rw----    1 root     root     253,   4 Aug 30 10:52 /dev/usbdev2.2_ep83

What must I do in order to communicate with the device? Some driver to bind into the kernel? Or does a loadable driver (.ko) exist?

1
If there are any /dev/ttyUSB* devices?Gluttton
You over-use the word "device". First you wrote "To this device I want to connect a remote device", but then it's *"What must I do in order to communicate with the device?" If this (remote?) device really emulates a serial device over USB, then you apparently need to adapt one of the USB serial drivers.sawdust

1 Answers

0
votes

Based on what yo wrote, the embedded board with the AT91SAM7 processor is correctly configured, since it works when you connect it to a windows host.

If it does not work under linux, probably it is due to the fact that it does not recognize the vendorid:productid values.

On the linux host check the output of lsusb:

ottavio@ottavio:~$ lsusb 
Bus 004 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port
ottavio@ottavio:~$

in this case, that a USB<->RS232 converter I have on my computer. You should have a line related to your board when you plug it.

Now, depending on your system you may need to user usbserial or ftdi_sio. So try first to load usbserial

modprobe usbserial vendor=0x067b product=0x2303

if this does not work try loading ftdi_sio

modprobe ftdi_sio vendor=0x067b product=0x2303

Pay attatention that if the modules are already loaded you need to rmmod them. Finally, in my example vendrid is 0x067b and product is 0x2303, you'll need to use the correct values.