Programming BlinkyTape from Android?
Has anybody yet created a way to program BlinkyTape from an Android device using e.g. ArduinoDroid? It seems like it would be very useful to be able to pull out one's phone and load a sketch from it, or program on a keyboarded tablet without the need to fetch a bigger laptop!
If not, can somebody point me to the specs and learning resources I'd need to start cooking something of the sort up? Context: I am a professional software dev, however my usual beat is miles from the metal. I really don't have any idea how one writes an Arduino-oid 'programmer', or what BlinkyTape's programming protocol is.
If not, can somebody point me to the specs and learning resources I'd need to start cooking something of the sort up? Context: I am a professional software dev, however my usual beat is miles from the metal. I really don't have any idea how one writes an Arduino-oid 'programmer', or what BlinkyTape's programming protocol is.
Comments
PatternPaint is written in C++ using the QT library, and it should be possible to compile it for Android (though I haven't tried yet, none of my phones have USB OTG).
The protocol to send realtime data to the BlinkyTape is hopefully simple, and the Processing example has an explanation of how it works:
http://blinkinlabs.com/blinkytape/docs/processing/
To upload animations, the BlinkyTape actually does a little trick to combine the animation with a pre-compiled Arduino sketch, and uploads the whole thing using the bootloader as if it were a new sketch. I had a hard time finding documentation on this (it should be the avr109 protocol), and ended up reverse engineering it by looking through the bootloader source code.
Let us know if that works...
Other board type (other being not Leonardo) actually make the BT pause for a moment, indicating some level of communication, then gives a USB Error.
With a board type of UNO, ArdunioDroid errors: Error - Problem uploading to board.
I remember reading somewhere that BT was close to Leonardo. I've tried timing tricks, but either get USB permission errors, or the Hardware Reset request.
I am looking forward to seeing of anyone else has any luck. I've tried several Android Arduino apps now. I keep looking at Android Processing, but don't see any upload mechanism in them.
Thanks!
My understanding of Android OTG support is that it's not well supported, and varies by phone and by the Android version.
I will try to capture the output from ArduinoDroid to see if that is any help.
I ran 'USB Host Diagnostics' from the Android store, and its diagnostic is that the hardware claims support, however the OS isn't configured properly (or something like that).
Android API:
Claims Support - Yes
Classes Found - Yes
Devices Detected - Yes
Rooted API - n/a
Kernel:
Claims Support - Yes
Device Detected - Yes
Verdict:
OS Support - Yes
3rd Party Apps - Full