WSJT-X Developers, I have been studying the WSJT-X source code to learn how it decodes FT8 signals to enhance my rather outdated (1980s) understanding of DSP and information theory. There is one part of the source code that I can’t figure out and I was hoping that one of the WSJT-X developers could point me in the right direction.
The source code in question is lines 168 through 215 of lib/ft8/ft8b.f90 (Git tag wsjtx-x 2.1). This source code appears to implement a “soft demapper” that takes groups of 1, 2 or 3 successive symbol observations and turns these into groups of 3, 6 or 9 log likelihood ratios that are subsequently consumed by one of the LDPC decoders. As part of the demapping process, the Gray code permutation applied to symbols at the transmitter is removed. Is there a textbook or specific journal/conference papers that describe how this demapper works? I can figure out the algorithm being used, but I am looking for an explanation as to why that algorithm generates a good approximation to the LLR for FT8’s 8-GFSK modulation, and what specific channel impairments it is trying to deal with. I was also wondering how the specific Gray code mapping in FT8 was chosen? It is clearly not the “reflected binary code” that normally passes for a Gray code, so clearly it is something else that I don’t yet understand. James (VK3JPK) _______________________________________________ wsjt-devel mailing list wsjt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wsjt-devel