View source for Wishlist/Software:GPS proxy

From Openmoko

Jump to: navigation, search

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Administrators.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page:

Return to Wishlist/Software:GPS proxy.

Personal tools

Using bluetooth GPS dongle with any device is in fact nothing more than sending clear text (NMEA protocol) over serial port:

1. BT device (dongle) announces it's serial port (virtual serial port - Bluetooth SPP/SP profile)
2. BT client connects to the dongle
3. Dongle opens serial connection and send stream of NMEA data. That's all!

So let's see what NEO can do: - we got device equipped with GPS - we got very powerful bluez stack and utilities - we can get NMEA data - we can announce Serial (SPP/SP) service using bluetooth and finally... we can bind GPS port with BT port and redirect NMEA to any BT client that would like to read it :)

Profits: - We can share GPS data with anyone (Phone/Smartphone/PC/Laptop) - Maybe sending that data to more than one person (I don't know the exact BT capabilities) - Whenever you want you can use your PocketPC powered with Automapa or TomTom and don't have to buy another GPS device - many many more :)

I've made few tests on desktop debian and was able to get data with Holux GM-101 Handheld GPS (USB Cable) and Nokia N70 (BT)


0. Prerequisites: connect GPS unit, setup bluez and remember to pair your devices!
1. Make BT listener: rfcomm listen 0 (on my system it binds connected device to /dev/rfcomm0)
2. Announce your SP service: sdptool add sp 1
3. Run some GPS aware application on your client device
4. On successful connection rfcomm will say something like: 
Waiting for connection on channel 1
Connection from 00:**:**:**:**:** to /dev/rfcomm0
Press CTRL-C for hangup
5. cat /dev/ttyUSB0 >/dev/rfcomm0 (where /dev/ttyUSB0 is my USB to serial converter connected to GPS) 6. Should work :D

If you can connect but there is now data:

- use "cat /dev/your_gps_device" to see if GPS is sending NMEA data to PC (for examle in holux you have to switch some options in menu)
should look something like this:
$GPRMC,225506.064, - check paring

In a thew weeks time I should get my new Forerunner, so I will try to move this idea to OpenMoko platform.