Also, ham radio operators are doing some amazing things with audio-encoded data. You can send a message halfway around the world with just a few watts and a person with a computer on the other end can received and decode it, even if the signal itself is _below the noise floor_. Of course, the tradeoff is time: it takes a few minutes to transmit the small amount of data required to make a contact.
Video on how it looks like https://youtu.be/Q_fTfGJFK2A?t=68
https://m.youtube.com/watch?v=wzkAeopX7P0
I suppose there are only so many ways to modulate a data signal.
Once upon a time transferring digital data over analog channels brought us fax machines and dial-up internet.
The advantage of this is that it is a very cheap way of adding such communication channel to your device.
r2t2 is a command-line tool for transmitting data through sound using the PC speaker on the motherboard. The name of the tool is a reference to the R2-D2 robot from Star Wars :)
In short, you type some message and it gets FSK modulated and transmitted via sound through the PC speaker. Note that this is the speaker/buzzer that you connect to the motherboard and not the regular speakers that you connect to the sound card.
I also made a simple web page that listens to the sound emitted by r2t2 and decodes the received messages. The page can be used by simply opening it on your phone and placing the phone near a computer/device that emits data with r2t2.
I made this tool mostly for fun, but I think it might have some useful applications too. The advantage of this type of communication is that the hardware is very cheap (~$1/speaker), does not require a sound card and the software is very simple and does not use any 3rd-party audio libraries.