This little python program (together with a kml file) allows real-time GPS tracking in Google Earth from any standard NMEA device. It's been initially written for GNU/Linux, but with tiny modification (namely the serial device name) it should work on other platforms that support python and have python-serial available.
It's a proof of concept rather than a fully working software, but since it is released under a Free license (GPL) you're free to tinker with it. If you improve it, please send me the patch so I can publish it here (and credit you :). Thanks!
- gegpsd-0.1.py (v0.1) The main python script. Start (python gegpsd-0.1.py) in the background, on "screen", from inittab, however you like it...
- gps.kml (v0.1) Load this into Google Earth.
Default settings are:
- gegpsd.py creates /tmp/nmea.kml
- default serial port is /dev/ttyUSB0 -- change it in the gegpsd.py file.
Currently, it supports dynamic heading, angle and distance changes based on your speed. Below 10 km/h the screen is North-up with 30 degrees viewing angle. Above 10 km/h, the heading, angle and viewing distance are dynamically adjusted depending on your speed.
That's all! Tested under openSUSE 10.2, requires python-serial package (or equivalent for your GNU/Linux distribution).
Update (13/06/08): TJ has released an updated version of gegpsd. It allows you to specify configuration options at the command prompt and handles misreported fields in $GPRMC. You can have a look at it at TJworld wiki or download it below:
- gegpsd-0.2.py (v0.2) The main python script.
- gegpsd-0.3.py (v0.3) The main python script.