Contents

Flashing the USB IR Toy v2

I finally had some time to work on my temperature project and the first step was to make sure my 2 USB IR Toys worked (they finally arrived about 2 weeks ago).

One seemed to work fine (meaning my Raspberry Pi recognised it and enabled the device /dev/ttyACM0), but the other wasn’t being recognised. (In fact the LED was constantly on). I thought I got a faulty one.

I decided to try reflashing it.

Dangerous Prototypes had a howto on how to flash it, but I found it slightly confusing, so here are my instructions (that are for flashing the v2 board with a v22 firmware) on the Raspberry Pi:

Short pins PGC and PGD

First, need to short the PGC and PGD pins. This is simple enough - I just used simple jumper wire.

https://cdrumblog.s3.amazonaws.com/wp-content/uploads/2013/02/IMG_20130212_120304-300x225.jpg

https://cdrumblog.s3.amazonaws.com/wp-content/uploads/2013/02/IMG_20130212_120310-300x225.jpg

Get latest Firmware

Downloaded from http://code.google.com/p/dangerous-prototypes-open-hardware/downloads/detail?name=USBIRToy.package.v22.zip

wget http://dangerous-prototypes-open-hardware.googlecode.com/files/USBIRToy.package.v22.zip

unzip USBIRToy.package.v22.zip

Get latest IRToy-specific Firmware Update Utility

wget http://jesshaas.com/software/IRToy-fw_update.tar.gz

This apparently is a patched utility from the board maker at Diolan.

Compile

Note, I had to do all of us sudo - kept getting errors while running these as user pi.
export LIBS=-lusb
sudo apt-get install libusb-dev
sudo ./configure (I got g++ errors if I run as pi)
sudo make
cd ..

Flash!

sudo IRToy-fw_update/fw_update -e -w -v -m all -vid 0x04D8 -pid 0xFD0B -ix USBIRToy.package.v22/firmware/USBIRToy.v22.hex

Make sure your paths are correct in the above command. 

The successful output should look like:

U2IO flash erasing: DONE.

U2IO id programming: DONE.

U2IO eeprom programming: DONE.

U2IO flash programming: DONE.

U2IO id programming: DONE.

U2IO eeprom programming: DONE.

U2IO flash verifying: DONE.

U2IO id verifying: DONE.

U2IO eeprom verifying: DONE.

RESET Device

Operation successfully completed.

I was lucky. The IR Toy I thought was bad now seems to work fine!