On 24/07/2019 17:19, John Pumford-Green wrote:

Compare this to Rosario's message:

120 120 027 033 057 065 000 108 000 027 034 041 *026* 118 126 ~~~ 126

~~~ 126 126 126 ~~~ ~~~ 040 ~~~

His message shows that YaDD calculated an ECC value of 84 (ECC: 84 ERR) which was obtained by XORing together the available symbols:

"120 027 033 057 065 000 108 000 027 034 041 026 118 126 126 126 126 126 040"

A slight error in my explanation....

In Rosario's message YaDD calculated the ECC of 84 from the symbols:

120 027 033 057 065 000 108 000 027 034 041 026 118 126 126 126 126 126

This gives a value of 84.

Although the "040" is the "EOS" symbol YaDD doesn't use it in its ECC calculation:

The EOS symbol is sent 3 times:

In the "correct" version the final 4 symbols are :

122 062 122 122

EOS ECC EOS EOS

YaDD appears to only use the EOS found in the first of these positions. In Rosario's message this was not received (~~~).

~~~ ~~~ 040 ~~~

EOS ECC EOS EOS

The second EOS copy was received as "040" but is ignored in the ECC calculation. the value of "40" is what gives rise to YaDD's display of "EOS: UNK/ERR" since 40 is not a valid decipherable EOS symbol.

The message also contains no ECC value, so the assumed "transmitted ECC" is thus "0". The calculated "received ECC" is "84" and thus the ECC check leads to the "ECC 84 ERR" error being displayed ( 84 != 0 ).

Cheers,

John

Gm4SLV