How to share the GPS in your N95 with your laptop via Bluetooth in Linux

This tutorial will guide you through the steps required to share your Nokia N95s built in GPS with your laptop, in Linux.

Please note: This guide was initially published back in 2008 and some of the software it references no longer exists. As such, we have asked Google to remove this from their search database, however the document will remain online for archival sake.

  1. First you need to grab a copy of ExtGPS (Update: software no longer exists) Symarctic ExtGPS is free for personal, non-commercial use.
  2. Now that you have ExtGPS installed, you can find it by choosing Menu -> Applications -> ExtGPS. You will be prompted to allow ExtGPS to use connectivity applications and to allow ExtGPS to use positioning data. Choose Yes for both.
  3.  

  4. It may take quite a while before the GPS starts to receive a valid signal and get a fix. Make sure you are outside and have a clear view of the sky. The satellite icon will change from red to green once it has a fix.
  5.  

  6. Make sure your phone is discoverable via Bluetooth. Choose Menu -> Tools -> Bluetooth. I chose to make my phone visible for 5 minutes.
  7.  
     

  8. The next few steps are done from the command line. Here’s what I had to do on my Fedora 9 system.

    [user@radon ~]$ sdptool search SP
    Inquiring …
    Searching for SP on aa:bb:cc:dd:ee:ff …
    Service Name: Data Transfer
    Service Description: Version
    Service RecHandle: 0x1000f
    Service Class ID List:
    “Serial Port” (0x1101)
    Protocol Descriptor List:
    “L2CAP” (0x0100)

    Service Name: Symarctic ExtGPS
    Service Description: Share phone’s built-in GPS module via Bluetooth
    Service Provider: Symarctic Solutions
    Service RecHandle: 0x10019
    Service Class ID List:
    “Serial Port” (0x1101)
    Protocol Descriptor List:
    “L2CAP” (0x0100)
    “RFCOMM” (0x0003)
    Channel: 5
    Language Base Attr List:
    code_ISO639: 0x656e
    encoding: 0x6a
    base_offset: 0x100

  9. The above output shows your phones Bluetooth MAC address, and that ExtGPS is exposing a serial port on Channel 5. We need to bind these together to make an entry in /dev.

    [user@radon ~]$ sudo rfcomm bind 1 aa:bb:cc:dd:ee:ff 5

  10. The rfcomm bind paramaters above are the rfcomm device number, the phone’s Bluetooth MAC address, and the channel number as reported by sdptool. This creates a serial port at /dev/rfcomm1.
  11. At this point you should be able to stream raw NMEA sentences from your N95 directly to the console:

    [user@radon ~]$ sudo cat /dev/rfcomm1
    $GPGGA,022314.000,4826.67566,N,12322.19605,W,1,07,1.9,13.7,M,-18.3,M,,*52
    $GPGLL,4826.67566,N,12322.19605,W,022314.000,A,A*4A
    $GPGSA,A,3,30,29,10,21,24,26,15,,,,,,2.9,1.9,2.2*3D
    $GPGST,022314.000,8.8,13.0,6.1,65.6,7.1,11.1,14.0*63
    $GPGSV,3,1,11,05,09,179,,02,10,072,25,30,28,194,38,29,77,118,42*72
    $GPGSV,3,2,11,10,42,059,36,16,24,315,27,21,45,256,43,24,84,024,40*79
    $GPGSV,3,3,11,18,14,198,,26,10,114,38,15,09,128,33*49
    $GPRMC,022314.000,A,4826.67566,N,12322.19605,W,0.1,159.6,151008,18.1,W,A*3B
    $GPVTG,159.6,T,177.7,M,0.1,N,0.3,K,A*2C
    ^C

    While the NMEA sentences are streaming to the console, the Bluetooth icon in ExtGPS should change from red to green.

  12. We’re now connected so let’s do something a bit more useful. First, let’s run gpsd on the computer.

    [user@radon ~]$ sudo /usr/sbin/gpsd -N /dev/rfcomm1

    The -N paramater tells gpsd not to switch to background mode. I prefer doing it this way as I don’t leave gpsd running all the time. I only run it when I want to use it, then just hit ^C to close it. See the gpsd man page for more options.

  13. Now, from a second terminal window, try running xgps.

    [user@radon ~]$ xgps

    You should see something similar to the following:


  14. click to enlarge

  15. xgps is showing the usual GPS data. Latitude, Longitude, Altitude, Speed, etc.
  16. There are a number of applications available in Linux that can take advantage of a GPS device. I like using a combination of Kismet and GPSDrive while wardriving. If there is enough interest, I’ll write a tutorial on how I wardrive with Kismet and GPSDrive.

If this article helped you, I'd be grateful if you could share it on your preferred social network - it helps me a lot. If you're feeling particularly generous, you could buy me a coffee and I'd be super grateful :)

buy a coffee for simplehelp.net


Home » Mobile Phones » Symbian » How to share the GPS in your N95 with your laptop via Bluetooth in Linux

2 thoughts on “How to share the GPS in your N95 with your laptop via Bluetooth in Linux”

  1. Thanks mate this guide is great. Worked perfectly in Ubuntu 9.10, except I used tangogps instead of xgps. I tried GPS drive, but I couldn’t work out how to use it =S It get’s the gps signal fine, but I didn’t know how to use it to get directions etc.

    Thanks for the guide,

    Matt

Leave a Comment

Your email address will not be published.