Skip to content

applications/{audioutils,examples}: Morse player#3653

Merged
acassis merged 2 commits into
apache:masterfrom
linguini1:morsey
Jul 21, 2026
Merged

applications/{audioutils,examples}: Morse player#3653
acassis merged 2 commits into
apache:masterfrom
linguini1:morsey

Conversation

@linguini1

@linguini1 linguini1 commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Summary

I wrote a Morse code library based on the structure used by rtttl-c and
included it into the NuttX build systems as a library.

Then, I created a command-line application that plays a user string as Morse
code, either to the console or over a GPIO device (for now, more devices can be
added later).

There is a twin PR to the kernel with documentation and sim:txmorse config: apache/nuttx#19493

Here are the commits:

examples/txmorse: Example application for transmitting Morse code

Adds an example application leveraging the Morsey library for
transmitting Morse code, either to the console (debug) or to GPIO
devices for now as the two supported sinks.

audioutils/morsey: Add the Morsey library

This commit adds the Morsey library (Apache 2.0 licensed) to be
downloaded from an external repository so it can be used in NuttX
applications.

This library parses ASCII text into Morse code marks to be played by a
user-implemented 'transmit' function (i.e. over an LED, buzzer, audio
sink, etc.).

Impact

Morse code can be transmitted easily on NuttX.

Testing

Tested the application and library by transmitting to the console. I also put
the application on my Peanut Altimeter
and had it play Morse code over the buzzer. I confirm that it sounds correct,
translation works and that the transmission speed configuration works.

nsh> txmorse "sos sos sos"
 ... --- .../... --- .../... --- ...
nsh> 

This commit adds the Morsey library (Apache 2.0 licensed) to be
downloaded from an external repository so it can be used in NuttX
applications.

This library parses ASCII text into Morse code marks to be played by a
user-implemented 'transmit' function (i.e. over an LED, buzzer, audio
sink, etc.).

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
Adds an example application leveraging the Morsey library for
transmitting Morse code, either to the console (debug) or to GPIO
devices for now as the two supported sinks.

Signed-off-by: Matteo Golin <matteo.golin@gmail.com>
@acassis
acassis merged commit c814059 into apache:master Jul 21, 2026
53 of 79 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants