blankblank blank


Archive for October, 2010

Improve Android GPS Position Accuracy With GPS Averaging

Application Name: GPS Averaging

Description: Logs and averages multiple GPS positions to improve position measurement accuracy

Publisher’s website: GPS Averaging

Cost: Free

Version/date reviewed: v. 0.9  /  10-17-10

Phone/OS: Droid X / Android 2.2

gpsav_QR

Android Market link (mobile app only)
Android Market link (browser)


GPS determines position by analyzing signals from GPS satellites to figure out how far away they are. These satellites are in orbits that put them about 12,000 miles above the Earth’s surface, which can make their signal faint (and noisy) by the time they reach your Android unit. This noise can introduce some error into the calculated GPS position – the GPS receiver can have some difficulty analyzing a noisy signal. If the noise is random, you can improve accuracy a bit by averaging multiple position measurements, and that’s what the GPS Averaging app does.

gpsav_1

Figure 1: When you start up the program, it fires up the GPS; when a position is obtained, the “Start averaging” button is  enabled. Press that to start averaging …

gpsav_2

Figure 2: Display will show current position, and averaged position, along with the number of measurements. Degree-minute display only, unfortunately; wish the Babylonians had never come up with that system. When you’re done, press “Stop averaging” to stop the process.

The “shake the phone” tip might work if you’re in a wooded area with limited sky visibility, but I doubt it will help in open-sky situations

gpsav_3

Figure 3: Once completed, the average position will be displayed, and you’ll have the option of showing that position in Google Maps (Map button), creating a GPX file for that location (Export button), or sending the position to an app of your choice, like a Notepad app …

gpsav_4

Figure 4: Fortunately, the exported data gives the location in decimal degrees as well as degree-minutes. Way too many decimal places, though – it should round off to no more than the sixth decimal place, and you’ll be lucky to get five decimal places of accuracy

Keep in mind that this only helps with position inaccuracy based on a noisy GPS signal; it won’t help with other important factors like satellite geometry, ionosphere effects, etc.. See my previous posts on improving GPS accuracy for help with this. Since most built-in Android GPS receivers don’t have the WAAS system used to reduce position error, GPS Averaging will only help a little if those position errors are large. But GPS Averaging does work if you use an external Bluetooth GPS receiver, which does usually have that WAAS system capability.

Other Issues:

Trying to “Send” the data to the Springpad note-taking application didn’t work; it interpreted the exported data as a search command. But since it worked fine with every other app I tried, I’m guessing this is a Springpad issue.

Final thoughts:

You may get a bit of improved accuracy by using GPS Averaging, but it’s hard to quantify how much improvement you’ll see. It’s likely to be small, especially with a typical Android phone’s built-in GPS, since those aren’t capable of high accuracy to begin with. With an external Bluetooth GPS, it may be a bit more useful, but you still shouldn’t expect a huge improvement in accuracy. And you should keep other factors that can degrade GPS accuracy in mind.




Map Geotagged Photo Locations In Android With Been There

Application Name: Been There

Description: Maps locations of geotagged photos on an Android phone; displays thumbnails

Publisher’s website: Been There

Cost: Free basic version; ~ $1 paid version adds ability to organize photos in albums, export photos in KMZ format for viewing in Google Earth.

Version/date reviewed: v. 1.3.5 (free)  /  10-26-10

Phone/OS: Droid X / Android 2.2

beenthere_qr

Android Market link (mobile app only)
Android Market link (browser)


Been There takes all the geotagged photos on your Android unit (ones with the photo location embedded in the EXIF metadata), and plots their location in a Google Maps interface.

beenthere_1

Figure 1: Pictures within the mapped area visible are shown in thumbnail format at the top; you can drag the thumbnail strip either direction to view more photos

beenthere_2

Figure 2: Tap quickly on a thumbnail at the top, and the location it was taken will be highlighted in the map. Similarly, tap on a point on the map, and the photo thumbnail for that point will be highlighted at the top. A longer tap on a thumbnail will bring up a slightly larger version of the photo in a viewer to fill the phone’s screen (no zoom options, though). A long tap on a thumbnail followed by drag lets you resize the thumbnails larger or smaller.

beenthere_3

Figure 3: If you zoom in on the map, only those thumbnails within the map view will be visible. Similarly, zooming out will show additional thumbnails located in the map area. A “My Location” option in the menu will show you where you’re currently located, which can help you navigate to the location where a photo was taken.

Other Issues:

If you’re zoomed out so that lots of pictures need to be plotted on your map, it can take a few seconds for the thumbnails to show up.

Final thoughts:

This is the first app of this type I’ve reviewed (there’s a few others I’ll get to at some point), but even so, I like it a lot; I have difficulty imagining that similar apps would be much easier to use, or work as well. Recommended.




Remove Photo Geotagging Info With Geo Eraser

Application Name: Geo Eraser Free

Description: Creates a copy of a photo with geotagging coordinates removed

Publisher’s website: Sakaneya

Cost: Free (ad-supported)

Version/date reviewed: v. 0.22  /  10-17-10

Phone/OS: Droid X / Android 2.2

geoeraser_qr

Android Market link (mobile app only)
Android Market link (browser)


A recent NY Times article told the story of how Mythbuster Adam Savage posted an iPhone photo taken near his house, without realizing that the geographic coordinates for that location were being automatically embedded in the photo (usually referred to as photo “geotagging”). So people could easily find out where he lived, and also know that he wasn’t at home. Most Android phones with GPS come with geotagging turned on as the default, and while you can turn that off, it can be inconvenient to continually turn it on and off (plus you can forget how you last left it). Geo Eraser lets you create an exact copy of a geotagged photo, but with the coordinate information stripped out; it can also optionally remove the photo’s date and time as well.

geoerase_1

Figure 1: You never actually run the Geo Eraser app directly; instead, you open a photo with the viewer app of your choice, then “share” it to Geo Eraser.

geoerase_2

Figure 2: The photo is displayed at the bottom, and if it has coordinate/date info embedded, that’s shown at the top. The “Location” in China seen at left is a bug – that’s where the photo would be for an eastern longitude the same coordinates as the actual western longitude.

geoerase_4

Figure 3: The Menu => Erase Item page lets you set whether the coordinates, date/time or both are to be erased

geoerase_3

Figure 4: When ready, just press the “Erase GeoTag” button, and a copy of the original photo will have the unwanted geographic metadata stripped out, and be put into a folder called “Geo Eraser” with the same filename as the original photo. Since some Android phones give photos automatic names that contain the date and time, you may need to rename the photo if you want to completely scrub date/time data out.

Other Issues:

None, apart from the “location” bug mentioned above, which doesn’t affect anything of consequence.

Final thoughts:

Really only does one job, but does it perfectly. Definitely worth having if you’ll ever need to remove photo geotags.




On The Levels I: Bubble Battle

Most of the apps reviewed on this website are geographically-related, but I’ll occasionally do reviews of apps designed to record non-geographic attributes; after all, the website’s byline does say “Recording” in it :) . Some of the most common types of measurement apps in the Android Market are the ones designed to measure the orientation of objects, e.g. levels, inclinometers, protractors, etc.. Today, I’ll be looking at two of the most popular bubble level apps, both of which are called “Bubble”. Future reviews will cover lots more of these, hence the “I” in the title.


Application Name: Bubble

Description: Bubble level for measuring phone orientation

Publisher’s website: KTK.BZ

Cost: Free

Version/date reviewed: v. 1.8.2  /  10-24-10

Phone/OS: Droid X / Android 2.2

bubble_qr

Android Market link (mobile app only)
Android Market link (browser)


This is perhaps the most popular bubble level app on the market; it claims over two million downloads, and based on the number of comments I believe it. In appearance, it’s one of the more realistic, “life-like” bubble levels.

bubble_1

Figure 1: Here’s the display with my Droid X laying “flat” on a surface. Unlike most other Android phones, the Droid X can’t lay fully flat since it has a “hump” on the back that holds the camera. Fortunately, like most level apps, Bubble can let you calibrate your unit to compensate for this, as well as compensate for inaccuracies in your unit’s orientation sensor

bubble_2

Figure 2: Here, I’ve stood my phone on end (in portrait orientation), and Bubble automatically switches the level type to a horizontal one; tipping the phone into a landscape orientation (long end on the ground) would create a similar display rotated 90 degrees from the one at left. I also set the background to black, and added a pitch indicator.Tapping on the screen “locks” the angle measurement, tapping again unlocks it.

You also have the app speak the angle, and also set an alarm notifier (buzz, beep or light) to indicate when it’s level.

Other Issues:

Biggest issue I have with this app is that it automatically switches the level type as you tilt the phone. For example, if I have the phone in portrait orientation, and tilt it more than 60 degrees, it automatically switches the level display into landscape orientation. So, I can’t measure inclination angles of more than 60 degrees. The option to “lock” the level mode would be a useful addition. And while the display is realistic, I think I’d actually prefer a non-realistic bubble with more clearly-defined edges. Finally, I wish it would display the first decimal place; the orientation sensor is capable of that kind of accuracy.

Final thoughts:

Good app, but the lack of mode locking and reduced degree display accuracy are definite minuses.


Application Name: Bubble (level)

Description: Bubble level for measuring phone orientation

Publisher’s website: AndroGames

Cost: Free

Version/date reviewed: v. 1.6.0  /  10-17-10

Phone/OS: Droid X / Android 2.2

bubblel_qr

Android Market link (mobile app only)
Android Market link (browser)


This second Bubble app is generically similar to the first, but does have some significant differences, good and bad.

bl_1

Figure 3: Compared with the first Bubble app, this one displays the angle to one decimal degree of accuracy, a definite plus. The bubble doesn’t look as realistic, but I actually find it easier to view, and the crosshairs also give a better feeling for how far off you are from vertica

bl_2

Figure 4: Tilting the phone in portrait or landscape mode can automatically switch from the round bubble level mode used in flat orientations to the linear mode seen at left. But the app’s Preferences section lets you turn on a “locking” option that freezes the mode, keeping it from changing when you tilt the unit more than 60 degrees. So, by tapping on the “Locked” section at top, I can turn the unit more than 60 degrees without having it flip to a different mode; now, I can measure angles of more than 60 degrees.

bl_3

Figure 5: You can calibrate the unit to adjust for an uneven phone; preferences lets you set display options, and also set the “viscosity” of the fluid so that the bubble moves more quickly (low viscosity) or slowly (high viscosity). There’s also a sound alarm option to indicate when you’re level.

Biggest problem with this app is the inability to “freeze” a measurement with a simple screen tap, as you can with the other bubble app. Pressing the “menu” button to bring up the “Calibrate” and “Preferences” options will freeze the measurement, but in two out of the three modes this will partially obscure the angle measurements.

Other Issues:

None; worked fine without crashes.

Final thoughts:

This second Bubble app is mostly superior to the first one, but the lack of a measurement “hold” capability is a huge minus. You can sort of live with using the “menu” button as a “hold” button, but that’s an imperfect fix. Hopefully, this drawback will be fixed in a future version.




Android Bluetooth GPS Transmitter App: SolidSync Network/Bluetooth GPS

Application Name: SolidSync Network/Bluetooth GPS

Description: Transmits GPS position data over Bluetooth or over a network using TCP/IP from your Android unit to a compatible receiver

Publisher’s website: SolidSync

Cost: $1.99

Version/date reviewed: v. 2.0.0  /  10-21-10

Phone/OS: Droid X / Android 2.2

ss_qr

Android Market link (mobile app only)
Android Market link (browser)


This SolidSync Network/Bluetooth GPS app, like the Bluetooth GPS Output app reviewed yesterday, can transmit GPS position data over a Bluetooth connection to a compatible receiver, like a laptop running mapping software. But unlike that app, it offers more control over how the program runs, and also offers the option to transmit position data over a network using the TCP/IP protocol. After you install the app, you’ll find it in the apps listing as “Network/Bluetooth GPS”; took me a while to figure out that it wasn’t listed under either “Bluetooth” or “SolidSync”. Setting up the Bluetooth connection is as much of a pain with this app as the previous one, but the SolidSync website has far better documentation, making the process a bit easier to deal with. And unlike the other app, identifying the correct COM port number for this connection, required by the mapping software on the laptop to make a successful connection, is a lot easier -  in the COM port listing section of your Bluetooth control panel, you should see it clearly identified as the “Outgoing” “SolidSync GPS Bluetooth” COM port.

ss_2

Figure 1: Unlike the other Bluetooth GPS app, the SolidSync app offers the option of running the Bluetooth GPS connection either as the app, or as a background service by checking a box. Just remember to start up the app again to turn off the service, otherwise the GPS will keep running continuously and drain your battery.

Pressing the “Start” button next to the “Service” label starts up the GPS only. You can then  “start” either a Bluetooth GPS connection by itself, a network GPS connection by itself, or have both running at the same time. The Settings section lets you set both the GPS update interval (default is 1 second, longer may reduce battery consumption), and the maximum number of network connections it will accept simultaneously. I had no problems using it with any of the mapping programs on my laptop that I tried it with in Bluetooth mode; didn’t test the netwokr mode.

Other Issues:

Setup was as big a pain as it usually is for Android Bluetooth, but worked fine after that.

Final thoughts:

I prefer a separate Bluetooth GPS transmitter; it has definite advantages in terms of battery life and accuracy. But one of those stand-alone Bluetooth GPS transmitters can cost you about $30-40; if battery and accuracy aren’t an issue for you, you can definitely save money using a Bluetooth GPS transmitter app. Between the Bluetooth GPS Output app reviewed yesterday, and the SolidSync Network/Bluetooth GPS app reviewed today, the choice is obvious: the SolidSync app has better documentation, and more features, at the same price. If you need this kind of app, this is the one you should choose.




Android Bluetooth GPS Transmitter App: Bluetooth GPS Output

Application Name: Bluetooth GPS Output

Description: Transmits GPS position data over Bluetooth from your Android unit to a compatible receiver

Publisher’s website: Bluetooth GPS

Cost: Free 10-minute limited demo version; $1.52 unlimited version

Version/date reviewed: v. 1.05c  /  10-20-10

Phone/OS: Droid X / Android 2.2

gpsout_qr

Android Market link (mobile app only)
Android Market link (browser)


This is a pretty basic app; it does the job of transmitting GPS position data over Bluetooth from your Android unit to a Bluetooth receiver (e.g. a laptop with mapping software), and not much else; also not a lot of controls or settings. Setup wasn’t too painful, since the app makes your Android discoverable. The basic steps for setting  it up were outlined in the previous post on this site, but there’s a slightly more detailed set of steps available at the app’s website. Once configured, starting up an application on the laptop that uses the Bluetooth GPS signal initiates a connection.To find the right COM port number, look in your Bluetooth control panel for an “Outgoing” COM port, possibly also labeled as an “SPP slave”.

gpsout_1

Figure 1: Here, the Android app is connected to my touchscreen laptop running a mapping application; you’d see “Not connected” in the upper right-hand corner if no connection was present. Satellite data is displayed, but there are no additional controls available here, or in the app menu.

Other Issues:

A bit of a pain to set up, but that’s often the case with any Bluetooth device setup on Android. Beyond that, seemed to work fine.

Final thoughts:

A pretty stripped-down app; does its job, but that’s pretty much it. Nice that it has a demo mode that lets you check out both the setup and the functionality. But tomorrow’s review covers an app that performs more functions and allows more control, all at the same low price; given that, not sure I can really recommend this app.




Using Your Android Phone As A Bluetooth GPS Transmitter

I’ve covered the advantages of using an external Bluetooth GPS transmitter instead of your Android’s built-in GPS before; chief among those are longer battery life and higher accuracy. But it’s also possible to convert your Android phone itself into an external Bluetooth GPS transmitter, where it can broadcast position data to a paired Bluetooth receiver. One useful application for this would be with a laptop that has compatible mapping software installed in it -  it can use the transmitted GPS data to plot your position. Examples of this kind of software would be Microsoft Streets And Trips (paid, but available as a free time-limited trial), or the free topographic map software USAPhotoMaps.

To take advantage of this capability, you’ll need the following:

  • An Android phone/unit with Bluetooth and GPS. Most currently available Android phones have both, but some Android tablets don’t come with GPS and/or Bluetooth.
  • A computer with Bluetooth connectivity. Many modern laptops come with Bluetooth already built in; if yours doesn’t, you might try one of the cheap Bluetooth USB dongles available for $3 or less from Meritline or DealExtreme. Some people have problems with these, but I’ve had good luck with the $2 ones I bought from DealExtreme. All of my tests have been with Windows systems, so I don’t know how well they would work with Macs.
  • Software that can take advantage of the Bluetooth GPS signal. Any software that can accept NMEA GPS input on a serial COM port should work with a Bluetooth GPS transmitter.
  • Properly-configured Android software that transmits the GPS position data over Bluetooth to the computer.

The last of these is probably the biggest hurdle; setting up the Android phone to work correctly took me quite a bit of time to figure out, and even then I couldn’t get it to work with a few of the apps. If you read the comments associated with these apps, you’ll see that there are some phones that work with some of these apps, while others don’t. Given all the steps you have to go through to make even the simplest app work, it’s not surprising that people have problems.

Here’s a rough outline of the steps you need to go through to get a working Bluetooth GPS connection between your Android phone and your computer:

  1. Pair your Android phone with your computer with Bluetooth (Settings => Wireless And Networks => Bluetooth).
  2. Start up the Bluetooth GPS app on your Android.
  3. If available on the app, make your Android discoverable.
  4. Use your Bluetooth control panel in Windows to add the Bluetooth GPS device to your Windows system.
  5. Find out which COM port has been assigned to the Bluetooth GPS device.
  6. Start up the map software on your laptop, and set the GPS input device to NMEA, with the COM port identified in the previous step.

Not exactly a one-step process. Steps 1-4 only have to be done once if you stick with a single app, but if you install a different Bluetooth GPS transmitter app, you’ll have to do steps 1-4 specifically for that app. And if you go back to the original app, you’ll have to go back and do steps 1-4 again. This is even more complicated if the apps can’t make your Android discoverable – then you have to manually add a Bluetooth COM port to your Windows system. One of the apps I’ll be reviewing in greater detail has some decent online documentation for this process, which helps a bit.

I took a look at four Android Bluetooth GPS transmitter apps for review, two of which simplify the process by making the Android discoverable, two which can’t. These latter two were free apps, but unfortunately after repeated attempts, and much head-banging, I simply couldn’t make them work. You might have better luck than me (and free is nice), so here are links to BlueNMEA and GPS 2 Bluetooth if you want to try them out. Don’t spend too much time, though – the paid apps I’ll be reviewing over the next few days don’t require as much effort to get working, have more capabilities, and only cost about $2. How much is your time worth?




Insert Geographical Data Into An Android Text Field With Inserty

Application Name: Inserty

Description: Inserts user-definable text snippets into Android text fields; these text snippets can include GPS-derived data.

Publisher’s website: Room.404

Cost: Free

Version/date reviewed: v. 1.3.10  /  10-18-10

Phone/OS: Droid X / Android 2.2

inserty_qr

Android Market link (mobile app only)
Android Market link (browser)


Inserty lets you create a list of pre-defined text snippets that you can insert into any text field. These snippets can be simple, unchanging bits of text, but you can also include geographically-related data in the snippets updated automatically from your GPS position:

  • Address
  • Street
  • Postal Code
  • State
  • City
  • Country
  • Position Coordinates
  • Latitude
  • Longitude
  • Accuracy
  • Time
  • Date
  • Google Maps link
  • Altitude
  • Current clipboard contents

Inserty can be used in two different modes: As a stand-alone app that can send snippets to other Android apps, or as an alternate text entry option (like an alternate keyboard option). You’ll likely use the stand-alone app at least occasionally, since that’s where you can delete current snippet options, and create your own.

inserty_1

Figure 1: In app mode, it will open with a list of available snippets; the view at left shows the default ones that come with the app. You can delete any of these, move them up or down in the list, and perform other operations with a long tap on any of them. A short tap will bring up the option to send the text snippet to another app (notepad, Facebook, email, etc.).

inserty_2

Figure 2: From the main menu, you can add a text snippet of your own definition. Type unchanging text into the text box; use the “Insert tag” button to select variable text blocks (location, time, date, etc.) as “tags” that will be inserted in the snippet on the fly.

inserty_3

Figure 3: You can also use Inserty by invoking it as an alternate input method; to use it this way, you’ll have to enable it as an alternate keyboard in the Settings section of your Android unit. Once enabled, you can pull it up by a long press in a text field, selecting “Input method”, then choosing “Inserty” from the box shown at left. You’ll get a “Quick Inserty” selection …

inserty_4

Figure 4: … with your options listed. Select one, the text will be inserted into the text field, and you’ll be prompted to switch back to the keyboard method you normally use.
Other issues:

The first time you use Inserty after a long period of time without a GPS fix, it may take a couple of minutes to get a location fix that will allow Inserty to update the position-related tags. You can speed this up by getting a good position fix before starting to take notes. I also wish that Inserty were available as a service you could access from the Android status bar; having to start up the app, or going through multiple steps to use it in “Input method” mode, can be inconvenient at times. I also wish it had the option to display your current compass or GPS heading direction.

Final thoughts:

Not always as convenient to use as I’d like, but Inserty is a useful utility to have for note-taking apps that don’t have the option to include position data; not bad as a “boilerplate” utility, either. Recommended.




Basic Android GPS Info With Just GPS

Application Name: Just GPS

Description: Simple display of basic GPS parameters

Publisher’s website: None

Cost: Free

Version/date reviewed: v. 1.70  /  10-17-10

Phone/OS: Droid X / Android 2.2

justgps_qr

Android Market link (mobile app only)
Android Market link (browser)


There are lots of Android GPS apps that display many different GPS attributes; see this post for reviews of two of them. But sometimes you just want basic GPS data in an easy-to-read format, and Just GPS does a good job at that.

justgps_1

Figure 1: Nothing fancy; just clean displays of position, speed, altitude and heading. I could easily live without the max/avg. speed and odometer readouts, but they’re unobtrusive, and if you ever need them, they’re there. You can modify the units for most of these readouts in the Options section (i.e. change from metric to Imperial).

Other Issues:

Worked fine. Wouldn’t mind more coordinate systems (e.g. UTM, MGRS).

Final thoughts:

Not much to say about Just GPS; doesn’t do a lot, but what it does, it does well.




Tricorder: Android Homage To Star Trek

Application Name: Tricorder

Description: Multiple sensor data output, including GPS and compass; solar data.

Publisher’s website: moonblink

Cost: Free

Version/date reviewed: v.5.11  /  10-5-10

Phone/OS: Droid X / Android 2.2

tri_qr
Android Market link (mobile app only)
Android Market link (browser)


While comparing his Droid Incredible with my Droid X a few months ago, a friend commented that the sensor capabilities of the Droids reminded him of the tricorder from the original Star Trek series, a multi-purpose data collector and analyzer. What he didn’t know was that I had a copy of the Android Tricorder app on my unit that makes the connection even more explicit. I can’t say that I find it totally useful – I think there are better apps for many of the functions. But it’s fun to use to show off your Android’s capabilities, and it does have one feature related to GPS accuracy that might surprise you.

tri_grav

Figure 1: A “gravity meter” monitors input from the orientation and accelerometer sensors.

tri_mag

Figure 2: The magnetometer displays information from the unit’s magnetic sensor.

tri_aco

Figure 3: An acoustic meter displays the waveform, spectrum, and noise level for input into the unit’s main microphone (here, me whistling a note).

tri_geo

Figure 4: The geographic section displays location from both network data and GPS satellites; the former is a nice touch, since that data is either not presented by other GPS apps, or is superseded by the GPS data when a fix is acquired. The display at the bottom shows the satellite sky map, and a compass with both true (T) and magnetic (N) directions. Wouldn’t want to use it for navigation, though.

tri_ems

Figure 5: Electromagnetic sensor shows the strength of the local WiFi networks, as well as that of the cellular network. There are lots of apps for the former, but I haven’t seen that many that show cellular network strength this clearly – a good alternative to the cell signal bars on your status bar.

tri_sol

Figure 6: You might think that a solar activity sensor, showing downloaded solar data, might be interesting but not particularly useful. But the plots of proton/electron flux at the bottom can reflect on how accurate your GPS position measurement is. As the sun moves into a more active phase, these fluxes can affect conditions in the Earth’s ionosphere, which in turn can make GPS less accurate. So if you see those plots rising near the end, that would suggest that your GPS position might be less reliably accurate.

Other Issues:

None ; worked fine every time.

Final thoughts:

Perhaps not the best sensor app out there, but too cool in appearance and function not to have, and the solar data is hard to find elsewhere.