Alan, please be sure to keep correct subject line.
Right. ofdm.c
voidofdm_sync_state_machine(structOFDM *ofdm, uint8_t*rx_uw)
there are two synced states, synced (ongoing) and trial sync (when
sync is getting established for the first time- checking if this is real
sync or bogus sync due to frquency offset aliasing)
the difference in bits between the unique word template and the actual
received unique word is checked
(lines 1494..1496)
When synced (ongoing) if the unique_word (uw_errors) error count is >
2 (IE more than 2 bits different from the template, ofdm->sync_counter
is incremented.
when ofdm->sync_counter is >6 AND ofdm->sync_mode== autosync (line 1540)
, sync will be dropped.
So, since you can compile from source, I'd like you to insert some extra
debug printfs or whatever and above line 1533,
IE immediately before
if(ofdm->sync_state== synced) {
please print out : (just use %u style, that's fine, do a explicit cast
to unsigned int for each variable in case they are chars )
ofdm->sync_state
ofdm->uw_errors
ofdm->sync_mode
ofdm->sync_counter
IE
printf("SYN: %u %u %u %u \r\n",(unsigned int) ofdm->sync_state, etc etc
just the integer values will be fine, we can look up the numbers.
So the sync state machine could do with some refinement, could be error
easily programmer error prone . I will put that on my to-do list to re
write .
On 7/15/2020 8:02 AM, Al Beard wrote:
Hi Glen and David,
In my testing of "parrot" derived from "freebeacon", mode 700D,
I'm "seeing" sync holding up when it shouldn't.
I'm running relatively low input levels, similar to what
_______________________________________________
Freetel-codec2 mailing list
Freetel-codec2@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freetel-codec2