Tech Support > Computer Hardware > Microprocessors > Looking for USB stack for embedded application
Looking for USB stack for embedded application
Posted by F;,VN[OWIR on September 9th, 2004


I am looking for an USB stack suitable for embedded applications. I would
rather not run Linux since it is not crash proof. Does someone know about
such a piece of software. I would prefer a free stack if that is possible. I
have searched Google and cannot find anything.

Please reply to this newsgroup.
thank you


Posted by Ingo Cyliax on September 9th, 2004


In article <41407c48_3@newsfeed.slurp.net>,
F;,VN[OWIR <postmaster@localhost> wrote:
You have not said whether you wanted a host or target stack; I'll assume
it's host for my response.

Cypress has some sample programs that implement a minimal stack for the
sl811 in an application notes/kits in C for 8bit. I was able to port it
to a Rabbit with little effort a while ago and it handles a single device
(like a keybpad).

You can design reliable embedded systems around the Linux kernel itself,
and there are several commercial examples out there. I'm not sure what
you mean by "crash proof", but I can understand the argument of Linux
being overkill for some embedded applications if all you want is USB.

See ya, -ingo
--
/* Ingo Cyliax, cyliax@ezcomm.com, Tel: 812-391-0895 */


Posted by Anton Erasmus on September 9th, 2004


On Thu, 9 Sep 2004 08:57:57 -0700, "F;,VN[OWIR" <postmaster@localhost>
wrote:

hook up the device to your own MCU.

Regards
Anton Erasmus




Posted by Michael N. Moran on September 9th, 2004


F;,VN[OWIR wrote:
Hmm. I've worked on a project recently where the
reason for using Linux was because it has a USB stack.

Crash proof is a difficult concept, and somewhat limits
the choices ;-)

You need to be a bit more specific. If you need a
host stack, that covers a *lot* of ground.

What kind of transfers do you need? Control? Bulk?
Interrupt? Isochronous? All of the above?

Do you need USB 1.1 or USB 2.0?

What kind of host controller? OHCI ? EHCI?

What target processor platform?

What operating system (if not Linux?)


Four years ago, we were looking at a commercial
USB stack, for an embedded telecom product, and
there were only two on the market that I could
find ... but I cannot remember the name (old age).

I am in the process of preparing to release one that
currently supports USB 1.1 OHCI host controllers with
Control, Interrupt IN, and Bulk IN/OUT transfers.

Thus far, it has only been tested on a PowerPC 860
platform.

I have drivers for a FAT16 formatted USB Flash drive,
USB mouse, and a USB<->RS232 device of some sort,
as well as the obligatory USB HUB driver.

The design and implementation are rather ...
radical. If you hate C++, you won't like it.

Free as in beer, or free as in speech?
The stack is GPL, but other license arrangements
can be negotiated.

That's because a USB Host stack is a seriously
non-trivial piece of software.




--
Michael N. Moran (h) 770 516 7918
5009 Old Field Ct. (c) 678 521 5460
Kennesaw, GA, USA 30144 http://mnmoran.org

"... abstractions save us time working, but they don't
save us time learning."
Joel Spolsky, The Law of Leaky Abstractions

The Beatles were wrong: 1 & 1 & 1 is 1


Posted by Paul Burke on September 10th, 2004


F;,VN[OWIR wrote:
ecos has USB support now, I believe. What's your taget?

Paul Burke


Posted by Ulf Samuelsson on September 10th, 2004


"F;,VN[OWIR" <postmaster@localhost> skrev i meddelandet
news:41407c48_3@newsfeed.slurp.net...
Check out the AT43USB380 which is the embedded USB stack people have
mentioned before in this thread.

--
Best Regards
Ulf at atmel dot com
These comments are intended to be my own opinion and they
may, or may not be shared by my employer, Atmel Sweden.




Posted by Lewin A.R.W. Edwards on September 10th, 2004


The Titanic wasn't unsinkable either, despite being described as such.
Nothing is crash-proof. Linux is exceedingly robust if sensible rules
are followed for device drivers and applications. Of course, if you
override all the interlocks and let multiple tasks party on the
hardware, no OS is robust.