GeoVector: Point & Shop

You point your phone/camera/gps to a restaurant in some part of town. Push some keys and is presented with a review about it that you read right there.

Afterwards, you are walking around town and find this nice building and want to know its history. Same thing. Point and read about it.

Ok, when? Where?
Now. In Japan.

GeoVector announced (with its partner Mapion) that KDDI mobile phone users in Japan can now point to a buiding and obtain information about it using “Mapion Local Search for Mobile Phones”.

Based in San Francisco and with offices in New Zealand and Japan, GeoVector holds quite a few significant patents covering augmented reality, 3D search engines and virtual reality systems. In Japan, they were able to connect with companies that had the hardware necessary and customers willing to use its service.

Phones and PDA’s with cameras, embedded GPS and integrated compass (like the Sony-Ericsson CDMA-based W21S) are all over the place in Japan and that was a natural fit for GeoVector’s technology. The idea is to provide even more Location Based Services where someone can point and buy some product or service, like a movie ticket or parking space.

Ok, when do we get it here??

Answering my own question, I found a column written by Rafe Neddleman on Release 1.0 where Peter Ellenby, the founder of GeoVector answers that it “will not be soon”.

Peter points Semacode.org for an example of a non-GPS based geo-reference technique.

[Based on report from Wireless IQ]

GPS informs: your bus is coming

This one just blew me away. Several cities in U.S. are using an AVL (Automatic Vehicle Location) kit provided by NextBus, a privately owned company based in Emeryville, CA. In fact, San Francisco is using NextBus for Muni’s since 1999.

The kit includes a GPS receiver, a Cellular Digital Packet Data (CDPD) and the respective antennas. From a job posting at NextBus website:

“The NextBus system is a multi-tier system written primarily in Java and JSP’s with a database back-end. NextBus configures its GIS data with a heavily customized version of ArcView. NextBus deploys hardware into the field that is programmed in C. The hardware communicates wirelessly to the NextBus servers.”

From NextBus’ website you can check a bus route on a local map or through its interface to Google Maps. It will tell you exactly when the next bus is expected to arrive. You can receive this information on a mobile device (wireless phones and pda’s). You can also set alerts that will tell when the next bus is supposed to arrive. Great tool.

Gregory Szorc’s Blog (which first pointed me to NextBus) describes how to debug the NextBus’ API.

A Map for your Blog

FeedMap lets you create a little map image based on the location you provide in a blog. I thought it would use the GeoTags that can be added to the META Tags of a webpage, but while submiting a blog feed it asks for either an address or latitude/longitude coordinates.

Click on Submit Blog under Options on the right navigation bar. In the same page you first provide the URL for your blog’s feed. Enter a blog XML feed address, for example in my case the URL I get from FeedBurner’s RSS 1.0 feed:

http://feeds.feedburner.com/JeepxGpsDiscoveries.rss.xml

Provide an address or latitude and longitude and your will be provided with a little code snippet that can be added to your page. Check the bottom right on this post to see it. You can check which blogs are around and events. It makes use of the MapPoint API provided by Microsoft.

Cold Start and Aided GPS

Imagine that you wake up in a dark place without any known reference to help you figure out where you are or when. You will need to start getting your bearings by listening carefully to any sound, looking for clues.

That is pretty much how a GPS receiver “wakes up” after being moved hundreds of miles from its previous location, days or weeks after being used. It doesn’t have a clue about its whereabouts.

So how does it figure out where it is so it can tell you?

Remember that a receiver determines its position by calculating the time a signal sent by a GPS satellite takes to reach it. But for that the receiver needs to know first where that satellite is located, precisely.

As you know already the faster a receiver can lock its current location, less time you will have to wait to start using its data. That’s usually called Time To First Fix (TTFF).

Almanac & Ephemeris

Each satellite generates and broadcasts its own 1023-bit Pseudo Random Noise (PRN) codes, these are pseudo random sequences that a receiver knows about and tries to match by generating that same signal in order to identify a particular satellite. They also encode the time a signal is being transmitted. The receiver will need to find this signal in time (the signal is transmited at 1023 Mbits/sec) and frequency (added doppler effect from the satellite movement).

Each satellite is sending its PRC (Pseudo Random Code), position and current time 50 times per second. After locking up a signal the receiver will obtain this data and calculate the time difference from when the signal was sent to the Time of Arrival (TOA). The signal from a 4th satellite is used to calibrate the time in the receiver.

Included among the data received at this time are the almanac and ephemeris.

Almanac data is not very precise but valid for several months. A Factory Reset would require the download of a full almanac which might take up to 12.5 minutes. All GPS satelites broadcast almanac data from each other.

But each satellite broadcasts only its own ephemeris data which includes very precise orbital and clock correction data. The ephemeris data is used to calculate the satellite position for any time within the period of its orbit described by those ephemeris.

On a “cold start” the receiver knows “where to look” in the sky based on the almanac data available and will try to obtain ephemeris data from each visible satellite. That ephemeris data will be valid up to 4 hours. Every 30 seconds each satellite broadcasts its ephemeris. If your receiver is blocked while trying to obtain the data, it will have to start over in the next cycle.

On a “warm start” some ephemeris is already available and the receiver can almost “guess” its position and in a “hot start” the receiver has almost all of it readily available. This whole process can translate in minutes or seconds of wait depending in the kind and quality of data available for a receiver to obtain a fix.

Aided GPS

In an effort to drop the TTFF in general and particularly in poor visibility conditions, companies like Sirf and the privately owned Global Locate introduced mechanisms to help receivers in obtaining ephemeris data without the need for the usual wait associated with it.

Notice that there is a difference between Assisted and Aided GPS (both called AGPS to complicate things a bit). Aided GPS is “generally understood to be either ephemeris or almanac aiding”. While Assisted GPS uses data from a wireless network infrastructure, sometimes down to location information itself based on the Cell ID from a mobile phone.

There is also a difference regarding where changes are made to provide this aid: at the control plane by modifying TCP/IP format within the actual wireless network infrastructure or at the user plane where no major upgrades are necessary and the distribution is made thru messages like SMS for example.

Global Locate uses Trimble survey grade reference receivers to build its own private reference network to “collect, format and redistribute live ephemeris”. This data is then used to provide Long-Term Orbit (LTO) data based in orbit models that according to this PDF will provide very precise satellite ephemeris good for up to 10 days.

The HP 6500 PDA includes “Quick GPS Connection” software that makes use of Global Locate LTO data which can be obtained thru a cradle sync or downloaded from the Net. GpsPassion tested it against a SirfStarIII equiped receiver.

Motorola phones equipped with GPS receivers already make use of Sirf’s SirfLoc servers through its iDEN (Integrated Digital Enhanced Network) to obtain aided information for fast fixes.

Sirf just announced InstantFix, a mechanism similar to that provided by Global Locate where users will be able to download ephemeris good for up to 7 days for use with their receivers. In the same week that Sirf announced this service, GlobalLocate announced two patents just obtained covering the generation and distribution of LTO data. Let’s hope they figure out a way to work together.

One of the selling points from LTO vendors is that knowing “where to look” for a signal a GPS receiver can use a lot less power to keep track of its location, from very weak signals and even under very poor visibility conditions, including indoors.

GpsPassion has a comparison of the Cold Start and Hot Start times for several GPS receivers for PocketPC’s. For more info on Global Locate check this article from GPSWorld.

If you want more details about the operation of the GPS satellites check here, here and here (PowerPoint slides).

GPS News: Teaching GPS to Kids, Golfing

This is the kind of news that I wish we would see more often instead of everyone freaking out about tracking everything and everyone:

Kids at schools from Lenoir County in Kinston, North Carolina will be offered outdoor activities classes where they will be able to learn map reading skills, use GPS and play geocaching. Great example.

Golf players are getting fed up to have to wait for players using GPS in their fields: “People are pacing off yardages, looking for sprinkler heads, hunting for yardage markers, driving their carts to every ball because they have GPS” and meanwhile, a game will take a couple more hours than it used to.

Brits might be able to have driverless cars equipped with GPS and RFID in their roads by 2056. And Toyota is working on a self-parking Lexus that makes a writer wonder if we will be needed in the future.

Tracking Dept. News

School buses in Palm Beach, FL will be equipped with GPS so parents can relax and not worry about their kids being abducted.

A smarter use of of GPS was made to track ransom money of a kidnapping. I bet the waves of kidnappings in South America and other countries would take a nice toll if this tactic were put in place.

Orange, a French-based company, will distribute Columba, a “phone-bracelete” that uses Assisted-GPS in GSM/GPRS phones to help track Alzheimer’s patients.

GPS is being used at Yellowstone to help scientists track its volcanic activity.

Fisherman in India now can be saved from being caught in Pakistani waters with the help of GPS receivers subsidised by the Government.

Telespial released TrackStick, pretty much the smallest self-contained GPS receiver around. The device logs its location, timestamp, heading and altitude at regular intervals and store it to 1Mb of Flash RAM. You can output its data in .rtf, xls, html and as described by OgleEarth, GoogleEarth .kml files. You can also link to MapQuest and Virtual Earth from its companion software app.

I love this part from the description in its website: “The Track Stick’s micro computer contains special mathematical algorithms, that can calculate how long you have been indoors. While visiting family, friends or even shopping, the Track Stick can accurately time and map each and every place you have been.”

Its companion product, Track Stick Manager can be used then to upload its data through an USB connection. It makes use of D2XX, a driver by Future Technologies that allows reading data from USB with help from a single .DLL (check under the drivers directory, you will need to install it too).

Finally Secom, the same company that equipped backpacks with RFID for school kids, is providing (most probably Assisted) GPS devices for elders in Japan that can’t find their way back home.

L2C and GPS Satellites

Before everyone gets too excited about the announcements on L2C availability for GPS users (a new civilian signal) consider this first: there is one satellite capable of transmitting L2C signals, two more planned for 2006 and 12 for the next years. This satellite will be going around the Earth during its lifetime.

Two: Twenty Block II (plus 9 Block IIR, Replenishment) satellites rover around the Earth today, they are not geo-stationaries. They are only visible from a given location for some hours during the day. If you want to check when a satellite will be visible from your or any other area, check this Planning software from Trimble.

Three: you will need a dual or multi-frequency receiver capable of handling the currently available L1, (in some products L2) and the new L2C frequencies. So, it is great that these changes are coming, thanks to the recognition for the need of quality location data by groups like surveyors. But they will take a good couple of years to happen and for now they sound more like a PR effort from the White House to compensate the volume of press given to Galileo, the European Space Agency effort that will also take some years to be fully available.

L2C signals will be more powerful than the current L1 used by handheld GPS devices. Good news are that another even better signal called L5 will be made available in the future, with an even higher power level and larger bandwidth that will “make it even easier to acquire and track weak signals”. The first satellite carrying L5 capable payload should be launched sometime this year.

Trimble seems to be the only vendor that currently offers, thanks to its proximity to the group that developed the new payload of the new satelittes, receivers capable of handling L2C (and L5) signals.

Finally, it may take a while for mass market production of consumer oriented chipsets capable of handling multi-frequency signals that can feed consumers with cool gadgets. Surveyors, planes and boats will come first. Probably in this order. Geocaching will most possibly come after them.

Check this article from Professional Surveyor Magazine and this one from Trimble for a good history and the current state of the GPS Satellites.

Maritime DGPS: Coastal Beacons

If you read the Using DGPS post you might have noticed the screenshot from GpsTweak highlighting one of the possible sources for correction information for data obtained from GPS satellites: External RTCM Data.

That means WAAS isn’t the only way to get better accuracy with your receiver. Remember that WAAS was an effort from the FAA to improve landing of airplanes. When RTCM is mentioned you are talking about ground stations (currently maintained by the U.S. Coast Guard and other agencies) or “beacons” transmitting data most often used by boats.

By selecting an external RTCM Data source you will be connecting a serial port in your GPS receiver (if one is available) to an external beacon receiver. This way you will be able to grab data that follows the RTCM SC-104 standard (proposed by the Radio Technical Commission for Maritime Services).

Or if your receiver is also capable of tuning frequencies in the KHz range used by the beacon transmitter you might be able to select Internal RTCM Data. Thales produces the MobileMapper CE which includes among its accessories a Bluetooth beacon receiver.

But I haven’t seen CF cards that implement an internal RTCM receiver combined with the MHz range required for GPS satellite signals. If you know of any, let us know. Check this article by Chuck Husick for a good description of the Maritime DGPS.

Using DGPS

Ok, we covered the theory. Now let’s practice. To set a GPS receiver in WAAS/EGNOS compatible mode you can use GpsTweak mentioned here two posts ago or MemoryMap Sirf Utility that is even simpler. GpsTweak can tell you a bit more about your receiver. But if you want to play safe, go with the MMSirf Utility. Or if you are really adventureous you can try SirfDemo.

This assumes that you have a Sirf-based GPS receiver, which will probably be the case, is trying to follow these directions and won’t make me responsible for any problems that might arise from trying this. If you are not sure about your receiver, please check the specs of your model before using this utility.

Sirf receivers can usually operate in two protocols: NMEA (text-based) and Sirf (binary).

Now that you know that your receiver uses Sirf chipset, install and run GpsTweak. First select Setup | Port Settings… pick the COM port used by your card, speed of 4800 and NMEA as the GPS protocol. Select Setup | Connect. You should see NMEA sentences in the main window. (If not, you might already be in Sirf mode).

To obtain version and its current mode you need to switch from NMEA to Sirf mode. Select Command | Switch to Sirf. Wait for the ACK (acknowledgment) message. Now you can run Command | Poll version and Poll WAAS/EGNOS Status.

If you want to switch to DGPS select Command | Toggle WAAS/EGNOS. The DGPS source will switch from none to WAAS/EGNOS. Remember to switch back to NMEA protocol (Command | Switch to NMEA, OK), or your GPS software probably won’t be able to understand it.

Following the above procedure I decided to check the altitude issue using the free VisualGPS CE which will show if you are using Differential GPS or not.

You can also check the GPGGA sentence for value 2 in the sixth field (One means GPS fix in SPS mode or Standard Positioning Service).

$GPGGA,000641.048,3658.4711,N,12201.5429,W,
2,05,2.0,1.7,M,-26.6,M,3.7,0000*47

It does take quite a bit more to obtain a DGPS fix than a regular, SPS one but I was able to get some pretty decent results. It required several readings but the average value obtained is better than anything I got previously (check the Least Square Average numbers in the screenshot above).

Differential GPS: WAAS

I can’t loook at 3/4 letters acronyms and not start to wonder what is hidden behind them. Sometimes I can get satisfied with the full name, other times the curiosity continues taking you down their paths. This time I had to stop at some point to write this post.

Let’s start with the need first: before handheld GPS devices became available so we all could play geocaching, hike Yosemite or drive around LA, airplanes were trying to land in airstripes with very poor visibility and the FAA wanted to get them to do it safely. The problem was that GPS signals lacked the necessary precision for pilots to use them.

“Remember that GPS receivers use timing signals from at least four satellites to establish a position.” But thanks to changes in the atmosphere and ionosphere plus other sources of errors these times have delays added to them and will add inaccuracy to the positions calculated based on them.

The FAA engineers came up with the idea of having a fixed receiver station with a known position that would calculate time instead of distance: “It figures out what the travel time of the GPS signals should be, and compares it with what they actually are. The difference is an ‘error correction’ factor.” Then it broadcasts to the GPS satellites these correction values so they can adjust its measurements.

The plan was called “Wide Area Augmentation System” (or WAAS), a way to improve accuracy in the North American continent with Differential GPS. It translates today in 25 ground reference stations and two geostationary satellites with a fixed position over the Equator providing correction information and better accuracy to any compatible GPS receiver.

With the collaboration between continents with the European Space Agency (ESA) (and under a different acronym, SBAS for Satellite Based Augmentation System) EGNOS (European Geostationary Navigation Overlay Service) is another set of satellites and ground stations that can also be used (if you happen to be under their satellites coverage) which adds a total of 44 stations.

From PocketGPSWorld: “Both EGNOS and WAAS systems are designed against the same […] standards […] both WAAS and EGNOS receivers [can] be interoperable, and, therefore, a receiver able to process WAAS will also process EGNOS and vice versa.”

If you want more check this very well done tutorial from Trimble (Flash player recommended). Check also Dale DePriest who published an even better explanation of WAAS usage in Garmin receivers and Sam Worley’s website who really knows his stuff.