You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Bug in FT8 Telemetry mode and an easy fix. (Atmel tool chain and possibly others) #18
In JTEncode.cpp line 887 the line: snprintf(temp_msg, 19, "%*s", 18, c18); sets temp_msg to a zero length string. This causes the variable "message" further down in the code to have a zero 1st byte and corrupts the telemetry message.
Replace the snprintf call with the following: snprintf(temp_msg, 19, "%18s", c18);
I am running the code on an Arduno Pro Mini (Atmel chip) and it appears that the %*s formatter is not functioning correctly on this tool chain. Since the length is hard coded, the simpler %18s will work.
I have the same problem with Arduino and bluepill too. in decoding the message with WSJT-X the last char of message is getting truncated. the SquirrelEng solution didn't work for me.
Plus another problem:
a normal message like "73 DL9SAU" is interpreted as hex telemetry.
The code checks for hex until blank. If blank is reached, or end of string, the function ends. It has detected at this stage "73" as hex string. -> 0x73..... (rest are fill characters) are transmitted.
Furthermore, there is much useless copying aroound array c18.
Activity
NT7S commentedon May 2, 2019
Thank you very much, I will check this soon and push the change when I can verify the fix.
sajjsamm commentedon Apr 16, 2020
I have the same problem with Arduino and bluepill too. in decoding the message with WSJT-X the last char of message is getting truncated. the SquirrelEng solution didn't work for me.
dl9sau commentedon Aug 18, 2021
I had the same problem.
Plus another problem:
a normal message like "73 DL9SAU" is interpreted as hex telemetry.
The code checks for hex until blank. If blank is reached, or end of string, the function ends. It has detected at this stage "73" as hex string. -> 0x73..... (rest are fill characters) are transmitted.
Furthermore, there is much useless copying aroound array c18.
-> This fixes the issues:
FT8 HEX message fix