I have been investigating ‘lost APRS packets’, a result of many root causes.
One is a perception that when I drive in the local area, I often do not hear my own digi ‘echo’ yet I find that it did receive a packet and submit it to APRS-IS. This problem is much more apparent using a TNC-X that with any other KISS TNC in its place.
A possible explanation is that it did echo but I did not hear it due to collision with another digi.
So that led me to explore TNX-X’s channel access algorithm, specifically whether it implemented the AX.25 ppersist algorithm, and whether it properly acted upon PPERSIST, SLOTTIME, and TXDELAY KISS commands.
In response to a question, TNC-X’s author advised that TNC-X ignores KISS commands, and that it did implement ppersist but with hardcoded values. and:
The recommended values for slottime are 10 to 20 (100 to 200 ms) and I was right about that, it is 10 in TNC-X. The recommended values of persist are 60 to 70 and TNC-x has a value of 64. That means a 1 in 4 chance of transmitting. In practice, I really don’t notice that there is a delay.
I have done drive tests with a Paccomm Tiny-2 Mk-2 in KISS mode (configured for SLOTTIME 10 (100ms), PPERSIST 64, and TXDELAY 150ms and with open squelch DCD) and TNC-X.
In the local context with two W2 digis on prominent hills, I do not expect my own fill in digi to be first to channel most of the time, if it is, it is a sign that it either does not implement ppersist properly or is using aggressive parameters.
On drive test with open squelch and listening to the channel following a posit from the mobile, the Paccomm is first to channel well less than 50% of the time, a little dependent on channel congestion, and this is what you might expect with competition from the two W2 digis.
By contrast, the TNC-X is almost always (>90%) first to channel.
The same test was also conducted with a MFJ-1270B which performed similarly to the Paccomm.
My conclusions are that for some reason TNC-X is agressive in channel access, possibly explained by:
- of a defective implementation of ppersist;
- or slow DCD (TNC-X – DCD behaviour); and
- some other factors.
Lacking the capacity to vary the ppersist parameters as a result of the half baked KISS implementation, it was not possible to validate their implementation by experiment.
In any event, TNC-X is demonstrably agressive in channel access and in my view, unsuited to my application as a digi/iGate.
The 25 year old Paccomm Tiny-2 Mk-2 and MFJ-1270B in KISS mode function according to standards, and are a superior devices on the channel.