[APP][1.5+][2013/03/09] Bluetooth GPS for Android : BlueGPS4Droid (version 1.2.6)

herbert1

Senior Member
Jul 25, 2007
207
67
0
I have a bluetooth GPS that I used to use some years ago with a GPS navigation application on my windows mobile phone (HTC BlueAngel, then HTC Elf).

When I switched for an Android phone (HTC Magic, then Acer Liquid), I was strangely unable to use it. It wasn't a big issue for me since both phones have an internal GPS. However, recently I bought a Samsung S galaxy, which GPS is barely usable...

I've searched something for using my bluetooth GPS, but I haven't found any open source application.

So I've developed one:
  • it' free,
  • it's open-source (you can verify what it's really doing and you can improve it!), :)
  • it just asks for needed permissions.

The application allows to use an external bluetooth GPS on Android devices:
The application starts a service, then connects to a Bluetooth device (NMEA GPS) and creates a mock GPS provider which can be used to replace the internal GPS.
It's also possible to log the external GPS NMEA data in a file on the device.

The app needs the following permissions:
  • bluetooth and bluetooth admin (connection to the GPS device),
  • location and mock location (replace the GPS location provider by a new one using the bluetooth GPS device),
  • write external storage (if you want to log the NMEA data into a file on the sdcard).

It should run on all android devices (2.0 and above) and NMEA bluetooth devices (there is now also a special version for Cupcake and Donuts - see below).
I have tested it with a GlobalSat BT-338 bluetooth GPS (SiRF III), a Galaxy S (I9000) and a HTC Sapphire (Froyo CM-6).
It works with Google Maps, Wikitude, GoPenS and my own personal navigation app. It should work with all applications that use Android official location API.

Note: in order to install the app:
  • enable Settings/Applications/Unknown sources,
  • enable Settings/Applications/Development/Allow mock locations,
  • download and install the apk.

Project page: Bluetooth GPS for Android on SourceForge
BlueGPS4Droid apk: BlueGps4Droid_1.2.6.apk for Eclair or newer.
BlueGPS4Cupcake apk: BlueGps4Cupcake_1.2.6.apk special version only for Cupcake and Donuts.
User guide an review (thanks to Leszek Pawlowicz): http://androgeoid.com/2010/09/android-external-bluetooth-gps-apps-bluetooth-gps-for-android/

I want to thank Globalsat U.S. which, kindly, has sent me, free of charge, a USB GPS and a replacement for my old bluetooth GPS, in order to support this work.
 
Last edited:

herbert1

Senior Member
Jul 25, 2007
207
67
0
Change log

BlueGps4Cupcake 1.2.6 (2013-03-09)BlueGps4Droid 1.2.6 (2013-03-09)
  • Bug fix : correction in SiRF options summary description (English/French/Russian/Portugese/Spanish)
  • Bug fix : correction in NMEA checksum calcul
  • Bug fix : NMEA sentences without checksum weren't correctly parsed
  • Update copyright info in source and about app message
BlueGps4Cupcake 1.2.5 (2012-05-11)BlueGps4Droid 1.2.5 (2012-05-01)
  • Add Portuguese translation (thanks to rsantospereira (XDA: rikpereira) and meiji (XDA: meiji.emperor))
BlueGps4Cupcake 1.2.4 (2012-03-27)BlueGps4Droid 1.2.4 (2012-03-26)BlueGps4Droid 1.2.3 (2011-09-08)
  • Add Russian translation (thanks to skleroz)
BlueGps4Cupcake 1.2.2 (2011-05-24)BlueGps4Droid 1.2.2 (2011-05-14)BlueGps4Droid 1.2.1 (2011-01-20)BlueGps4Droid 1.2.0 (2010-12-10)
  • Add SiRF configuration management (NMEA sentences - SBAS - Static Navigation)
  • Add verifications: if bluetooth or mock locations are not enabled, the service is not started.
  • Add alert messages to explain why the service cannot be started if bluetooth or mock locations are not enabled
  • If device doesn't have an internal GPS, the bluetooth GPS provider is enabled automatically
  • Add an about window that gives the version of application, licensing information and where the sources may be downloaded.
BlueGps4Droid 1.2 alpha (2010-10-25)
  • SiRF configuration management (NMEA sentences - SBAS - Static Navigation)
BlueGps4Droid 1.1.2 (2010-11-04)
  • Add verifications: if bluetooth or mock locations are not enabled, the service is not started.
  • Add alert messages to explain why the service cannot be started if bluetooth or mock locations are not enabled
  • If device doesn't have an internal GPS, the bluetooth GPS provider will be enabled automatically
BlueGps4Droid 1.1.1 (2010-09-29)
  • Bug fix (Ticket #4: Connection service is not properly closed https://sourceforge.net/p/bluegps4droid/tickets/4/).
  • Add notifications when the connection with the GPS fails and when the connection service is closed because of two many connection retry.
  • Add settings to choose the number of connection retries before exiting.
BlueGps4Droid 1.1 (2010-09-26) - does not work properly because of bug #4. Use either version 1.0 or 1.1.1 !
  • Reconnect automatically when the connection with the GPS is lost (5 attempts in 5 minutes)
  • Replace Android default internal GPS or use a new location provider
  • Send status notifications when GPS loses fix or is disconnected.
BlueGps4Droid 1.0.1 (2010-10-25)
  • Add verifications: if bluetooth or mock locations are not enabled, the service is not started.
  • Add alert messages to explain why the service cannot be started if bluetooth or mock locations are not enabled
  • If device doesn't have an internal GPS, the bluetooth GPS provider will be enabled automatically
BlueGps4Droid 1.0 (2010-09-12)
  • Connect to bluetooth GPS (NMEA) and replace the internal GPS of an Android device.
  • Record GPS tracks in NMEA files
  • Compatible with Android version 2.0 and above
  • English and French translations
 
Last edited:
  • Like
Reactions: BassBlaster

herbert1

Senior Member
Jul 25, 2007
207
67
0
Localizing BlueGPS4Droid for other languages...

BlueGPS4Droid has been downloaded more than 25,000 times from more than 100 countries. :)

However, actually BlueGPS4Droid is only available in the following languages:

If you find it useful, help us to improve the translations and support new languages !
 
Last edited:
  • Like
Reactions: BassBlaster

Alte.78

Member
Aug 3, 2010
20
5
0
Thank you!

Man, you rock! I thought this is never going to happen!

You made my SGS with half-broken gps useable as I have spare Nokia gps unit that I bought back in E70 days.

Keep up your great job!
 

khaytsus

Senior Member
Apr 8, 2008
7,263
1,176
243
Central Kentucky
I'll give this one a try.. I've tried two others in the market, one I paid for (and is still pay-for) which technically works but doesn't reconnect well or at all. The other was pay-for and now is free, and it works FLAWLESS.

Doesn't hurt to try one more for fun. :) Plus, maybe this one will behave on tablets, as I understand the other two don't. I don't have a tablet yet to try though..
 

jaebird

Member
Jun 27, 2010
5
4
0
I'm interested in having my Android send GPS NMEA as a BT GPS unit. Seems like all the pieces are there in this project. Has the author considered this use-case?

Thanks,
Jae
 

herbert1

Senior Member
Jul 25, 2007
207
67
0
I'm interested in having my Android send GPS NMEA as a BT GPS unit. Seems like all the pieces are there in this project. Has the author considered this use-case?

Thanks,
Jae
You're right, it's even simpler since you don't have to analyze the NMEA sentences.

However,
  1. It' wasn't what I needed (sharing Galaxy S GPS is not really the best idea you can have... :rolleyes: )
  2. there is already several free (and open source) applications available for that purpose... :)

For an open source app see, for example, BlueNMEA here:
http://forum.xda-developers.com/showthread.php?t=553053
http://max.kellermann.name/projects/blue-nmea/

There is also GPS 2 Bluetooth which is free (but not open source) :
http://www.androidpit.com/en/android/market/apps/app/com.cajax.gps2bt2/GPS-2-Bluetooth-v-2
http://www.android-software.fr/gps-2-bluetooth (review in french)
 

herbert1

Senior Member
Jul 25, 2007
207
67
0
New version 1.2.0 is out

BlueGps4Droid 1.2.0
  • Add SiRF configuration management (NMEA sentences - SBAS - Static Navigation)
  • Add verifications: if bluetooth or mock locations are not enabled, the service is not started.
  • Add alert messages to explain why the service cannot be started if bluetooth or mock locations are not enabled
  • If device doesn't have an internal GPS, the bluetooth GPS provider is enabled automatically
  • Add an about window that gives the version of application, licensing information and where the sources may be downloaded.
 

Saphroxx

Senior Member
Jan 25, 2010
108
1
38
Leuven
Some real nice work, your package is very complete. It seems like not too many people have discovered your incredible asset to our Androids. Keep up the good work.
 

Dave.a

Member
May 22, 2010
22
1
23
Hi, thanks for a superb tool. Now I can use my bluetooth MTK chipset GPS a save my HTC Desire battery.
It is possible to add NMEA sentence to configure MTK chipset - like SiRF configuration management.
Thanks
David
 
Last edited:

igalan

Senior Member
Jan 23, 2007
216
5
0
Barcelona
Great, it was a little frustrating not being able to use my Bluetooth GPS with Android. There are several reasons to use external GPS: improved battery life, better precision, better sensibility... It's nice to be able to use an external GPS when needed. Thanks for your program!
 

NewYorkLaw

Senior Member
Sep 21, 2008
290
38
58
staten island, new york
Great, it was a little frustrating not being able to use my Bluetooth GPS with Android. There are several reasons to use external GPS: improved battery life, better precision, better sensibility... It's nice to be able to use an external GPS when needed. Thanks for your program!
Will using an external gps really save on battery life? I thought having the bluetooth on would use as much power as that saved by turning off the gps.

Also, will this interfere with other applications that rely on the gps, or will they all use the external gps while this app is diverting it?

Can I leave the external gps in my car and have the phone only use it when I'm using it in my car for navigation?

EDIT: additional question: can the phone use two bluetooth devices at once? In other words, can I be using my bluetooth headset while the bluetooth gps is active?

Pete
 

igalan

Senior Member
Jan 23, 2007
216
5
0
Barcelona
Bluetooth uses way less power than a GPS. A Bluetooth GPS will run on its separate battery, so it will last 8 or more hours straight (depending on the chipset and battery capacity). Having your Bluetooth radio active won't have much impact on your phone, but try navigating with the built in GPS, it will eat the battery quickly.

You can have several Bluetooth connections at once, but most Bluetooth services can only have one connection: one headset, one stereo audio, etc.
 

Fefi99

New member
Jan 20, 2010
3
0
0
Sokolov
I have a question.
It is theoretically possible to connect an external BT receiver with the phone's internal GPS receiver to several times increased the accuracy?
For example, if the GPS phone would be on the window and external BT receiver would be in the trunk, and we know its position relative to each other.
 

jasonsf

Senior Member
Oct 27, 2008
596
90
0
Tucson, AZ
I want to use this but I have a silly problem. The battery in my BT-339 receiver is dead and I don't have a car charger for it. Anybody have a link to a cheap charger/replacement battery? Ideally, I'd like to get a usb cable for it that I can use in the car. Not sure the size of the barrel connector on it (4mm?). I used to use it with my Treo with a Seidio mount. The mount was powered and came with a power-out cable that charged the gps unit. So, I have a cable with the right barrel connector on one end and another male plug on the other. I also have an AC adapter. Ideas for best solution?

Otherwise, I love the idea for this software!

Jason
 

herbert1

Senior Member
Jul 25, 2007
207
67
0
Hi, thanks for a superb tool. Now I can use my bluetooth MTK chipset GPS a save my HTC Desire battery.
It is possible to add NMEA sentence to configure MTK chipset - like SiRF configuration management.
Thanks
David
Sure it could ! :)
My bluetooth GPS is a GlobalSat BT-338 that has a SIRF III chip, so I had a special interest to be able to configure it...
 

herbert1

Senior Member
Jul 25, 2007
207
67
0
Will using an external gps really save on battery life? I thought having the bluetooth on would use as much power as that saved by turning off the gps.
Normally the bluetooth battery usage should be lower than the internal GPS one...
See also Why Use An External Bluetooth GPS Receiver With An Android Phone? on the AndroGeoid blog.
Also, will this interfere with other applications that rely on the gps, or will they all use the external gps while this app is diverting it?
When you replace a locations provider, all the applications which use it should be affected.
Can I leave the external gps in my car and have the phone only use it when I'm using it in my car for navigation?
Why not ? I'm doing it myself...
EDIT: additional question: can the phone use two bluetooth devices at once? In other words, can I be using my bluetooth headset while the bluetooth gps is active?
It should, but it depends also on the quality of the bluetooth stack and driver.