diff --git a/SP5WWP/m17-coder/m17-coder-sym.c b/SP5WWP/m17-coder/m17-coder-sym.c index 0dae4e4..7abc24c 100644 --- a/SP5WWP/m17-coder/m17-coder-sym.c +++ b/SP5WWP/m17-coder/m17-coder-sym.c @@ -659,6 +659,7 @@ int main(int argc, char* argv[]) randomize_bits(rf_bits); send_data(frame_buff, &frame_buff_cnt, rf_bits); fwrite((uint8_t*)frame_buff, SYM_PER_FRA*sizeof(float), 1, stdout); + lich_cnt = (lich_cnt + 1) % 6; //continue with next LICH_CNT //if we are done, and the stream is signed, so we need to transmit the signature (4 frames) if(signed_str) diff --git a/SP5WWP/m17-decoder/m17-decoder-sym.c b/SP5WWP/m17-decoder/m17-decoder-sym.c index 4585fda..775d7e3 100644 --- a/SP5WWP/m17-decoder/m17-decoder-sym.c +++ b/SP5WWP/m17-decoder/m17-decoder-sym.c @@ -596,7 +596,7 @@ int main(int argc, char* argv[]) lich_cnt=lich_b[5]>>5; //If we're at the start of a superframe, or we missed a frame, reset the LICH state - if((lich_cnt==0) || ((fn % 0x8000)!=expected_next_fn)) + if((lich_cnt==0) || ((fn % 0x8000)!=expected_next_fn && fn<0x7FFC)) lich_chunks_rcvd=0; lich_chunks_rcvd|=(1<