Programmable CW Morse Keyer / beacon

s suitable many for simple, mini projects. I attached speaker to Timer14 PWM output (Pin PA6) and LED (or optocoupler connected to PTT) to GPIO pin PA0:

Programmable CW Morse Keyer  beaconThe provided software is based on USB Virtual Com Port (VCP) device. The setup is done with command line interface using terminal from any PC. The setup is stored in the internal flash and PC is not required for normal operation. The mini beacon keyer can be used when powered with 5V.

For proper operation VCP driver is required. It can be downloaded from or local copy: VCP_V1.4.0_Setup After installation connect the device, use terminal and have fun.

OK, not so quick. The microcontroller must be reprogrammed first. Every STM32F0xx come with USB bootloader from the factory. After assembling the single sided PCB, double checking all components, the real fun can start:

  1. Download and install DfuSe from
  2. Start DfuSe and update firmware with the following DFU file
  3. Restart the device and install VCP driver
  4. Connect the device and find which COM port has been assigned to the device
  5. Start your favorite terminal program
  6. Setup the device with provided commands
  7. Repeat step 6 if neccessary, store the setup(s)
  8. Enable one of the setups for autorun operation

Now the device can be used without PC. Power it with 5V, wait 10 seconds to start the autorun operation and make some “beaconing” online.


The source code is provided on GitHUB>>>

The device can be re-programmed with any SWD debugger (ulink, jlink, stlink, …)

Commands reference will be provided soon. Stay tuned.

Command line interface

Different sets of commands are provided for adjusting the operation of the device: audio settings, timing running and repetition, message entry and controlling settings storage in internal flash.

When invalid command is entered, the device displays brief help:

 MSG ...Text...
 DEL x
 ID ...Text...

For more detail:   Programmable CW Morse Keyer / beacon

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us: