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.


3 Responses to “Ultrasonic Arduino-to-Arduino Communication”

  1. writepaper Says:

    Thank you for this post. This is very interesting information for me.

  2. marcorizzinelli Says:


  3. ZKRA Says:

    hello,to make a query, in this semester my teacher asked us for a project that is to make the communication of two ultrasonic one in front of the other.
    which one will be the issuer and the other that will be 5m from the issuer will be the receiver.
    she asked us that in the receiver there were some LEDs that issued the actions that we would send from the issuer. and in the emitter there would be pushbuttons that through this the signal of the action is sent.
    could you access us on how to carry out this project?

Leave a Reply

You must be logged in with your Arduino account to post a comment.