Support for early versions of the Raspberry Pi, e.g. the Raspberry Pi Model B Rev 2, via performance enhancements at the cost of a small tradeoff in sensitivity.
I implemented a trick to speed up fixed point downsampling for RTLSDR input at 1536K samples/second. Furthermore a new model (-m 5
) is introduced which uses exponential moving averages in the determination of the phase instead of a standard moving average as for the default model.
Both features can be activated with the -F
switch.
To give an idea of the performance improvement on a Raspberry PI (700 MHz), I used the following command to decode from a file on the aforementioned Raspberry Pi:
AIS-catcher -r posterholt.raw -s 1536000 -b -q -v
Resulting in 38 messages and the -b
switch prints the timing used for decoding:
[AIS engine v0.31] : 17312.1 ms
Adding the -F
switch yielded the same number of messages but timing is now:
[AIS engine (speed optimized) v0.31] : 7722.32 ms
This and other performance updates make the full version of AIS-catcher run on an early version of the Raspberry Pi with very limited drops.