USB Development Tools for Embedded Devices? 31
engywook asks: "I am thinking about putting a USB interface onto a real-time (home-brew kernel) embedded device, (naturally) with the intent that it talk to another device. I am thinking that it would be very useful to be able to monitor the USB traffic between my device and the other device, and between that other device and (say) a PC that already knows how to talk to it. Looking around, it seems that this capability is available, but at prices in the US$10K and up realm, which is a lot more than I can afford. I am looking for pointers to tools that would accomplish this for much less money. Any ideas would be appreciated! Thanks!"
Linux Journal #7605 (Score:5, Informative)
Re:Linux Journal #7605 (Score:5, Informative)
Re:Linux Journal #7605 (Score:1)
Thanks!
Cypress USB Kit (Score:5, Insightful)
Re:Cypress USB Kit (Score:5, Informative)
any linux-based usb-host-capable dev. board. (Score:4, Interesting)
there are tons out there, cheap. ARM, even
that, and the linux kernel, is all you need to debug USB.
Terrible. F (Score:5, Informative)
look at netbsd USB stack and see howto put that into your src
you can dump out the usb traffic under netbsd look at the src
if you want to reverse engineer a windows driver you can use VMware on linux and dump the traffic
http://www.linuxjournal.com/article.php?
or
insert a windows driver (that dumps usb traffic) and look at the dumps but this could taint the results see http://usbsnoop.sourceforge.net/
or
buy a hardware that sits inbetween the cables for $1000 see http://www.usbdeveloper.com/USBViewer/usbview.htm
really I would look at http://www.fsmlabs.com/ as you can run real time tasks and use the linux drivers for usb because that part sure as hell is not going to be real time...
it you have failed to do ANY RESEARCH at all
Terrible. F
regards
john jones
FPGA (Score:5, Informative)
Zip over to opencores.org, grab the USB 1.x MAC and PHY as a starting point....and you can start to build your own hardware USB sniffer.
The beauty of this approach is that you can do *proper* sniffing type activities such as microsecond time stamping of samples, which gets (*ahem*) tricky doing things in the software domain under Linux or Windows.
If you just want to see a vague picture of the wire, you can stick to operating system level sniffing as others have pointed out.
-psy
Re:FPGA (Score:2)
Re:FPGA (Score:1)
I'm not too familiar with Altera, but www.xess.com [xess.com] makes terrific Xilinx-based dev boards starting at $150. They have an on-board i2c-usb chip, 8 MB DRAM, VGA, a
PC tools... (Score:5, Informative)
Your usage description seems to advocate a more node-to-node based relationship between devices on the bus. An interface like firewire seems much better suited to your application than USB (master/slave). Though I suppose it could be considerably more complex to implement?
If you still need a hardware analyzer, this one [usbdeveloper.com] looks more affordable [usbdeveloper.com].
Re:PC tools... (Score:3, Insightful)
You are right that there is a node=to-node relationship. In fact, I expect that my device and the other will be the only two connected at any given time. Unfortunately, I don't get to pick the interface. The other device already exists, at it is already USB.
BTW, the only reason it is USB instead of RS-232 is that "someone" convinced (nearly) all the PC hardware manufacturers that RS-232 was Evil and USB was Good. So, PCs
Try Belkin's USB to serial converters. (Score:3, Informative)
I've had success with USB to serial converters. I bought a bunch of them for $12.00 apiece from Belkin, for example. Email me if you want more info.
I think you're going backwards... (Score:2)
On a somewhat related note, Delkin and Macally have USB bridges [everythingusb.com] which play host to two devices simultaneously, shuffling files back and forth.
He said he would like to get rid of USB... (Score:2)
Continuing from above: (Score:2)
Not Getting Rid of USB (Score:1)
Now, if my device could also look like a USB/RS-232 adapter to a PC, that would be extra cool, as it would let me do some parameter setting, diagnostics, etc. from a PC.
FTDI transceiver (Score:4, Informative)
http://www.ftdichip.com
They make usb chips with serial interface (drop in replacement for an RS232 transceiver) or an 8-bit parallel interface. Comes with drivers for windows and there are drivers in the kernel already.
Only does up to 12Mbit/s though.
Cheers,
Roger
Re:FTDI transceiver (Score:3, Informative)
-psy
Re:FTDI transceiver (Score:1)
Re:FTDI transceiver (Score:1)
Do you need it? (Score:3, Informative)
I've developed a few USB devices, and frankly I haven't needed an analyzer just to get the device to work. If something's happening you don't understand, set breakpoints or toggle some status LEDs to see where you are in the firmware. That, and software-based sniffing for the occasional sanity check, has been all I really needed.
Learn the standard USB device types, and if you try to reverse-engineer a proprietary device, stock up on Advil.
Another angle (Score:3, Insightful)
Re:Another angle (Score:1)
Unfortunately, the device I need to talk to already exists, is from another vendor (actually, potentially multiple other vendors), and has USB and no CAN.
It's a real shame that they don't talk IDB (ITS Data Bus, SAE J2366). That would be too cool.
Three things for you to look at (Score:4, Informative)
Second, visit the Silicon labs web site. They sell a development board for their USB enabled Microcontroller which includes all cables, an assembler, and a bunch of utilities and examples. They also include a development kit for implementing the Windows drivers for your new device.
Finally, there's a utility available on the web called Snoopy which will let you capture USB packets.
If you made the kernel/device... (Score:2)
Circuit Cellar (Score:5, Informative)
USB analyzers (Score:1)
Re:USB analyzers (Score:1)
We'll have to see whether I can swing the higher price.
Thank