
FRACK Timers
With normal KISS the frack timer has to be started when a frame is sent to the TNC, as the TNC doesn’t notify the node when the frame has been sent.
A long time (probably about 30 years) ago G8BPQ added a feature called ACKMODE
to his KISS EEPROM images to resolve this issue.
With ACKMODE
enabled, the TNC sends a notification when it has sent the frame so the FRACK timer can then be started. Kantronics added this (and a couple of G8BPQ’s other features) to their KISS mode and called it XKISS
.
ACKMODE
is implemented in a few other TNC’s (UZ7HO’s Soundmodem/QtSoundModem and G8BPQ’s KISS ROM image for the Teensy), but it isn’t (yet) included in DireWolf.
There was a patch created by G8BPQ for Direwolf to add ACKMODE
, but as QtSoundModem is now available for Linux it is recommend using that instead of Direwolf.
If using the AGWPE interface, the timing is done within the TNC.
If using ordinary KISS then FRACK
has to be at least long enough to transmit a window of frames, plus reasonable turn-round time, which will depend on PACLEN
and MAXFRAME
, but will be quite a long time.
FRACK
is dynamic in some modes, but not ax.25 with KISS. Although it doesn’t have to be, FRACK
is normally used as both the retry interval for connect requests and the response timer when connected.
If using RIGCONTROL
, and the dwell time is shorter than FRACK
then you may well not receive a connect request while you are on frequency. If you are scanning it is suggested you do not use normal KISS – use either KISS with OPTIONS=ACKMODE
or the AGWPE interface.
The bulk of information here has been compiled from several posts by G8BPQ.
ACKMODE and Direwolf
I asked the community group whether the ACKMODE
patch had been submitted to the Direwolf developer and had a reply from Steve G7TAJ about the situation. Edited somewhat for readability.
The author of Direwolf has declined the patch written by G8BPQ. The developer did not see the point in adding this, as connected-mode packet is not the intended use for Direwolf.
John’s patch works very well and I used it until I switched to piQtSM. It was however for Direwolf v1.5 (IIRC), though I did merge the changes to v1.6 and that worked too.
Regarding the code changes, one thing that was done was the internal state engine of Direwolf was bypassed to get
ACKMODE
working. This did not stop anything working that I saw, but may have affected other areas of Direwolf that are not used in regular packet.For anyone looking to use a Linux modem for HF, the best modem to use is QtSoundModem (or piQtSoundModem for ARM), with the AGWPE interface protocol and not KISS.
Steve G7TAJ