I have started experimenting with packet radio. As an aid to these, I created some useful utilities.
Packet-radio-minimal-receive is a very simple, very minimal utility for decoding the NZRI+HDLC encoding and displaying the contents of AX.25 packets.
Packet-radio-minimal-receive is not a full TNC, but it is a useful diagnostic tool if you are writing your own packet radio software. It can display AX.25 frames in readable form, or dump them raw to stdout, or send them to another program over UDP.
Berty is a utility for evaluating the performance of bit-orientated communications channels in terms of bit error ratio testing. It generates a pseudorandom bit sequence at the sending end utilising a multiplicative linear feedback shift register. At the receiving end this pseudorandom sequence can then be used to both maintain syncronisation with a counterpart shift register and detect bit errors.
It is not as accurate as a fully syncronised test, but it is far easier to carry out, and can also detect bit drop or duplication errors. The main downside of this approach is inabillity to accurately register multiple bit errors in succession - if error events are strongly correlated or occur with a very high frequency then Berty will under-estimate the error rate. At low error rates however - less than around 2% - it is accurate. Above this the error is statistically consistent, so it may still be used for comparative evaluations.
Additionally Berty includes the ability to take input on stdin and corrupt it using a simulated noisy channel, and put the result on stdout. This is useful for testing error correction capabilities.
The utility is sufficiently simple that I do not need to include instructions for compilation. Take source, compile, run with -h.