Hackaday Prize Best Product: WiFi Location Services

GPS-based location services will be around with us forever. If you’re in the outback, in the middle of the ocean, or even just in a neighborhood that doesn’t have good cell coverage, there’s no better way to figure out where you are than GPS. Using satellites orbiting thousands of miles above the Earth as a location service is an idea that breaks down at some very inopportune times. If you’re in a parking garage, you’re not using GPS to find your car. If you’re in a shopping mall, the best way to find your way to a store is still a map. Anyone every tried to use GPS and Google Maps in the hotel/casino labyrinth that is the Las Vegas strip?

[Blecky]’s entry for the Best Product competition of the Hackaday Prize aims to solve this problem. It’s an indoor location service using only cheap WiFi modules called SubPos. With just a few ESP8266 modules, [Blecky] can set up a WiFi positioning system, accurate to half a meter, that can be used wherever GPS isn’t.

The idea for a GPS-less positioning system came to [Blecky] after a caving expedition and finding navigation though subterranean structures was difficult without the aid of cell coverage and GPS. This got [Blecky] thinking what would be required to build a positioning service in a subterranian environment.

A SubPos node, equipped with an ESP8266 WiFi module

The answer to this question came in the form of a cheap WiFi module. Each of the SubPos nodes are encoded with the GPS coordinates of where they’re placed. By transmitting this location through the WiFi Beacon Frame, along with the transmitted power, any cell phone can use three or more nodes to determine its true location, down to a few centimeters. All of this is done without connecting to a specific WiFi network; it’s a complete hack of the WiFi standard to allow positioning data.

The most shallow comparison to an existing geolocation system would be a WiFi positioning system (WPS), but there are several key differences. In WPS, the WiFi APs don’t transmit their own location; the AP is simply cross-referenced with GPS coordinates in a database. Secondly, APs do not transmit their own transmit power – important if you’re using RSSI to determine how far you are from an Access Point.

The best comparison to an indoor location service comes from a new Decawave module that sets up ‘base stations’ and figures out a sensor’s location based on time of flight. This, however, requires additional radios for each device receiving location data. SubPos only requires WiFi, and you don’t even need to connect to an AP to get this location data; everything is broadcast as a beacon frame, and every device with WiFi detects a SubPos node automatically.

As an entry to the Hackaday Prize Best Product competition, there is an inevitable consideration as to how this product will be marketed. The applications for businesses are obvious; shopping malls could easily build a smartphone app showing a user exactly where in the mall they are, and provide directions to The Gap or one of the dozens of GameStops in the building. Because the SubPos nodes also work in 3D space, parking garage owners could set up a dozen or so SubPos nodes to direct you to your exact parking spot. Disney, I’m sure, would pay through the nose to get this technology in their parks.

Already [Blecky] is in talks with one company that would like to license his technology, but he’s not focused only on the high-dollar business accounts. He already has a product that needs manufacturing, and if he wins the Best Product competition, he will be working on something for the hacker/homebrew market. The price point [Blecky] sees is around $15 a node. The economics of this work with the ESP WiFi module, but [Blecky] is also looking at alternative chip sets that would allow for more than just RSSI position finding; an improved version of the SubPos node not based on the ESP-8266 could bring time of flight into the mix, providing better position accuracy while still being cheaper to manufacture than the current ESP-based solution.

[Blecky] has a great project on his hands here, and something we will, undoubtedly, see more of in the future. The idea of using WiFi beacon frames to transmit location data, and received signal strength to suss out a position is groundbreaking and applicable to everything from spelunking to finding your car in a parking garage. Since the SubPos system isn’t tied to any specific hardware, this could even be implemented in commercial routers, giving any device with WiFi true location data, inside or out. It’s also one of the top ten finalists for the Hackaday Prize Best Product competition, and like the others, it’s the cream of the crop.

The 2015 Hackaday Prize is sponsored by:

Continue reading “Hackaday Prize Best Product: WiFi Location Services”

Punky GPS Gets The Steam Built Up For Geocaching

While getting geared up for geocaching [Folkert van Heusden] decided he didn’t want to get one of those run of the mill GPS modules, and being inspired by steam punk set out and made his own.

Starting with an antique wooden box, and adding an Arduino, GPS module, and LiPo battery to make the brains. The user interface consists of good ‘ole toggle switches and a pair of quad seven segment displays to enter, and check longitude and latitude.

To top off the retro vibe of the machine two analog current meters were repurposed to indicate not only direction, but also distance, which we think is pretty spiffy. Everything was placed in a laser cut wooden control panel, which lend to the old-time feel of the entire project.

Quite a bit of wire and a few sticks of hot glue later and [Folkert] is off and ready for an adventure!

Upgraded GPS Now Accepts Voice Commands

[FreddySam] had an old Omnitech GPS which he decided was worthy of being taken apart to see what made it tick. While he was poking around the circuit board he found a couple solder pads labeled as ‘MIC1’. This GPS didn’t have a microphone. So, why would this unit have a mic input unless there is a possibility for accepting voice commands? [FreddySam] was about to find out.

The first step to get the system working was to add a physical microphone. For this project one was scavenged from an old headset. The mini microphone was removed from its housing and soldered to the GPS circuit board via a pair of wires. Just having the mic hanging out of the case would have been unsightly so it was tucked away in an otherwise unfilled portion of the case. A hole drilled in the case lets external sounds be easily picked up by the internalized microphone.

The hardware modification was the easy part. Getting the GPS software to recognize the newly added mic was a bit of a challenge. It turns out that there is only one map version that supports voice recognition, an old version; Navigon 2008 Q3. We suppose the next hack is making this work with new map packs. This project shows how a little motivation and time can quickly and significantly upgrade an otherwise normal piece of hardware. Kudos to [FreddySam] for a job well done.

Finding an Active TX Pin on Cheap GPS

Twenty Euros will score you a small, self-contained GPS keychain. Crack that case open and you can have a lot more. [j3tstream] explored the guts of the thing and found that the NMEA data can be streamed out of the TX pin on the GPS chip.

First off, check out that miniscule GPS antenna module, crazy! But we digress. For testing purposes the asynchronous UART of the GPS was probed, proving that the data can be acquired. From there [j3tstream] moved to an Arduino Pro Mini with an SD card for data logging. The uC is powered from the GPS board but this will quickly exhaust the stock battery so [j3tstream] swapped it out for one from an old cellphone.

That little dot-matix LCD that comes with the unit also caught our eye. If you can hack a headless interface for the GPS that could be repurposed for your next project. May we suggest a wearable gaming project for it?

A Simple Runner’s GPS Logger

[Daniel] received a grant from the University of Minnesota’s ECE Envision Fund and was thus responsible for creating something. He built a runner’s GPS logger, complete with a screen that will show a runner the current distance travelled, the time taken to travel that distance, and nothing else. No start/stop, no pause, nothing. Think of it as a stripped-down GPS logger, a perfect example of a minimum viable product, and a great introduction to getting maps onto a screen with an ARM micro.

The build consists of an LPC1178 ARM Cortex M3 microcontroller, a display, GPS unit, and a battery with not much else stuffed into the CNC milled case. The maps come from OpenStreetMap and are stored on a microSD card. Most of the files are available on GitHub, and the files for the case design will be uploaded shortly.

The CNC machine [Daniel] used to create the enclosure is a work of art unto itself. We featured it last year, and it’s good enough to do PCBs with 10 mil traces. Excellent work, although with that ability, we’re wondering why the PCB for the Runner’s GPS is OSH Park purple.

Dog Tracker Knows Where the Dirt is

[Eric] is well on his way to making one of the less pleasant chores of pet ownership a bit easier with his dog tracking system. The dog tracker is actually a small part of [Eric’s] much larger OpenHAB system, which we featured back in July.

As a dog owner, [Eric] hates searching the yard for his pet’s droppings. He had been planning a system to make this easier, and a local hackerspace event provided just the opportunity to flesh his ideas out. The Dog Tracker’s primary sensor is a GPS. Most dogs remain motionless for a few seconds while they go about their business. [Eric’s] Arduino-frgbased system uses this fact, coupled with a tilt sensor to determine if the family pet has left any presents.

The tracker relays this information to the home base station using a HopeRF RFM69 transceiver. The RFM69 only has about a 900 foot range, so folks with larger properties will probably want to spring for a cellular network based tracking system. Once the droppings have been tracked, OpenHAB has an interface

[Eric] has also covered runaway dogs in his design. If Fido passes a geo-fence, OpenHAB will raise the alarm. A handheld dog tracker with its own RFM69 can be used to chase down dogs on the run. Future plans are to miniaturize the dog tracker such that it will be more comfortable for a dog to wear.

Continue reading “Dog Tracker Knows Where the Dirt is”

THP Entry: Atomic Space Time

LCD featuring HaD logo

Accurate time is all around us. Streaming down from satellites thousands of miles in space, UTC time information is at all of our fingertips. You just have to know how to reach out and grab it. [hkdcsf] not only knows how to do this, he does it in style.

Tipping his hat into The Hackaday Prize contest, [hkdcsf]’s atomic clock is masterfully crafted. Not only does it get time information from GPS satellites, it also has the ability to grab the infomation from the DCF77 transmitter. And if ever it’s in a position where neither signal can be found, an RTC crystal keeps the time and date accurate.

His design is based on a PIC18F25K20, and bristles with so many features that it might make you dizzy. So be warned – you might want to be in a seated position before taking a look at this project. [hkdcsf] does a great job at detailing exactly how his clock works, and his efforts to provide this level of detail will surely help other hackers to add similar features to their future projects.

SpaceWrencherThe project featured in this post is an entry in The Hackaday Prize. Build something awesome and win a trip to space or hundreds of other prizes.

Continue reading “THP Entry: Atomic Space Time”