A shower thought I had this morning was to see if there's an Arduino shield that could act as a USB host, also known as USB OTG (On-The-Go), that I can plug that into the Espruino Pixl.js.

Why would I want to do that? Well, that would allow me to read data from USB devices, like the insulin pumps and blood glucose meters I develop drivers for in the Tidepool Uploader, display some of the data on the Pixl.js display, and then forward it onto a smart phone or computer via BLE.

Turns out there are at least two Arduino USB host shields, the official Arduino USB host shield and one made by Sparkfun. If I understand correctly, the official one connects through the Arduino's ICSP header, which is not available on the Pixl.js, leaving me with the Sparkfun option.

Both use the MAX3421E USB peripheral/host controller chip, so I'm wondering if I could eventually design a little dongle that consists of the MDBT42Q BLE module inside the Pixl.js and the USB controller chip. The BLE module is £6 in volume, and the USB controller chip between £4.50 and £6.50 depending on quantity. This makes it more expensive than a Raspberry Pi Zero W, even before you add the PCB and discrete component costs, but it should be much less power hungry.