Arduino USB host get raw events

arduinousb

For a project I'm planning, I'd like to be able to plug a USB device into an Arduino and capture the raw usb events (handshake, interrupts, etc) and reply to the device on an equally low level. I've been eyeing the Arduino USB Host Shield (Docs) for this project, but I had some questions / concerns that I hoped to clarify before getting it.

The library is, at least from what I see, designed to make high level interfacing with common types of USB devices very easy. So I'm wondering, what would I have to do if I wanted to deal entirely with raw USB speak? Is it possible with the Arduino and this shield?

Thanks in advance for any help.

Best Answer

No, I'm afraid not. All those low-level details you're interested in are hidden inside the MAX3421E chip that's on the shield board, and there's no way to get software access to them from the Arduino CPU.

If you really want to get into that level of development with USB, you need to work with a microcontroller that has a USB OTG controller built in, and start digging into the software library that supports it.