Programming an Arduino using an audio file

This proof-of-concept is just waiting for you to put it to good use. [Mike Tsao] wrote an Arduino sketch that lets him decode incoming audio data which could be used to program the device. He’s calling the project TribeDuino because it decodes an audio file which is actually the firmware update for a Korg Monotribe.

Earlier in the month [Mike] read our feature on a project that reverse engineered the audio-based firmware update for the Korg hardware. He wanted to see if he could write some code to read that file on his own hardware. All it took was an audio jack and two jumper wires to get the Arduino ready to receive the audio file. His firmware reads the Binary Frequency-Shift Keying encoded data as the audio is played, then echos a checksum to prove that it works.

This would be a fantastic addition to your own projects. Since the audio connection only needs to be mono, it only takes just one Arduino pin to add this jack (the other is a ground connection). Having just played around with alternative ways to push data to a microcontroller ourselves, we might give this a try when we have some free time.

Comments

  1. tristan says:

    Wow, can we finally say iPhone remote arduino programming?

  2. chris says:

    The project looks promising. What is the difference to the Audioino bootloader?

    http://hackaday.com/2011/09/09/program-an-arduino-using-your-sound-card/

  3. Alex Rossie says:

    This sounds familiar, did someone do something similar earlier this year?

  4. thatguy says:

    This isn’t about programming an arduino, it’s about using an arduino to program something else.

  5. Mike Tsao says:

    Alex, thanks for referencing the Audioino project. I only got into Arduinos in November after seeing GE Color Effects Christmas lights in Costco, so I have some catching up to do on old Hack-A-Day articles. But wow, Chris’s work is awesome! It’s exactly the direction I wanted to go with TribeDuino, writing an audio bootloader for the ‘328. Very cool!

  6. j_jwalrus says:

    if there was a website that generated audio content, one could then reprogram an arduino (with a audio bootloader) on the go.

  7. Michael says:

    This reminds me of a number of Radio Shack computers of the early 80’s. Software was loaded and saved on a tape recorder in an audio format.

  8. Theodore Flokos says:

    I was wondering if you could programm using your own voice ?Since it can decode audio files then it should propably can decode our voice . Idea !!!
    Tin!!!

  9. Magnus K says:

    I remember in the 1980’s a radio channel P3 in Sweden had a program about Commodore 64 and broadcast files where you recorded it on tape and played it up in C64.
    I got some flashback.

  10. Just like my ZX Spectrum ;)

    CS

  11. Keith says:

    Cool! Now to make it retro add an external cassette from an old Commodore!

  12. Eugene says:

    What is old is new again. Kansas City Standard and other similiar standards have been around since the 70’s. I recall storing and loading programs on audio cassetes for KIM and SYM boards. The IBM PC had an audio storage function long after floppies and hard drives became common. Basically timing the duration of the zero-crossing to decode the fsk.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 96,468 other followers