Transmitting data via ultrasound without any special equipment

9 points by sknebel


jbert

At a past IoT company, we implemented the pairing process over sound. The device had camera, microphone and speaker but everyone disliked the idea of QR codes.

So we encoded wifi network, wifi pw and “single-use-opaque-setup-token” (overall ~<= 128 bytes) into a short piece of audio. Error codes from connecting to wifi were chirped back. The device unpacked the info, used the wifi details to hop onto the network and then redeemed the setup token on a cloud endpoint. Trust relationship established.

We did want reliability (without ACK traffic) so we added forward error correction (can’t remember how much…20% overhead?).

For the encoding method, we used DTMF https://en.wikipedia.org/wiki/DTMF_signaling but shifted the frequencies up a bit (one octave?) to get something more pleasing to the ear. I don’t recall the bitrate, but we played for ~5s or so, so maybe 20-25 bps?

(We didn’t do ultrasound - if only for the UX side of things. The user could understand what was going on.)

It ended up being very reliable and relatively much-loved, in terms of how reviewers mentioned it.