Blog Home

Ultrasonic Arduino-to-Arduino Communication

Arduino TeamJune 1st, 2018

In the video below, Brazilian maker Eduardo Zola shows us that you don’t necessarily need radio waves to pass messages between Arduino boards; instead, he’s using ultrasonics. 

Zola’s setup features TX and RX transducers desoldered from an HC-SR04 module along with a pair of Unos to transmit text short distances. An LM386 amplifier and LM393 comparator are also used for the receiver.

While the transmission can easily be interrupted by putting a hand between the TX and RX, this configuration would certainly have some useful applications. So, how does it work exactly? As Hackaday explains:

Looking through the source code for the transmitter and receiver, we can see it’s about as basic as it gets. The transmitter Arduino breaks down a given string into individual characters, and then further converts the ASCII to eight binary bits. These bits are sent out as tones, and are picked up on the receiving end. Once the receiver has collected a decent chunk of tones, it works through them and turns the binary values back into ASCII characters which get dumped over serial. It’s slow, but it’s simple.

If you’d like to try it yourself, code and a full parts list can be found on the Zola’s website.