MicIO – HTML5 to MicroController Communication through a headphone jack
colinbookman.com
colinbookman.com
http://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signa...
BTW, with the new Bluetooth Low Energy protocol, you don't need a $100K license to interface with iOS devices anymore: http://www.mkroll.mobi/?page_id=386
While its fairly nice, android support is all over the place. Each manufacturer has their own library. Then you need to factor in all that time spent hooking into the various native code libraries.
With something like micIO all you'd need is a 4 pole minijack and an HTML5 browser. Aka all smartphones minus windows phone (http://caniuse.com/audio-api).
For low bandwidth applications this can be pretty useful. Think about all those wearable electronics.
Obviously work still needs to be done to get micIO to a stable state.
Despite their claims it is not really open source, but you can buy the official dev kit for $100 and it gives you access to the SDK, Soft devices and an SWD programmer (SWD is like JTAG but for ARM).
Great hardware though. The only alternative I've seen is the TI chips and they require the purchase of a $3k compiler!
Good stuff!
I figured thats where he was going and was kind of surprised to see the multi-tone setup.
The more advanced ham radio guys are experts at using vaguely communications width bandwidths at often very lot signal to noise ratios to send as much error corrected data as possible.
20 years ago you'd demo something like PSK-31 using two COTS laptops just singing out the speakers and it would work pretty well. Newer modulation schemes are obviously faster / lower SNR / better error recovery / better PAR (peak average ratio) etc. A smart telecom engineer can run right up against the Shannon limit and flexibly trade off against limitations, either SNR or audio bandwidth or transfer speed or synch / preramble time...
I really like this since it's trivial to implement and adds less than $1 to the BOM cost of the hardware even in single units. There are quite a few devices I've wanted to build that only need a very simple UI to configure them and this would be perfect.
And for a plus, it's Open Source Hardware so you can use it without guilt.
I do worry that the frequency of their flashing may be in the zone to trigger seizures in those that are susceptible, though, but this is an easy problem to work around. Maybe using a single NRZ signal like 110 bps serial transmission.
http://www.bloomberg.com/professional/files/2012/10/b-unit_2...
You don't really need an FFT (expensive) to decode these 16 frequencies. Instead, you can shape them into square waves with a software Schmitt trigger, then measure time between transitions. When n successive transitions indicate the same frequency, you emit the corresponding nibble.
The more frequencies you use in your encoding, the longer it takes to discriminate in the receiver. I think this is why real-world FSK systems are usually BFSK.
I'm sure it can be fully duplexed using the "mic jack"
Also epic use of WebAudio. :)
That said, is there no such thing as a Lightning-to-USB converter cable? You'd expect such devices to exist.
The closest we have to this right now is the Lightning to USB Camera Adapter, which has a fair number of limitations, but I see no reason that a more general device couldn't be made: http://www.imore.com/playing-around-apple-lightning-usb-came...
* midi signals * plain audio signals * looking like a usb flash drive to the built in photos app
That's the whole list. The only one that seems vaguely useable for something like raw IO is midi signals!
Btw this is generally how cheaper rc controllers talks to simulators.
This is a given when it comes to any current technology and need not be mentioned as it is well known.