Got an IOIO-OTG
Aug 08, 2014Interested in hardware development, I just don’t like some obviously popular things, so instead of Arduino, I ordered an IOIO-OTG.
It’s much smaller than I expected! No any experiences in hardware development, so I hadn’t buy enough components to start hacking with the Android yet.
Anyway, after adding a proper udev rule /usr/lib/udev/rules.d/50-ioio.rules, I plugged it into my Arch Linux notebook with the USB cable for my HTC One.
ACTION=="add", SUBSYSTEM=="tty", SUBSYSTEMS=="usb", ATTRS{idVendor}=="1b4f", ATTRS{idProduct}=="0008", SYMLINK+="IOIO%n", MODE="666"
Follow the guide https://github.com/ytai/ioio/wiki/IOIO-OTG-Bootloader-and-IOIODude, get the ioiodude
from https://github.com/ytai/ioio/tree/master/release/apps
ls /dev/IOIO* #=> /dev/IOIO0
./ioiodude --port=/dev/IOIO0 versions
The IOIO is running in application mode, so I got
IOIO Application detected.
Hardware version: SPRK0020
Bootloader version: IOIO0400
Application version: IOIO0330
To flash the latest firmware, I need to boot the IOIO to bootloader mode. Just detach the IOIO from the PC, use any wire to connect the boot
with GND
, then plug the IOIO to PC with the USB cable. Wow, the yellow state LED just lights!
Remove the wire or jumper in the jargon, then run the identical command
./ioiodude --port=/dev/IOIO0 versions
IOIO Bootloader detected.
Hardware version: SPRK0020
Bootloader version: IOIO0400
Platform version: IOIO0030
The IOIO is in bootloader mode now, so flash the firmware from https://github.com/ytai/ioio/raw/master/release/firmware/application/App-IOIO0500.ioioapp
./ioiodude --port=/dev/IOIO0 --reset write App-IOIO0500.ioioapp
Comparing fingerprints...
Fingerprint mismatch.
Writing image...
[########################################]
Writing fingerprint...
Done.
Check the version again
./ioiodude --port=/dev/IOIO0 versions
IOIO Application detected.
Hardware version: SPRK0020
Bootloader version: IOIO0400
Application version: IOIO0500
Firmware updated successfully! Wish I could learn something with this small thing.