Skip to main content

FT8 (Wsjt-x 2.0) protocol decoding in Cortex-M for experiment

FT8 (Wsjt-x 2.0) protocol decoding in Cortex-M for experiment

I implemented FT8 signal decoding on the STM32F746G-Disc board for Expermental.
I want to test whether Cortex-M based FT8 communication is possible. I used Wsjt-x 2.0 and some source code to enable FT8 decoding on the Cortex-M7 base.

I received the FT8 signal directly to the microphones (mems) on the STM32F746G-Disc board.

1.Implementation and experiment preparation
I have used web sdr for the experiment and can do real time testing.

The decoding comparison used Wsjt-x 2.05 (for FT4)

The red square in the picture below is the microphone for receiving the FT8 signal.


First Decoding :
Compared to Wsjt-x 2.0, decoding is delayed about 2 seconds.

Second Decoding : Wsjt-x has already been decoded.

Cortex-M was decoded about 2 seconds later.

Test Video

Several improvements have been made to the Cortex-M, but it is still difficult to use.
If 2 seconds are delayed, the next signal transmission has already begun.

The STM32F746 is 216Mhz and I have been successful in overclocking near 300Mhz a few years ago. (300Mhz is not accurate)

But I will not solve this problem with Overclock. I will keep the CPU speed below 216Mhz for stability.

The part that needs the most time to decode the FT8 protocol is the FFT processing part.

FT8 : Tone spacing = 6.25Hz * 8FSK = 50Hz

FFT Size : 3840 = 1920 * 2
             1920 = 12000(bitrate) / 6.25Hz (Tone spacing)
In this way, the FFT Bin unit will be 6.25 Hz.

I modified the Bitrate to slightly reduce the FFT Size while maintaining 6.25Hz. I also modified the Kiss-FFT library to work with Cortex-M.

I am going to make a few more improvements to fit Cortex-M. As a result of the improvement, if it is available in Cortex-M, I will make it public.

Thank you for reading


  1. Hello, I am charles hill, w5baa. After having tried decoding FT8 on an STM32F746 board myself I am quite interested in your experiment.

    I have authored several SDR projects using embedded processors including the SDR2GO and STM32_SDR projects. I also have an SDR radio running on the STM32f746.

    Will it be possible to get a copy of your firmware if I promise not to bug you with questions and suggestions?



  2. Hi Have been looking for some one on the web with the imagination and skill to implement FT8 as a stand alone project as I am not capable of doing it myself. Many thanks Pete

  3. If the protocol allows for behavior that the pattern-matching algorithms have difficulty dealing with. Check us out

  4. Top 10 best slots casinos for 2021 - SOL.EU
    Best Slots Casino: Best Real Money Slots sporting100 Sites 2021 · Red Dog Casino: Best Overall Slots Casino For USA Players · Ignition Casino: Best Casino For Roulette

  5. FT8 protocol decoding is a digital communications protocol that is widely used in amateur radio. It allows for reliable transmission of messages even in challenging propagation conditions. To effectively decode FT8 signals, it is often necessary to hire professional services such as signal processing and data analysis experts, who can use specialized software and hardware to capture and analyze the signals. These services can help ensure accurate decoding and interpretation of FT8 transmissions.

  6. I am looking forward to read more helpful blog from this site. Keep posting.

  7. Delving into the world of experimental radio communication, decoding FT8 (Wsjt-x 2.0) protocol in Cortex-M opens up exciting possibilities for enthusiasts. As enthusiasts embark on this journey, it's essential to find reliable resources. For students balancing their studies, finding cheap law essay writers can be akin to discovering a valuable guide in their academic journey, ensuring affordability without compromising quality.


Post a Comment

Popular posts from this blog

Release CEC Firmware v1.200 for uBITX All version(include V2, V3, V4, V5)

Release CEC Firmware v1.200 for uBITX All Version (include v2, v3, v4, v5) I did the firmware work for v5 when uBITX V5 was released, but I release it now. I received the feedback from a thankful beta tester and tested it myself by converting my uBITX v3 to v5 but I was not sure. I ordered the uBITX V5 and delivered the correct uBITX V5, so I made a little more fine-tuning. If you use V2, V3, V4, you do not need to update this firmware.

Introducing UV-K5 Version 0.1P (CW)

  Introducing UV-K5 Version 0.1P (CW Mode) CW-related functions have been added to version 0.1P. The spectrum function has been removed but is maintained in the source code. Later, when the source code is distributed, you can activate it and use it if necessary. This version is for testing purposes only. It will be redistributed as the stable version 0.2 in approximately 1-2 weeks. If you don't want to beta test, you can wait a week or two and download 0.2

Introduction to UV-K5 HF Fullband receive version 0.3

Introduction to UV-K5 HF Fullband receive Version 0.3 This is an introduction to UV-K5 HF full-band reception firmware 0.3HF using SI4732-A10. This version is released separately from the existing UV-K5 CEC firmware version. because space is needed to store a large PATCH file to use SI4732-A10's SSB. 0.3HF added several functions to use SSB for shortwave radio and amateur radio.