Skip to main content

Improvements to use the FT8 protocol on the Cortex-M base

Improvements to use the FT8 protocol on the Cortex-M base

Several experiments are underway to use FT8 on the Cortex-M base. The previous experiment can be seen in the link below.
http://www.hamskey.com/2019/05/ft8-wsjt-x-20-protocol-decoding-in.html




1.Previous experiment
 1.1 Implement FT8 protocol to operate on Cortex-M base
 Refrence :
  https://physics.princeton.edu/pulsar/k1jt/wsjtx.html
  https://physics.princeton.edu/pulsar/k1jt/wsjtx-2.1.0-rc5.tgz
  https://github.com/kgoba/ft8_lib
  https://github.com/phdlee/ft8_lib (forked from kgoba/ft8_lib and modified)

  and gcc fortran compiler

 1.2 Adjust Sampling Frequency and FFT size to use FPU of MCU
   http://www.hamskey.com/2019/05/ft8-wsjt-x-20-protocol-decoding-in.html

 1.3 Previous experiment results
  The FT8 protocol should be completed decoding and ready for next transmission within 15 seconds. The encoding for FT8 transmission is very simple and time consuming, so Ignore it.
  For normal communication, it is still necessary to reduce the time by about 2 to 3 seconds.

2. Parallel processing using DMA and FPU for speed improvement
 The experimental conditions are the same as before.

 2.1 Structure for FT8 decoding
  Approximately eight steps are required to decode FT8 in Wsjt-X 2.0. I divided the time consuming part into four large parts.
Power Data (frequency domain data per time unit)

The FT8 requires 12.65sec of transmission time, but I added 900msec to account for the time error. (This time may change later)

After receiving the data for about 13.5 seconds, the FFT process is performed.
It is the longest part of decoding the FT8 signal. (3.5sec)

I adjusted the sampling rate and the FFT unit to use this part in the Cortex-M's built-in FPU. As a result, I reduced the time by about 2 seconds.
http://www.hamskey.com/2019/05/ft8-wsjt-x-20-protocol-decoding-in.html


 2.2 Modified Structure for FT8 decoding

Power Data (frequency domain data per time unit)

I changed the structure so that I could process the FFT together while receiving the signal.

Receiving data is handled by DMA, while Main Core is processing FFT while DMA is receiving data. Note that the FFT processing must end within the DMA 1 cycle.
To understand Cortex-M's events, handlers, and pending times, I recommend the following book: https://www.amazon.com/Definitive-Guide-Cortex-Cortex-M0-Processors/dp/0128032774


This method reduces most of the time required for FFT.


3. Hash callsign (Recent callsign)
 In Wsjt-x 2.0, a non-standard callsign was added to extend the FT8 protocol. This is the best way to add functionality without changing the length of the protocol.

non-standard callsign has 58bit Length
1234567890123456789012345678901234567890123456789012345678
1111111111111111111111111111111111111111111111111111111111
=> Dec 288230376151711743

Non-standard callsign can only use the following 38 characters.
 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ/

38^11 = 238572050223552512
58bit can transmit up to 11 characters.

Below is the processing structure of Non standard Callsign added in Wsjt-x 2.0.

In this experiment, I added the above structure to make it compatible with Wsjt-x 2.0


4. Experiment
 The experimental conditions are the same as before.
I used one UART as the MCU's output device for debugging.

 4.1 Processing speed improvement test
Ready


Start Receive and FFT -> Calculate power
In the screen below, each time two "." Are output, the FFT operation is performed by parallel processing.


complete decoding


620ms + 887ms = 1507msec


Almost came close to the goal. But there is a problem.
The less the number of decoded messages, the longer it takes.
Up to 1 sec can be increased.
That is, the time to decode the message is variable. 800msec ~ 1500msec


 4.2 non standard callsign test
non standard protocol ('CQ OZ/LA6OP') is decode and displayed normally on the screen below.

'OZ / LA6OP' will be stored in the hash10, has12, and hash22 repositories respectively.


The stored hash code is being converted normally.
(IZ4... <OZ/LA6OP> >


Below is another example of a non standard call


Below is another example of a non standard call


Test Video for this article


5. Conclusion
Perhaps the next experiment may be delayed.
My main project (for business) has started and I am going to be very busy with this semester class lecture.
My seasonal courses are matlab related classes. Maybe I could use this project for my class.
Whenever it is time, I will worry for improvement.

Thanks for reading.
Ian KD8CEC




Comments

  1. Replies
    1. IEEE Final Year projects Project Centers in Chennai are consistently sought after. Final Year Students Projects take a shot at them to improve their aptitudes, while specialists like the enjoyment in interfering with innovation. For experts, it's an alternate ball game through and through. Smaller than expected IEEE Final Year project centers ground for all fragments of CSE & IT engineers hoping to assemble. Final Year Projects for CSE It gives you tips and rules that is progressively critical to consider while choosing any final year project point.

      Spring Framework has already made serious inroads as an integrated technology stack for building user-facing applications. Spring Framework Corporate TRaining the authors explore the idea of using Java in Big Data platforms.
      Specifically, Spring Framework provides various tasks are geared around preparing data for further analysis and visualization. Spring Training in Chennai


      The Angular Training covers a wide range of topics including Components, Angular Directives, Angular Services, Pipes, security fundamentals, Routing, and Angular programmability. The new Angular TRaining will lay the foundation you need to specialise in Single Page Application developer. Angular Training

      Delete
  2. Dearest Esteems,

    We are Offering best Global Financial Service rendered to the general public with maximum satisfaction,maximum risk free. Do not miss this opportunity. Join the most trusted financial institution and secure a legitimate financial empowerment to add meaning to your life/business.

    Contact Dr. James Eric Firm via
    Email: fastloanoffer34@gmail.com
    https://urgentloanoffer22.blogspot.com/
    Whatsapp +918929509036
    Best Regards,
    Dr. James Eric.
    Executive Investment
    Consultant./Mediator/Facilitator

    ReplyDelete
  3. his blog is really useful and it is very interesting thanks for sharing, it is really good and exclusive.
    salesforce Training in Bangalore
    uipath Training in Bangalore
    blueprism Training in Bangalore

    ReplyDelete
  4. Nice blog..! I really loved reading through this article. Thanks for sharing such a amazing post with us and keep blogging...Well written article

    salesforce Training in Bangalore
    uipath Training in Bangalore
    blueprism Training in Bangalore

    ReplyDelete
  5. Really awesome blog!!! I finally found great post here.I really enjoyed reading this article. Thanks for sharing valuable information.
    Data Science Course
    Data Science Course in Marathahalli
    Data Science Course Training in Bangalore

    ReplyDelete
  6. wonderful article. Very interesting to read this article.I would like to thank you for the efforts you had made for writing this awesome article. This article resolved my all queries.
    Data science Interview Questions
    Data Science Course

    ReplyDelete
  7. Great post i must say and thanks for the information. Education is definitely a sticky subject. However, is still among the leading topics of our time. I appreciate your post and look forward to more.

    Correlation vs Covariance

    ReplyDelete
  8. Very interesting to read this article.I would like to thank you for the efforts you had made for writing this awesome article. This article inspired me to read more. keep it up.
    Correlation vs Covariance
    Simple linear regression

    ReplyDelete
  9. Thank you very much for sharing such a useful article. Will definitely saved and revisit your site
    Data Science Certification in Bangalore

    ReplyDelete
  10. Glad to chat your blog, I seem to be forward to more reliable articles and I think we all wish to thank so many good articles, blog to share with us.

    Data Science Course

    ReplyDelete
  11. I will really appreciate the writer's choice for choosing this excellent article appropriate to my matter. Here is deep description about the article matter which helped me more.

    Data Science Training

    ReplyDelete
  12. I really enjoy simply reading all of your weblogs. Simply wanted to inform you that you have people like me who appreciate your work. Definitely a great post. Hats off to you! The information that you have provided is very helpful.
    Data Science Institute in Bangalore

    ReplyDelete
  13. Very interesting blog. Many blogs I see these days do not really provide anything that attracts others, but believe me the way you interact is literally awesome.You can also check my articles as well.

    Data Science In Banglore With Placements
    Data Science Course In Bangalore
    Data Science Training In Bangalore
    Best Data Science Courses In Bangalore
    Data Science Institute In Bangalore

    Thank you..

    ReplyDelete
  14. After reading your article I was amazed. I know that you explain it very well. And I hope that other readers will also experience how I feel after reading your article.
    Ethical Hacking Course in Bangalore
    Certified Ethical Hacker Course

    ReplyDelete
  15. Wow! Such an amazing and helpful post this is. I really really love it. I hope that you continue to do your work like this in the future also.
    Ethical Hacking Training in Bangalore
    Ethical Hacking Training

    ReplyDelete
  16. Thumbs up guys your doing a really good job. It is the intent to provide valuable information and best practices, including an understanding of the regulatory process.
    Cyber Security Course in Bangalore

    ReplyDelete
  17. This post is great. I reallly admire your post. Your post was awesome.
    data science course in Hyderabad

    ReplyDelete
  18. I am looking for and I love to post a comment that "The content of your post is awesome" Great work!

    data science interview questions

    ReplyDelete
  19. Very interesting to read this article.I would like to thank you for the efforts you had made for writing this awesome article. This article inspired me to read more. keep it up.
    Correlation vs Covariance
    Simple linear regression
    data science interview questions

    ReplyDelete
  20. Really nice and interesting post. I was looking for this kind of information and enjoyed reading this one. Keep posting. Thanks for sharing.
    tableau training in guduvanchery

    ReplyDelete
  21. The article unambiguously showed each of the positive and negative sides of the issue. This is indeed a thought infuriating article.
    SAP training in Kolkata
    SAP training Kolkata
    Best SAP training in Kolkata
    SAP course in Kolkata

    ReplyDelete

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.

uBITX with Nextion LCD (CEC Firmware) - Installation and Introduction

uBITX with Nextion LCD (CEC Firmware) - Installation and Introduction uBITX CEC Firmware supports various LCD since Version 1.08 (16x02 Parallel, 20x04 Parallel, 16x02  I2C, 20x04 I2C, 16x02 Dual LCD with I2C).
Supports Nextion LCD (Graphic LCD) from Version 1.09, Version 1.09x is primarily aimed at Nextion LCD support. Also 1.09x will continue to be Beta version. If you want a stable version, please use 1.08 or 1.1 version to be released in the future.

Release EU1KY AA Firmware CEC Version 1.01 and 1.0a

Release EU1KY AA Firmware CEC Version 1.01 and 1.0a
It is the stabilized final version of EU1KY AA. Updates starting with Version 0.1 continue to add features. Please refer to the link below for added features.

I have separated the Version to 1.01 and 1.0A for users who want to use AA only for instrumentation purposes.

*  If you want to use all the features added up to Version 0.71, please use Version 1.0A.
*  If you want to use it only for instrument use, please use Version 1.01



Version V1.0A


Version V1.01



1.Download Firmware Version 1.01 and 1.0a
https://github.com/phdlee/antennaanalyzer/releases
Version 1.01 (Version with only antenna analyzer function) https://github.com/phdlee/antennaanalyzer/releases/download/v1.01/AA_CEC_V1.01.zip
Version 1.0A (Version with all features added up to Version 0.71) https://github.com/phdlee/antennaanalyzer/releases/download/v1.01/AA_CEC_V1.0A.zip
ConvertRXP (Converters for using AA measurement data in other tools such as Matlab) https://github.com/phd…