BCRA Cave Surveying Group "Compass Points" 15, March 1997, pp 11-15

GPS For Expedition cave location


GPS units are now cheap enough that cavers can afford to consider using them in the field. They are particularly useful where a proper surface survey is not possible due to constraints such as:

The disadvantage is that they aren't particularly accurate. In the summer of 1996 CUCC were able to borrow a unit and test it out in an area where checking back to known fixed points was possible and thus an idea of actual accuracy in the field could be formed. Here I describe what was done, the methods used, and the results obtained.

I scrounged a Garmin GPS45 from my mate Ian Harvey (see his review in Compass Points 11) to take on Cambridge UCC's annual jaunt to Austria. The expedition area is high up in the mountains in very unhelpful karst terrain where getting about is greatly impeded by dwarf pine and small cliffs, as well as an awful lot of holes in the ground. There are 200 logged caves in the area, about half of which have been found by CUCC. A depressingly small number of these have surface surveys to their entrances, and many have very little info indeed recorded about them, and thus are effectively 'lost'. This state of disorganisation has developed over the past 20 years of exploration, where for much of that time the imperative has been to find cave, not ponce about doing dull things like surface surveying in the pouring rain. Encouraged by the Austrian record-keepers' complaints about missing info, and a general modernisation of attitude, CUCC has been working to find out and record what actually is known and thus generate a list of lost caves enabling us to go and sort out what is where, what is marked, which numbers have been used twice, which caves have been numbered twice etc. By the start of the 1996 expedition we finally had a pretty good list of caves by status. 'Surveyed to', 'Known', 'Marked but Missing', 'Unmarked & Missing'. The 'Surveyed to' list was embarrassingly small, but the 'Known' list was quite big.

This was where the GPS could potentially be very useful. It allows a searcher to wander freely about the place looking for caves according to whatever information is available and then simply record the position upon finding it, without having to do a long survey (potentially several kilometres) to the nearest fixed point/existing survey. The only downside is that the resulting fixes are likely to be significantly less accurate than a surface survey. In Theory, at least, this problem should be largely dealt with by logging at the entrance for some time and taking a geometric mean of the results. Information gleaned about GPS before I left suggested that averaging for an hour or so should give improved results, and if you could do it for several hours you should get pretty good results. The nominal accuracy (with SA on, see below) is about 100m (it would be 30m without SA). This '100m accuracy' means that the position given will be within 100m of the real location 95% of the time. Averaging for 12 hours will get you 10m accuracy, averaging for an hour should be around 60m. The problem here is that for the purposes of recording the positions of caves in order to return to them, we get hit by the inaccuracies twice, once when marking the original waypoint, and then again when trying to return to that waypoint. This can leave you 200m from the cave in a bad case. This doesn't sound like much, but believe me in the terrain of the loser plateau this is pretty useless. You've generally got to be within 50m to have a hope of finding most of the caves, depending on the quality of the description of how to find it.

In the field:

So, after playing with it all the way to Austria, (and thus saving ourselves from a disastrous wrong turn in Lille) we got a very pleasing line all the way across Europe with a little gap where the ferry was. The fact that the last 400km was on the back of a tow-truck is another story. On arrival I left the unit in the sunshine for 4 hours plotting the position of basecamp. Slowly a track was built up wandering around in a big blob around the campsite.

Five-hour GPS plot showing how the readings wander, and that the geometric mean is likely to be a better position estimate than any of the individual readings.

This 'apparent movement' effect is due primarily to SA, and also to the movement of the satellites and other inaccuracies of the system. Here is a bit more detail on these aspects of GPS. SA (Selective Availablity) is something of a misnomer for the deliberate degradation of the signals by the US military to stop everyone else using the system to their advantage. It basically means that the satellites are all lied to a bit, and thus so is your GPS unit. The net result is that when you are standing still your GPS will tell you that you are moving (typically at a slow walking pace) around randomly. Thus when the unit is left in one place, recording track information, you get the screen slowly filling up with scribble. The centre of this scribble is as good a reading of your actual position as you can get with this technology. Survey-grade GPS uses a different technique to produce sub-centimetre accuracy despite SA, and the Military have a second, coded channel to get much more accurate fixes.

I spent several days over the next few weeks wandering about the plateau looking for caves, finding a few lost ones and numerous 'known but not surveyed to' ones, as well as quite a few new ones. At all of these positions info was logged with the unit left at the entrance whilst I drew up the immediate vicinity, the cave itself, took bearings on surrounding mountains and wrote a description - i.e. collected as much information as possible to enable the cave to be properly recorded and re-found in future. This was using a handy feature of the GPS45. It can be set to record its position in a 'track log' every n minutes, and has room to store 768 positions. Once these are full the unit starts overwriting the oldest data (unless it is set to stop when full). 5 minutes seems a sensible setting for cave-location use, although those who know about SA suggest that there is actual no point taking readings more often than every 15 minutes. 5 minute logging will take 64 hours to fill up the memory, which was certainly plenty for a 3-week stint in Austria - obviously you adjust it to suit your circumstances. You can also take a simple 'Waypoint' position readings, by pushing the 'Mark' button, which records the current position, and invites you to give it a name for future reference. These names are restricted to 6 characters (which is a bit of a pain), and nearby ones are displayed on the map screen.

Getting fixes in these alpine conditions was no problem at all. Although the area is mountainous, you generally have a large area of sky visible and this meant that we nearly always had a full set of satellites visible. This means that you get altitude data as well as position data, although in general this was given as +/- 60m, (which is more like +/-120m allowing for SA). Also the waypoints and track log do not record altitude, so you have to write it down to get any record. I noticed that the position immediately after it got a fix could be way out (up to 1km), but after a couple of minutes it usually improved to be within the correct area. You can tell this once you have a few waypoints marked because you get a line on the map screen zooming in from way over to one side.

Figure 1 showing how the first couple of readings after getting a fix can be several hundred metres off.

Battery usage is an issue. The GPS 45 uses batteries quite fast. It takes 4 AA cells, and set of these alkalines will last about 10 hours use - more if it isn't continuous. For this sort of logging that means you can use a set up in a day or two, which is expensive and leaves you carrying an awful lot of batteries round with you. NiCads do work, but only give about 4 hours use. I got round this problem by using my FX5 as a power source. The GPS45 will take any input from 5 - 40V so any 5V or more battery pack should work. I stole the though-the-headset charger bits off my charger, and attached them to a backplate hastily manufactured from a couple of layers of Lilt-bottle plastic. This made a lightweight FX5 adapter, when soldered to the combined power/serial lead which already had a car ciggy-lighter connector and 9-pin D - makes a pretty strange-looking cable! The FX5 should power the unit for about 50 hours, although with external power at this voltage some units may be prone to shutting down. The GPS45 has a 'battery saver' mode which is appropriate for use where the unit is moving at constant velocity so it should be fine for entrance-logging. I did not know about this at the time, but it can give up to double the battery lifetime. When I find out how to enable it I'll give it a go.


We were unable to download all this data from the GPS whilst in Austria, despite soldering up a cable and peering at specsheets and software downloaded from the very useful GPS pages on the net, as the software/serial interface simply refused to play. This may be because the serial port on the GPS45 is an NMEA (marine instruments) standard, not the more familiar RS232, thus the voltage level is only 5V, somewhat below the 9-12V normally used on computers. Most serial interfaces will work anyway, but yours, like ours, may not. Either get a different serial card, or build a step-up interface - again, details of what you need are in the GPS net docs. This setback was inconvenient, but not serious as the track log was big enough to hold all the data we needed, so I could do the download and analysis on return to the UK.

Unfortunately, when I got back the GPS couldn't be found anywhere! I had noticed during packing of a huge pile of stuff into Julian's van that I hadn't specifically noticed it going in. Concerned, this being borrowed kit, I asked Julian, who assured me that he had seen me put it in earlier. 'Are you sure?', 'Yes, definitely', he said. Given that all our stuff had gone into this van, and I'd had it the day before in my rucksack, I had to assume he was right, and back to the UK we drove. However, once back, a great deal of checking showed no sign of it, and an increasing air of perplexed embarrassment settled. It must have fallen out of my rucksack somewhere on the last day, or been stolen from the campsite pile of rucksacks that night. Then someone had the brilliant idea of leaving a message for one of the expedition members (the CSG's membership sec., Andy Atkinson, no less) who had gone on to the Imperial CCC expedition to Slovenia, and was returning via the campsite in Austria two weeks later. So a cryptic message about GPS units was left with the long-suffering Gasthof owner Karin, telling Andy to go and look for it on the mountain. He rang me at 6.30 one Saturday morning to get this bizarre message explained, and after the requisite grumble, set off up the mountain. Miraculously the GPS was sat quietly on the VD1 fixed point, the highest point of the route to our major cave, none the worse for it's two-week sojourn atop an Alp apart from an inexplicable cracked display. This was because four of us had left it there whilst chatting about glaciology on that last day, logging the VD1 position, and then had simply set off to go caving, forgetting about it entirely - ooops! So beware, that if distracted during the logging process, and if you are sufficiently dense, you may just leave the damn thing behind entirely! Garmin UK repaired the cracked screen for free, despite it being out of warranty, where it would normally cost 30 quid, and thus it finally got back to its owner.

Processing the Data

This little setback dealt with I was finally able to download the track data using the simple, free Gardown7 utility, a no-frills bit of DOS software that simply generates a text file of data. You give a command like GARDOWN7 T S2 to download Track data on Serial port 2. This gives a text file with a header and then one line per track log point, like this:

T  N49 37.7525 E006 12.2740 Fri Jul 12 22:51:49 1996
T N49 37.7441 E006 12.2804 Fri Jul 12 22:53:50 1996
T N49 37.7635 E006 12.3152 Fri Jul 12 22:55:51 1996
T N49 37.8224 E006 12.3338 Fri Jul 12 22:56:36 1996
T N49 38.1552 E006 12.8984 Fri Jul 12 22:58:36 1996
T N49 38.2060 E006 14.2361 Fri Jul 12 23:00:36 1996
T N49 38.3663 E006 15.8547 Fri Jul 12 23:02:38 1996
T N49 38.4481 E006 16.0234 Fri Jul 12 23:04:39 1996

This is: T for Track, Then the Northing and Easting (Lat. /Long) in Degrees and minutes, then Day, Month, Date, Time, Year.

I imported this data into Excel7 using the import text function to split this up into columns, and throw away the useless stuff like the T, N & E.. Having done this, I split the data up into sections by time, thus grouping all the logged points at one location together. At this point I realised a problem with my method. As the time is the only way you can tell which track log items were recorded where it is very important to turn the unit off between logging positions, otherwise you can't tell when you were standing still. It is possible to use the waypoint information that you have, as this is also timestamped, but basically be aware that if there are gaps in the datastream it is much easier to split up the sections. An alternative would be to record the GPS time (displayed by the GPS) on arrival and departure at a site, but you really do have to remember if keeping the unit on whilst wandering about. Keeping the unit on is useful because
a) it's fun to play with and watch your little squiggle wander about the place, and
b) you seem to get more accurate position data after the unit has had a fix for a few minutes.

There were 723 track log points, taken in 50 sections at 41 positions (some places were logged more than once to see what repeatability was like - (see Figure 2, page 15). For each section of logging the average position was calculated in X & Y. At this point I have to explain the complications of co-ordinate conversion. This is by far the biggest problem in using a GPS. Although the unit knows all about a whole host of co-ordinate systems and origins, the serial data downloaded is always in Lat./Long. format using the WGS84 spheroid. When you record positions they are likely to be in the locally useful co-ordinate system, and this is what you will need to plot positions on the map. In the UK this will be 'OSGB'. On an expedition you need to do a bit of research to find out what you should be using and how to do the necessary conversions. The OS publish a very useful couple of documents 'Transverse Mercator Projection - Constants, Formulae and Methods', and 'Conversion of Latitude and Longitude to/From National Grid'. I have photocopies of these if anyone needs them - they may now also be available on the net. These sums have been turned into a DOS program called 'CONVERT.EXE' (imaginative stuff!), and a RISCOS Basic program, both of which I also have.

Grid Systems in Austria

The Austrian Grid system has proved to be something of a conundrum, and I still haven't reached a fully satisfactory answer. The maps themselves don't give any information about the Grid System in use, although they do have Lat./Long markings at the edges, but I have been given some information on the grid system in use, that Andy Waddington has discovered.

The co-ordinate system is called the Gauß + Krüger Landeskoordinatensystem, which is in fact a designed-to-confuse alternative name for Universal Transverse Mercator (UTM) and in this area is UTM zone 33. Within this system, there are a number of triangulation points surveyed purely for the purpose of locating caves: these are the Katastertriangulierungspunkte, or KT points. The X (or north) co-ordinate, when quoted in full, is actually the distance in metres north of the equator.

These Laser Rangefound points, use grid co-ordinates which can cause a great deal of confusion on several counts:

So we get points with co-ordinates like this (prefix (52) for complete X co-ord.):

KT114_96 36670.37 83317.43 1903.97 Hinterer Schwarzmooskogel Trig point

Laser0 36386.56 82804.16 1815.45 Hilfstandpunkt (hillock N of 161)

Laser0_1 36093.56 82337.43 1782.35 Near 156

This is fine as far as it goes, but the GPS45 gives UTM and 'German' as different Grid systems. I believe 'German' to be the Gauß & Krüger referred to above as the readout is prefixed 'GK'. These two systems give similar, but not identical results, and neither of them is much like the values above, which is what we have the local fixed points marked in.

For example the point VD1 looks like this in the three systems:

UTM: 33T 0411506 5280946

G&K: 5411471 5283059

Laser: 36093 5282491

Fortunately all of these systems are a metric Grid, so assuming that they are co-linear within the area in question, then only an offset is required to convert from one to another., and the offsets from one system to another can be determined by knowing one point in these two co-ordinate systems. More complexity is added when you consider the Datum used. The above were done using the Potsdam datum, but if you change it you will get slightly different results. It is noticeable that the Northings all agree to within 2.1km, but the Eastings are a bit more different. Ignoring the 5million km figure then the UTM & G&K are the same to within 35m, but the Austrian Laser points seem to be completely unrelated.

A solution to all this confusion seemed to be the software 'GEO2', written by Anton Helm at the university of Wien. This software converts between Lat./Long and Gauß & Krüger co-ordinates. In fact it is smarter than that and can do any conversion between spheroidal co-ordinates (e.g. Lat./Long), and any Grid System, given suitable parameters. It is rather 'UNIXy' software, being a script-processing language where variables are assigned to points and various operation can be done on these variables to achieve conversions. I have to admit that I have not fully investigated its results, but they seem to give yet another set of different answers!

Given these discrepancies I have taken a rather pragmatic approach to doing the conversion from one co-ordinate system to another. I have assumed that over the 3km are that I am dealing with I can take Lat./Long. to be linearly mapped to the G&K grid, which means I simply have to find the offset and scale for the conversion. If I have two points for which I know both the Lat./Long. co-ordinates and the G&K co-ordinates then a simple interpolation will provide the conversion for all the other points. This will only give reasonable accuracy if the two known points are at opposite corners of the area in question. In fact Excel will let you give it a whole series of pairs of points and return the slope and intercept values of the best-fit line through them., so this is what I have done. To get 'correct' conversion from Lat./Long. to G&K, I have converted (rather laboriously) each averaged result for a point of interest into G&K using the GPS45. This is done by entering a waypoint in Lat./Long. mode, then changing the co-ordinate system to 'German', and looking at the waypoint again. This is rather a lot of button-pushing on the GPS, but it kept me entertained for a couple of long winter evenings over Xmas in the Pen-y-Pass youth hostel. Using all these pairs to get the slope & intercept values then comparing the calculated results with the GPS results, shows that the process gives results accurate to 15m across the area we are concerned with - good enough.

The final part of getting a set of cave entrances that I can plot on the area map is the mysterious offset from GPS-reported G&K co-ordinates to Austrian Laser Rangefound co-ordinates. To do this I needed a laser point that I had reasonably good GPS values for. I chose the one on Brauning Näse as the GPS was left there for 8 readings, making it the most reliable Laser point data I had. The problem with using a single point for the offset is that any error in that GPS location is applied to all the others too by being included in the offset from G&K (Garmin) to G&K(Austrian Cavers). I still need to do further investigation to determine the effects of this. The results could be improved by taking multiple places where we have both G&K (Austrian Cavers) co-ordinates and GPS locations and taking a mean of the various offsets, or by doing better long-term GPS locations (e.g. for a couple of days) at one of these points next year. We have what should be a very good dataset for point VD1 (where the GPS was left accidentally), as it logged for 5.5 hours before giving up due to flat batteries. Unfortunately this is not an Austrian Laserpoint, although it is joined to one by a surface survey. Using this point might well give better results, but it depends how good the surface survey is.

So, after a great deal of head-scratching I have a pair of columns on my spreadsheet giving co-ordinates in G&K (Austrian Cavers) co-ordinates. It looks like this, showing the actual data and (boxed) the averaged results:The co-ordinate pairs are: decimalised Lat./Long., interpolated G&K, offset 'Austrian' G&K, GPS calculated G&K (note X&Y reversed on these, cos that's the way the GPS displays them).

The easiest way to get this into Survex for plotting is to put in a column that says *FIX <stationname> in front of these columns, and putting an altitude value in at the end. Then by hiding all the data lines, and all the columns except the G&K (Austrian) ones, this section of the spreadsheet can then be exported to a text file and processed directly. By including the waypoints marked in the field (and given a similar treatment to the track log data), it is possible to see whether the averaged results are noticeably better than the waypoint results.

Here is typical example of the results:

Figure 2 showing 5 fixes for entrance 161d, and the 5 corresponding averaged positions.

The averaged positions for locations 1,2 and 5 are all within about 25m of the surveyed point 161d, whereas the waypoints 1,2 & 5 are all 50-100m away. However the 3 & 4 averages are slightly further away than the corresponding waypoints. Location set 4 lasts for 25 minutes. After 20 minutes the position suddenly zooms off 500m to the E. It is this sort of odd behaviour that means a GPS reading alone can be thoroughly misleading. The bar on the left shows the 100m limit, and the readings are nearly all with in this, although not quite.

Figure 3, showing the area of the plateau near top camp with surface surveys and GPS positions.

I have selected a number of locations, the corresponding GPS waypoint, and the averaged track log data for it. As you can see the averaged data is closer to the actual point than the waypoint for Laser7_11, p90 and p164, although in the case of p164 there is hardly any difference. These locations were averaged for only about 20 minutes. The B11 data illustrates the importance of examining the data graphically, and checking suspicious stuff. The point marked GPSavB11 Was one where the track log had clearly rested somewhere for a few minutes, and the timing (at the end of a day), and known route that day suggested that it was B11, done on return to top camp. This was what got written down (with a question mark in the spreadsheet). After all the grid processing and displaying the results in Survex I note that the waypoint at B11 is much closer to the known position of the cave than the GPSavB11 location. A quick check back to the track and waypoint data shows that the waypoint was done two days later, and that there was a question mark next to the GPSavB11 name. This all means that this isn't B11 at all, but a short log at top camp whilst waiting for the tea to brew. Again - record keeping is essential to avoid this sort of mistake.


GPS is definitely useful in the field, but you need to understand its limitations. To get the best out of it you need to be diligent about how and when you record information so that you can get the data out reliably afterwards, and you need to understand about the co-ordinate system in use in the area, and on the maps you have. Averaging is a useful technique, but can be a rather hit-and-miss unless you can stay at a spot for at least an hour, and for good results you need to be logging for at least 4 hours, which means you need sufficient battery power, and may not always be convenient in the field. Also beware turning your GPS on, taking a waypoint immediately and walking off - it could be a long way out. If Differential GPS transmissions are available in the area, then that will be much more effective in giving accurate answers quickly - but of course it costs about twice as much money, even if you don't have to pay for the data as well as the receiver. As more of the far-flung caves in our area are surveyed-to, we will be able see how it compares in accuracy to very long surface surveys. And some time in the next ten years the US should turn off SA which will make life significantly easier for this sort of work.