Shiny new boards need shiny new code..

My coding is crap. The code at the core of the AVA1 & AVA2 boards was old, nasty and had some buffer overflows in it I could never track down. I’m sure the issues related to the way I was reading the NMEA data and parsing the GPGGA, occasionally and unreproducibly it would just give overflows usually when it was getting locks.

I started the code again and with the assitance of Jcoxon’s Project EURUS code I changed the way it gets the data from the GPS by switching to polling the GPS for its location. Its much more efficient, also I’ve put in checks and timesouts that were missing on the original code and moved everything to procedures.

All the complex flight status stuff has been removed and I’ve redone the temperature parts. Finally on review I’ve amended the default RTTY from ASCII-8 1 stop bit to ASCII-7 2 stop bits. Additionally I’m sending 10 nulls before commencing transmission to aid the trackers and AFC in dl-fldigi. Hopefully these changes will make a more decodable signal.

I’m really pleased how its worked out, in fact now I’ve procedurised everything it was a very trivial 10 minute job to amend the code to work with the RFM22B making both a RTTY and Hellschreiber beacon.

The code for all variants is now about 10kB as opposed to the 18kB it was previously.

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Human test : * Time limit is exhausted. Please reload CAPTCHA.

This site uses Akismet to reduce spam. Learn how your comment data is processed.