Skip to content
  • Manolis Surligas's avatar
    Redesign of the AX.25 decoder · 767e4e3d
    Manolis Surligas authored
    This commits introduces a significant redesign of the AX.25 decoding
    block. Due to the poor AX.25 sync flag, the decoders exhibited too many
    false alarms. To deal with this problem, we introduced the quadrature
    demod filter block, that tried to measure the SNR based on the running
    variance of the signal. The problem with that was that the user should
    have to fine tune two parameters, the one related with the amplitude of
    the incoming signal and the second one related with the window that the
    calculations should take place. This solution worked until now, but we
    can always increase the performance.
    
    The new AX.25 decoder stores the bitstream in a queue and always tries
    to exlpoit possible valid frames in the queue. If now sync flags have
    been encountered, the queue is flushed. After a valid frame extraction,
    bits corresponding to this frame are also deleted from the queue.
    
    This technique requires more memory and CPU, but it increases a lot the
    decoding performance.
    767e4e3d