This is a document describing my first Near Space Balloon Tracker, now known as “Bob”.
Any questions you can get in touch with me at kevin at unseen dot org.
I started by doing the classic Blinking LED test on the Arduino.
Interestingly my Arduino Pro board has the 16 MHz box ticked on the board, but I believe this is a mistake - The crystal on the board is labelled 80.D (8Mhz?) and it works fine when programmed through Arduino 1.0.1 as a 3.3v, 8MHz w/ATmega328.
I use a non-standard USB to serial converter, which means I have to press the reset button on the Arduino just a tad after the PC says 'Uploading'.
After those couple of issues, I had the LED blinking nicely :)
Having tracked a launch yesterday and today (see Tracking Guide) I was keen to get transmitting myself, so I started by following the Linking an Arduino to a Radiometrix NTX2 Transmitter guide.
I used an 18K Ohm resister as R3 (the 20K Ohm value detailed in the guide isn't in the common E12 series that I had) which gave me a shift I believe of around 600Hz.
My Yaesu VR-500 receiver does not seem to be the best at cleanly decoding as I had mirrors of the signal in several places.
I found the best signal at 434.0720 Mhz, compared to the 434.075 written on the module.
For reference I also find the signal at 434.0745 MHz, but this version appears to be a reversed signal, requiring the “Rv” button to be pressed in dl-fldigi to decode correctly.
Update, In the version built on Vero board I have used 2 x 4k7 and 1 x 20k, as per the guide, which gives me a shift of 620Hz at 20 deg C. On a E4000 dongle using SDR# (sdr_tracker) I get a nice clean signal at 434.073Mhz. At about -20 deg C (in the freezer!) the shift is down to around 530Hz with a frequency of 434.074Mhz
With an aim to keep weight down I was tempted to purchase the Assembled uBLOX MAX-6 Pico Breakout with Chip Scale Antenna but was advised to go with the Sarantel Antenna version as it is much more reliable at gaining a locked GPS signal - I don't want to loose my first payload to a weak GPS signal!
I didn't need the version with level converters as I has specifically purchased a 3.3v Arduino board.
There are two UKHAS related guides to the Max-6:
Both use some of the same code example.
For initial testing I connected:
Max-6 - Arduino Pro
and used the Software Serial code example from the links above.
Initially it did not work and I had to do a little debugging from 'first principles' with a 'scope, disconnecting the signal wires, finding the signal out of Arduino pin 5, connecting that into the Max-6 Pin RXD, finding the signal now coming out of the Max-6 pin TXD and connecting that back into the Arduino pin 4, and then magic, it works. I obviously had the signal wires plugged incorrectly somehow first time around.
The output, at 9,600 baud from the Arduino's hardware serial port, via the same FTDI → serial converter we use for programming the Arduino:
$GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGSV,1,1,00*79 $GPGLL,,,,,,V,N*64 $GPRMC,,V,,,,,,,,,,N*53 $GPVTG,,,,,,,,,N*30 $GPGGA,,,,,,0,00,99.99,,,,,,*48 $GPGSA,A,1,,,,,,,,,,,,,99.99,99.99,99.99*30 $GPGSV,1,1,00*79 $GPGLL,,,,,,V,N*64
For live tracking use it is recommended that you talk to the GPS module using the Arduino hardware serial port, on pins Zero and One.