How to use an external GPS with a smartphone

The best GPS for a Brit searching for prehistoric stones is a GPS which has OS maps built in.

GPS with OS maps
GPS with OS maps

The trouble with these is the sticker shock, you’re looking at about £300-400, which is still a bit stiff. If you start with nothing, it’s probably still the best way, and you will undoubtedly get a better moving map experience, particularly with a GPS including an electronic compass, which will orient the map correctly for you.

I had a smartphone and Viewranger. I’d bought the Landranger 1:50k set of OS maps on viewranger for about £70 – once you buy digital mapping you’re locked into that provider unless you want to pay up again.

Smartphone GPS is awful and power-hungry

The big problem with a smartphone is that GPS performance is dreadful. Quite how dreadful I hadn’t realised until I got out on Dartmoor and tried to use Viewranger, which made no attempt made to track current position.Well, pretty much until I was on my way back to the start point. I had a paper map anyway, although the smartphone version was easier to control in the wind!

A-GPS doesn't help you here
A-GPS doesn’t help you here

The problem with a smartphone GPS is that by design it will fail you when you need it most, on a featureless moor with no signal. It is new-born each time you start it up. Rather than maintaining the ephemeris (knowing where to look for the satellites) when the phone is off, smartphones use A-GPS – getting the rough location from the network connection and using this to simulate the ephemeris.

Which is OK in towns, and no good to man nor beast in rural areas, because there’s no network connection. So you get to do a cold start of the GPS which can take over half an hour. No fun at all when you are out on Dartmoor. Even in towns the performance of smartphone GPS is dire, compared to a handheld GPS, as I found out looking for birds. Plus it’s power-hungry – running about 43mA @ 5V with continuous GPS on, compared to 25mA with a BT GPS.

Go for a separate Bluetooth GPS

A secondhand CoPilot GPS3 The default Bluettoh code for one of these is 0183 (from NMEA 0183 protocol, I guess)
A secondhand CoPilot BTGPS3, 2003 vintage
The default Bluetooth code for one of these is 0183 (from NMEA 0183 protocol, I guess)

and use an app to get the location signal into the phone, something like Bluetooth GPS to set this as a mock location provider. Then shut off the internal GPS to save power. Start the hardware, then start the app before starting Viewranger, and everything will work better than before. The CoPilot battery is good for six hours, ebay has many more modern equivalents which probably have better battery life. You can save more smartphone power in the sticks by putting the phone into flight mode and specifically re-enabling Bluetooth, this shuts down the power-hungry wifi and phone data systems. Plus it stops Google knowing where you are in real time 😉

I still hanker after a Garmin GPSMAP64 because while this sorts out the poor GPS performance, it is hard to see the smartphone display outdoors, even under a wide overcast sky, and impossible with sunlight falling on it. Nevertheless, the smartphone app is a lot more practical now.

GPS serial receiver for Kenwood TH-D7

press the pos button while GPS data is running at it will show you the locator,and lat/long, the degree and decimal points flash on reception. With an unlocked GPS it is lat/long of 0
press the pos button while GPS data is running at it will show you the locator,and lat/long, the degree and decimal points flash on reception. With an unlocked GPS it is lat/long of 0

This project is to make something that used to be common – a GPS receiver with serial data output. Modern APRS handhelds like the THD72 have GPS on board, but my Kenwood TH-D7 is from the turn of the century and doesn’t have onboard GPS. I used to pipe the output of a handheld GPS into the serial port. That worked fine, but in the field it’s a drag to use a handheld GPS tethered to a rig. Every time you want to put something down or set the rucksack down you end up with a knitting session on the cables. This is why they invented Bluetooth, and one option I considered was running a little Bluetooth receiver to a Copilot BT GPS. Trouble with the Copilot is how do you recharge it in the field, and I need to pick off power from somewhere to run the Bluetooth receiver. So I still get cables to the rig and another battery to manage 🙁

Most handheld GPS receivers like my Garmin Vista HCx have moved on to USB serial interfaces now, whereas the 1990s vintage Kenwood TH-D7e uses 4800-n-8-1 RS232, which is what GPS units chucked out in those days. Early THD7s had a problem reading the serial stream since NMEA 0183.3 superseded 0183.2 for the reasons described in the Potator article. I assumed my unit was one of these, so I constructed the Potator, but while the rig worked through it, it also worked without it, so I was lucky and dispensed with that 🙂

Continue reading “GPS serial receiver for Kenwood TH-D7”

Bird recording in the field with a GPS and audio recorder

After a long break, I looked at getting back to using Birdtrack. When I used it before, I used an audio recorder and a GPS, taking a waypoint with the GPS and identifying the bird and waypoint in the audio note. The advantage of this is I could automate taking in the position data, and just transcribe the bird and count.The obvious way to do that now is to use something like the Birdtrack app. Trouble is this wouldn’t run on my device. That wasn’t the main problem, to be honest, it’s easy enough to solve by chasing the upgrade cycle. There’s a deeper problem – it’s not what I want to get out into the field to do, to spend more time peering at an illuminated screen. Not only would Eckhart Tolle disapprove, but you also have to take your eye off the birds. Don’t get me wrong, the BTO have probably done a great job with the app, and if that’s how you want to list birds that’s great, each to their own. It’s just doesn’t do that much for me. But it’s a continuum – after all, what is the real point of recording what you see anyway, particularly as I’m not particularly good with ID so have to pass on a lot?easygpsSurveying an area repeatedly does mean I get to build up a spatial map of territories and get to know some of the birds by the foibles of their song. Now this is made easier I will see if a picture of territories does build up over time in the breeding season. GPS audio mapping isn’t a new idea, I came across it from the OpenMap community, who had largely solved this problem with audio mapping. They simply leave the recorder on capturing a stream of consciousness, because they want to capture data about the whole environment, that’s what a map is. It makes the synchornisation problem easier, as they set a datum at the start of the run, doing the same job as the clapperboard in shooting a movie. The GPS track is a log of where you go, with the sections individually timestamped, which I hadn’t realised. So start the recording at a datum point, and you know that the audio runs in sychronism with the GPS. Modern digital field recorders are crystal controlled to about 100ppm – about 4 seconds off in 10 hours.Now I don’t really want to spend as much time writing up a trip as doing it, so I took a leaf from their book and used a Perl script to parse the GPX data tracklog, find the nearest section to the audio clip timestamp and create a waypoint there, with a link to the audio file in the same directory. Rather than making one massive recording, I can simply make short audio notes when I see the bird, and the Perl script will tally the record time and sort out where I am. It’s easier to find a record and there is much less audio data to process.

Due to the vagaries of real-life devices you have to be able to put in an offset to take out summertime and any slight differences, but an error of 1 minute at walking speed isn’t so bad for bird logging. At a steady 3mph it’s about 80m uncertainty, but in practice you tend to slow down when observing birds, improving the accuracy. File timestamps do go down to the second, but keeping the clocks within a minute is a big ask. The GPS timestamp is always very accurate because it is set to an atomic clock, so it’s down to setting the recorder properly. Or identifying the skew properly at the combining stage.

As an added bonus, this can work on my field recordings too, I can just save the GPX file and I know where they were made too. Using something like GPS Visualiser I can see where everything is on a Google map.

For bird logs, I need to open the audio and edit the waypoint names to the BTO two letter short codes of the sightings, comma separated if there are several at one point. A second run through another script expands these into the long names and creates an Excel file suitable for uploading to Birdtrack.