USB Host Shield and Wireless Aircard

I just ordered the circuits@home usb host shield. I intend to use it to send and receive AT commands to a Sierra wireless aircard. Being momentarily lazy, I thought I'd ask if anyone had a headstart or some guidance before I undertake this task. :D

I am working on it right now. I have the board working but it does not recognize the keyboard.

The biggest issue I had was the sample code refers to "Spi.h" I thought they meant "spi.h" as in the ethernet library. They have there own Library for SPI which just has the one letter different VERY CONFUSING. You have to make sure you download the library and install it. Once I did that their samples work fine and report the keyboard configuration properly. However when I try to run the sample that talks to the keyboard, it gets a protocol error. I have tired a couple of different keyboards. I know its mostly working because it returned the manufacture code correctly.


Thanks for the tip. That uppercase/lowercase distinction is something I would probably never discover.

If you guys have problems, contact me off-list and I will be glad to help.

Oleg Circuits@Home

I too have a problem getting this to work with a USB keyboard

I have got the latest USB_Host_Shield from git. I have installed the Spi library. Built and installed the LCDKbd sketch and get this error on the serial out of the Arduino when the sketch starts:

Start Error attempting to configure boot protocol. Return code :5

Further to this, I have investigated a bit more with the following results:

I have been testing with the USB shield plugged in to a Duemilanove connected by USB to my devel machine.

In this configuration, the DC voltage on the USB shields USB port is only 3.13V. Should be 5V.

When I connect a separate battery to the the power socket of the duemilanove, the DC volatge on the USB shield USB socket goes to the expected 4.75V

Seems that when running off Duemilaove with USB, there is no significant coltage on the Vin line going to the USB shiled. The USB shield relies on this Vin to power its own USB socket via a 5V regulator. Upshot is that USB slave devices dont power up. I would think it would be better for the USB shield to get its 5V from the Arduino, if available.


even if I have an external battery as well as the Arduino USB plugged in, I get only intermittent working.

If the slave USB device is a Logitech USB game pad, the LCDkbd program sometimes connects to the game pad OK, and sometimes fails with :

Start Setup packet error: DError attempting to configure keyboard. Return code :D

When it connects it then seems to report sensible output data whenever a stcik moves or a button is pressed.

When I try to connect to a Dell USB keyboard, the LCDkbd program always fails with:

Start Error attempting to configure boot protocol. Return code :5

Im starting to struggle here :-(


Some keyboards have built in USB hub; hubs are yet to be supported. Look at interface descriptor - a keyboard should have class/subclass/protocol of 3/1/1 .