Hi guys,
I hope you can help. I am getting desperate!
I am having the exact same problem you describe here - except my IN endpoint is not iso
but set to bulk. Do you know of any other reasons why I may be getting the exact same
issue? Why should the bulk-in endpoint lock up after one transmission and my bulk-out
endpoint remains functioning correctly?
Also, does anyone thing using usbser.sys is a waste of time and should I be looking at
using a different driver?
Thanks
> I'm having a problem using usbser.sys with an AT91SAM7S256 that I
>hope somebody can help with. I'm attempting to create a virtual COM
>port to communicate with the AT91SAM device using some legacy software
>that only communicates through PC COM ports.
>
> I'm using the IAR development system and have found an example of
>using the virtual COM ports (the file was
>at91sam7s64_basicusb_20060901_public.zip) that _almost_, but not
>quite, works.
>
> My device enumerates, usbser.sys gets loaded, the virtual COM port
>shows up, and appears to be working fine. I start hyperterm on the PC
>side, it connects to the virtual COM port, I see exchanges of line
>coding, etc, and all still seems fine. I can send characters from
>hyperterm, through out the BULK-OUT endpoint, and receive them with my
>firmware application just fine.
>
> The problem is with the BULK-IN endpoint. I can send one packet
>(from 1 to however many characters) and the entire packet makes it
>through and is displayed by hyperterm. However the BULK-IN endpoint
>then locks up on any further attempts to send data. I write the data
>to the fifo, set the TXPKTRDY bit, and it hangs in that state with
>TXPKTRDY never getting cleared and TXCOMP never getting set, so it
>appears the Host has stopped reading that endpoint. While the BULK-IN
>endpoint is stuck like this, I can still transfer characters through
>the BULK-OUT endpoint and see message exchanges through the Control
>endpoint if I change line-coding. So it's just the BULK-IN endpoint
>that's having the problem.
>
> If I use the Atmel driver (6124.sys) instead of the usbser.sys
>driver, it works fine. Both BULK-OUT and BULK-IN endpoints transfer
>data properly. The _only_ change I made when using the 6124.sys
>driver was to loopback packets on the AT91SAM device for use with an
>Atmel test program that uses the 6124.sys driver.
>
> Because of this, I figure I have to have some sort of set up issue
>with the usbser.sys driver (flow control of some sort not getting set
>up correctly???), but I'm having a hard time finding usefull
>information on the usbser.sys driver and what affects its configuration.
>
> So:
>
> Anyone have an idea what might be causing the problem?
>
> Has anyone gotten usbser.sys to work with the AT91SAM device? If so
>, could you share the .inf file and the USB configuration descriptors
>you're using? Or the entire AT91SAM code base around the USB port if
>possible.
>
> Anyone know of a source of usefull information on how to deal with
>usbser.sys?
>
> Anyone know of any substitutes to usbser.sys? It would really be
>best if I can use usbser.sys for a "driverless" solution, but in the
>end I need to get this to work.
>
> I just need very basic transport of characters from PC device.
>
> Any help is appreciated.
>
>-Cliff
>
------------------------------------

(You need to be a member of AT91SAM -- send a blank email to AT91SAM-subscribe@yahoogroups.com )
All,
What software are you using on the ARM? I've got an implementation
of ATMEL's USB Framework with the CDC code compiled under gcc running
on a SAM7 and it works fine with usbser.sys
I DID have to spend some time tracking down a possible compiler
issue (or maybe it was a bad volatile declaration) in one of
the ISRs but now it works fine.
Have a close look at ATMEL's USB Framework. It seems complicated
but it's really quite beautiful once you figure out how it
works.
The nice part is that the low level functions are always
the same and you plug in the functionality you want such as
CDC, Mass Storage, or HID on top.
Cheers, Ralph
------------------------------------

(You need to be a member of AT91SAM -- send a blank email to AT91SAM-subscribe@yahoogroups.com )