BEEP communicator

Because all robots should beep

Similar projects worth following
This module is being created to produce robotic beeps and tones, and to also decode the tones back into meaningful data. This will allow communication between small robots using low bandwidth beeps.

Hardware will consist of a small speaker, a microphone and an STM32 ARM processor.

I want to use one of the ST dev boards to prototype this project. Having support for mBed, Arduino and GCC without having to purchase any programming tools makes the NUCLEO boards a no brainer for me.

The F303K8 is the smallest form factor board that supports DSP, so I'll plan to use it for now. The rest of the circuit is fairly straight forward. It basically consists of a way to get audio in and out of the microcontroller. An electret condenser mic with some buffering will feed the ADC input. On the output I'll plan to either bit-bang or PWM the speaker through a small N-channel FET. The circuit may (and probably will) evolve from this basic schematic, but it's a starting point and enough to start looking for parts.


Element14 shopping cart for prototype parts

Comma-Separated Values - 2.53 kB - 03/16/2018 at 23:21


  • 1 × NUCLEO-F303K8 ST development board
  • 1 × ABM-707-RC Pro Signal Microphone
  • 1 × KSSG2308 Kingstate Speaker
  • 1 × BC847C Discrete Semiconductors / Transistors, MOSFETs, FETs, IGBTs
  • 1 × RC0805FR-0710KL Resistors (Fixed) / Thick Film Surface Mount

View all 9 components

  • Testing tones

    MattF03/18/2018 at 01:15 0 comments

    Before I start coding I'll need to come up with some audio samples so I can create a set of tones to use as data symbols. I'd like to make it sound robotic and synthesizer tools are a good way to test what works.

    I've been looking at (no affiliation) mainly because it's online and I can save the output. 

    So far I've recognised that high-ish frequencies sounds good, and that using a musical key makes any combinations sound too... musical.

    Example audio so far

  • First parts order

    MattF03/16/2018 at 23:27 0 comments

    Parts to build two prototypes have been ordered. I've added the parts I chose to the project component list, I also uploaded a copy of the shopping cart in case anyone wants to see exactly what I order/cost etc.

    Once the parts arrive the the first step will be to get the dev boards running, then build the hardware and start generating some tones. In the meantime I can start generating some tones on my PC to see what frequencies/combinations I might want to implement. If anyone has any ideas, please let me know!


    Please hit like if you're interested in the project. Now that I've actually put money into this, it will really help me out.

View all 2 project logs

Enjoy this project?



PixJuan wrote 05/11/2018 at 20:21 point

Nice idea!
I was mentoring students for the project and they used a very simple way to spot some frequencies with pulseIn

I don't know if mbed has similar functions.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates