Is there a technology that can pinpoint an iPhone's *exact* location (to the feet/couple feet, indoors)? - iphone

Is there is a way to determine an iPhone's exact location (indoors, and to a distance of just a couple of feet) via use of radio/antenna's or some other infrastructure located around premises (i.e a hospital, shopping mall, school). Will appreciate any ideas/direction (technologies, research) as for how to overcome this limitation.

If you mean for an area you have control over (setting up a location network for a specific school/hospital) as opposed to generic location, you'd be able to triangulate your position based on wifi signal power for APs with known locations.
If you wanted it to be a generic solution, and you know there would be multiple APs in/around the buildings you wanted, you could triangulate all wifi signals while you have GPS outside the building, and then reference those locations when you lose gps accuracy. The first part is something that many wardriving applications already do.
Here's an article describing a commercial technology for this purpose in high-level detail: link
And here's a link to a SO page where people have started discussing possible methodologies: link

Use the GPS and hope that you got good coverage.
Other than this, you can deploy several wifi hotspots that can measure the signal strength for each packet and do a triangulation to calculate the iPhone position with regards to three or more of these hotspots based on the signal strength each of them measured.
A quick search for "signal triangulation" on the internet reveals a Wi-Fi Based Real-Time Location Tracking technology from Cisco. I have not used it, so I can't vouch for it; and I suspect it's rather expensive. There might be other solutions as well.
The alternative would be to buy several wifi routers or access points and flash them with your own version of the firmware. You can probably use OpenWRT or DD-WRT as a base for this.

Related

Indoor navigation hardware/software requirements for iOS

I'm developing navigation system for my university as some kind of research activity. I'm using SVGKit to display floor plans. And now I need to provide user locationing service for navigation and tracking. So here's my questions:
1) Do I need some special hardware installed in university (Cisco MSE for example, or some cheaper analogues), or I can apply some software/technologies to our current hardware for server-side user location determining? If I do, what equipment do I need for it? I mean, it would be one unit for the whole university, or one per each floor, or what?
2)
Q: Why doesn't the Redpin iPhone client conform to the iPhone SDK
Agreement? A: Apple does not provide a public API to retrieve WiFi
data. In order to get the iPhone client working we had to use a
private API, which is disallowed by the iPhone SDK Agreement.
(c) http://redpin.org/faq.html Does it mean that RedPin is unacceptable in AppStore, so I can't use it?
3)Does Navizon I.T.S. requires some specific hardware equipment except standart routers?
Thank you all, maybe you can offer me better solutions, I hope. Thanks in advance.
Indoor positioning is a very vast field and many different solutions are available which all use a different combination of hardware/software. Some need no specific hardware to work, others need a very expensive infrastructure to be put in place. In the end, it all depends on the accuracy you are trying to achieve. Here are the most common solutions used, I ordered them by the type of technology used:
Wifi: two main techniques are used here, trilateration and fingerprinting. Both do not require specific hardware if your uni already has deployed access points (APs). Trilateration converts signal strength to distance and then intersect circles (almost exactly like GPS). In general this has poorish accuracy and you need to know the exact position of APs for it to work. Fingerprinting is a pattern matching technique where you first build a wireless map of the environment and then match the measurement against this map.
Bluetooth: same techniques as above can be used with Bluetooth nodes. Of course, there's less Bluetooth nodes than Wifi so you might need to deploy some extra nodes for it to be accurate enough. Same accuracy as Wifi (roughly 5 meters)
Dead reckoning: uses an accelerometer, gyroscope and compass to calculate the speed of heading of the user. Needs to be initialized and calibrated regularly by another absolute positioning technique. Subject to drift so accuracy degrades quickly over time. Upside is its very cheap, no extra hardware or initial survey phase are needed.
UWB: very accurate techniques based on time of flight measurements. Requires expensive hardware for both transmitter and receiver. You can achieve cm accuracy with this but it's probably not what you're after
This is still an field of research so it's not that easy to find something that just works. I suggest contacting the IT department of your university, if they run a Cisco system, I know some of them provide some sort of positioning capabilities but I don't have much details.
As for your iPhone question, any app that accesses the private API to access Wifi measurements will be rejected by the App store, so you won't be able to publish anything that relies on Wifi. You can still use it for research purpose though, you'll just have to figure out the code yourself as there's no official documentation (some unofficial doc is out there though)
Good luck!

How accurate can indoor WiFi positioning be when it comes to tracking movement?

Imagine I'm standing in a large room that has a router in the corner. Now I'm holding my iPhone and I start moving around in the room.
Is there a way I can track my movement inside that room using as static reference that router?
Imagine I take one or two steps to the left. Will such a small change in location be captured accurately under such conditions?
Do I need more than one hotspots in order to find my precise location inside the room?
Can the tracking be precise since we're talking about movement inside a room and not out on the streets?
If you're interested in tracking physical movement of the phone using a single wireless router as a point of reference, no, it's not going to work. It's defiantly not going to give you a foot or two of resolution, either.
You'd be using the wireless signal strength as a position indicator. However, you'd need two signals (two static points) minimum to give any sort of triangulation. Furthermore, signal-strength triangulation is really, really imprecise - the Wikipedia article gives a network-based tracking a resolution of around 50m. Handset based tracking uses both GPS and signal strength to give a better resolution, but it's still not within a foot or two.
To get good position tracking, a signal is timed between the source and receiver, then triangulated. This gives quite good resolution - Wikipedia articles on "Trilateration", "Time-Of-Flight", and "Multilateration" would give a decent overview of that kind of system.
Long story short? No, you can't get a physical position using a single static router as a point of reference with any degree of accuracy, or precision.
I think you're misunderstanding how Wi-Fi based location tracking works. I'm not sure about the exact process but if I'm right, it involves your IP address assigned by the hotspot you're connected to. And the accuracy of Wi-Fi based location is not as accurate as the degree (a couple of feet to the left or right) you're referring to.
No matter where you are in that room, or even in the same building connected to that same hotspot, your location is going to be reported as the same place.
So to answer your question, NO, the tracking cannot be precise. If you're using you're using the GPS component of your device, that's a totally different story.

Can a Smartphone read RFID tags from a distance of few feet (NOT NFC)?

Being a bit more specific: I would like to know whether there's a Smartphone that can detect an RFID tag from few feet away using its original HW (no external devices) and OS capabilities.
Any comment/direction to reading material will be highly appreciated.
I think the answer depends on your use of the word "RFID Tag". In the classic sense, a read-only transponder, equivalent to a bar code, the answer is not yet. There are proposals for 2.4 GHz RFID that could use existing WIFI chipsets to identify nearby objects. Nothing standard or accepted is available.
However, based on the application you describe. One potential answer may be to flip how you are thinking of setting this up. If you just need to know if a certian, unique, person is near a spot in the mall, maybe instead of their phone looking for an RFID tag you need a low cost bluetooth sniffer (connected to a low cost computing board) looking for their phone, via bluetooth MAC addresses, within say 5m. As long as the customer has bluetooth enabled, has signed up for your service and your read points are connected to the internet this approach should cover your use case.
Basically the possibility is very low.
Near field refers the the property of RF fields with very close proximity between the devices. In the case of NFC as it applies here the devices are even closer, in what is termed the "Reactive near-field". Moving further away these properties are lost.
From Wikipedia: "Theoretical working distance with compact standard antennas: up to 20 cm (practical working distance of about 4 centimeters)"
I just found this solution:
http://www.ugrokit.com/
I don't have any experience with it.
Any android device with NFC chip and antenna embedded is capable enough to read RFID tags.

How to implement indoor navigation on the iPhone

I would like to locate the iPhone in a building to build an application with similar features as the iPhone app of the American Museum of Natural History. There is no good GPS reception as there are also rooms in the cellar I would like to cover.
What can save me is that there is good wifi coverage in the whole area, so my idea was to triangulate the position based on the wifi base stations in range, whose positions are known. However I found no public API to find out which base stations are in range.
Questions
Do you have an idea how the app mentioned above manages to get the correct location indoors?
Could one add the wifi base stations manually to Apple's database and use the usual CoreLocation?
Do you have other ideas how to implement it?
Any help is very much appreciated!
Boundary conditions
The indoor navigation is only used during an event to guide guests new to the building, so no complex infrastructure should be installed.
There are approximately 14-18 rooms to be covered. They are in different parts of the building, so wiring everything up would be very costly.
The preferred solution would not require a server backend of any kind and would work with a list of wifi access points and their corresponding locations.
I wouldn't know about 1 and 2. But if you would implement such a thing, turn it around to save a lot of trouble: create your own free-of-charge wifi network, and let the network determine the location, either based on triangulation, or just based on the currently associated access point. Make their signal weak so you have one audible access point per room. Let the app ask a server in what room he appears to be. This will also work for any other mobile/pda/laptop.
As for other ideas: You could use bluetooth to do somewhat the same as you're planning for wifi. You can't do everything with bluetooth, but listing devices seems to be one possibility. So just put a bluetooth device in every room. Bluetooth range is limited by definition.
Another one would be to use the microphone in conjunction with a high pitched sound which identifies the room, but that would cause trouble with dogs (for blind people), attract bats, and repel mice at the same time. Better focus on an RF based solution ;-)
You can also check out Navizon's indoor positioning system:
http://www.navizon.com/product-navizon-indoor-triangulation-system
Their system is able to locate iPhones by using the WiFi signals transmitted by the device and doesn't require an app to run on the phone to locate it. It can locate any other WiFi enabled device for that matter.
Check out wirelesswerx.com They seem to be doing indoor location using Bluetooth and it looks like they can do permanent install or temporary for events.

iPhone Development - Assisted GPS

What's the deal with iPhone's GPS? I never get a good reading when i'm in my office building, or in my room. What really ticks it! and what doesn't? Please help me understand the assisted GPS science.
If I'm not mistaken, the gps tries to pinpoint your position using three methods:
1. Satellite
2. Mobile network
3. Wi-fi networks
So if you don't have a good reading, then probably one or more of these methods cannot be used properly in your area. For instance, satellite will not always work that well in buildings with thick walls and ceilings.
Assisted GPS means that it may have it's location from different sources than GPS satellites, for instance known wifi hotspots, or GSM masts. However these sources are less accurate the true GPS.
Claus
For the actual GPS in your iphone to get a good position, it has to be in direct sight of the GPS satellites. It cannot do that inside a building. So if you are inside you are not going to get the best position from the iphone. It can give you a position using other methods such as the cell phone network and public wi-fi networks, but these positions aren't as accurate as the real GPS position.
Here is an article that explains the GPS system:
http://en.wikipedia.org/wiki/Gps
Depends on whose definition of Assisted GPS.
True 'assisted GPS' means the GPS receiver uses a known initial position, from the cell tower location, to bootstrap the GPS position calculations. If you know where you are it's much quicker for the position solution to lock to the signal - that's why GPS take so long to find first fix compared to updating.
Some APIs use assisted GPS as shorthand for alternate location services where if GPS is not available, is disabled, or would use too much battery power it will supply a lower grade position based on cell tower triangulation or other methods.
There are many answers I found in WWDC 2010 – Session 115 - Using Core Location in iOS 4.
Very advised.