GPS on the Neo 1973
Revision as of 22:35, 23 November 2007
The Neo1973 device contains an integrated GPS. The particular device is marketed as an AGPS, and there is some discussion available as to what significance that "A" might have.
All purchased phones do not include the GPS binary driver. 
In the very early shipment to 50 Phase 1 developers, a binary-only program for talking to the the GPS was accidentally included in /home/root/DM2/gps, (and presumably, the same binary would function on a P0 device).
There is an ongoing effort to write a Free Software program that could be used instead of this binary-only program. See Hammerhead/Protocol for details and the latest status.
For those few with the binary driver in the meantime, Pavel Machek provides the following script for recording an NMEA stream from the binary program. The binary program was compiled to OABI format which now is obsolete as OM2007.2 builds are in EABI format. You can still run the binary with chroot. Bartek Zdanowski wrote an aticle how to run GPS receiver.
#!/bin/sh echo 1 > /sys/class/leds/gta01\:vibrator/brightness killall gllin cat sleep 1 echo 0 > /sys/class/leds/gta01\:vibrator/brightness mknod /tmp/nmeaNP p cat /tmp/nmeaNP >> /tmp/gps.nmea & /home/root/DM2/gps/gllin -low 5 /home/root/DM2/gps/gllin -periodic 3
He also succeeded at getting the Neo1973 to act like a bluetooth GPS with the following script: (Note that this script has bad problems if you run it more than once. You can get a "time traveling GPS" effect, with the GPS showing you your past position).
#!/bin/sh killall rfcomm tail mknod /dev/rfcomm0 c 216 0 echo 1 > /sys/devices/platform/s3c2410-i2c/i2c-0/0-0008/gta01-pm-bt.0/power_on sleep 1 hciconfig hci0 up name linuxgps sleep 1 sdpd sleep 1 sdptool add SP ( while true; do rfcomm listen /dev/rfcomm0 1 sleep 1 done ) & ( while true; do tail -f /tmp/gps.nmea > /dev/rfcomm0 echo 1 > /sys/class/leds/gta01\:vibrator/brightness sleep 1 echo 0 > /sys/class/leds/gta01\:vibrator/brightness done ) &
Possible GPS programs
As people develop more sophisticated GPS applications, please note them here.
Here are some ideas for possibilities:
- Cairo-based mapping
- Openstreetmap logger, (with voice annotations)