Serial-USB driver help Belikn F5U103

Hi,

I am trying to provide a driver for a Belkin USB F5U103 USB to Serial box.

To start I used the Printer Class Driver as a base for sending data and
managed to get it to accept data as well as configure it different baud
rates etc and could use command such as ‘cat file > /dev/usbserial’

However I can’t seem to get information from the device. I have tried to
use the Mouse driver as a base to go the other way as the belkin hub
provides an interrupt endpoint. when I enter the int callback handler the
status is allways command complete with error and usb stall. if I issue a
reset_pipe or abort_pipe and reset the interrupt I still get the same status
the next time the handler is called.

this leads me to a couple of questions.

Should I have separate URBs for each direction of endpoint so one for the
vendor and bulk out endpoints and one for the interrup and bulk in
endpoints.

In general do devices like the Belikin serial adaptor which have a bulk in
and an interrupt pipe deliver their data in the interrupt or in the bulk in
pipe.

I have tried to look at the belkin_sa.c source for the linux driver but
can’t work out how this receives data from the belkin device but others may
have more of an idea.

Paul

Paul <qnxnews@nospam.rochesterkent.freeserve.co.uk.nospam> wrote in message
news:c00dgf$elr$2@inn.qnx.com

Hi,

I am trying to provide a driver for a Belkin USB F5U103 USB to Serial box.

To start I used the Printer Class Driver as a base for sending data and
managed to get it to accept data as well as configure it different baud
rates etc and could use command such as ‘cat file > /dev/usbserial’

However I can’t seem to get information from the device. I have tried to
use the Mouse driver as a base to go the other way as the belkin hub
provides an interrupt endpoint. when I enter the int callback handler the
status is allways command complete with error and usb stall. if I issue a
reset_pipe or abort_pipe and reset the interrupt I still get the same
status
the next time the handler is called.

this leads me to a couple of questions.

Should I have separate URBs for each direction of endpoint so one for the
vendor and bulk out endpoints and one for the interrup and bulk in
endpoints.

Yes. You should use seperate URBs if they are going to be submitted to
the USB stack at the same time. (as well as buffers for data )

In general do devices like the Belikin serial adaptor which have a bulk in
and an interrupt pipe deliver their data in the interrupt or in the bulk
in
pipe.

Generally the interrupt pipe would return status type information and the
bulk
pipe would return data coming from the serial port.

I have tried to look at the belkin_sa.c source for the linux driver but
can’t work out how this receives data from the belkin device but others
may
have more of an idea.

Paul

I’m curious to know if you had any luck with this and would be willing
to share the code.
Regards
Chris