5 ms·
Whereami – Using WiFi signals and machine learning to predict where you are
- H4CK3RM4N 10y agoIs there any reason this couldn't be ported to Android or iOS, after hacking together an interface using something like Toga?
- vinay427 10y agoI would love to see this be implemented as a location service for Android, for example using UnifiedNlp on microG as middleware: https://github.com/microg/android_packages_apps_UnifiedNlp https://github.com/microg/android_packages_apps_UnifiedNlp
- Guillaume86 10y agoIt's already done: https://play.google.com/store/apps/details?id=com.hcp.find https://play.google.com/store/apps/details?id=com.hcp.find
- tyingq 10y agoYou would have to add Android and iOS ways to collect the WiFi AP info (SSID, signal strength, etc). This package uses this https://github.com/kootenpv/access_points https://github.com/kootenpv/access_points which can do it for OSX, Linux, and Windows. Kivy would probably be an easier path than Toga. It incorporates pyjnius which you would need to solve the wifi scan on android, and already has the UI part figured out.
- guidefreitas 10y agoI did something similar for Android a while ago https://guidefreitas.github.io/programming/osx/docker/2015/09/17/wifi-indoor-location-svm.html https://guidefreitas.github.io/programming/osx/docker/2015/0...
- kootenpv 10y agoYou were a year earlier, nice :)
- qrv3w 10y agoThis Python package is a nice port of a system I wrote [1] which I call FIND (the Framework for Internal Navigation and Discovery) [2]. I believe whereami mostly supports laptops, but with FIND you can do internal positioning on a lot devices - Android phones, Electric Imps, Raspberry Pis, Particles, and soon ESP8266s [3] and even iPhones if you are willing to go through some extra setup. [4] [1]: https://news.ycombinator.com/item?id=11517667 https://news.ycombinator.com/item?id=11517667 [2]: https://github.com/schollz/find https://github.com/schollz/find [3]: https://www.internalpositioning.com/client/ https://www.internalpositioning.com/client/ [4]: https://github.com/schollz/find-lf https://github.com/schollz/find-lf
- throwaway2334 10y agoIt's awesome seeing open source implementations of this. We were doing this in an R&D lab of a major tech company in 2009.
- blixt 10y agoI wonder if there's enough signal to detect if someone enters the room, which could be another cool trigger (e.g., turn on lights).
- matthewbauer 10y agoI think you'd have trouble getting accuracy <10 feet. GPS is usually about the same. Still, almost every device has WiFi so this is basically a free feature.
- awqrre 10y agoIf it kept the lights ON in a 10ft radius, it could still be pretty good.
- matthewbauer 10y agoYes but that could mean turning the lights on when you are in the room next door.
- Exuma 10y agoCan I do this with a single wifi router in my house or is it saying I need 7 "routers" or access points for this to work?
- blixt 10y agoI just tried it at home and it works great with a distance of just 10 feet or so between two locations. My laptop can see 26 unique wifi hotspots (other people in the building, cafe across the street, etc), which is the number the author was referring to.
- amiga-workbench 10y agoI have a really dumb version of this without any ML at work, it uses the API on our Ubiquiti Unifi's controller to get a list of devices connected to each of our 4 AP's. Its good enough to see if somebody is in a meeting room and unavailable or if they are probably free. If you have more than one device on the network that belongs to one person, it uses the device that has been connected to an AP for the least time (theoretically that's the last one that moved)
- matthewbauer 10y agoI wonder if it would be possible to create a coordinate system from this. This is, without any associations, map where each router is based on closeness to other routers and do a sort of "triangulation" to get coordinates.
- memmcgee 10y agoI tries doing this kind of thing at a hackathon once and we discovered that actual coordinate systems are hard to do. The "signal strength" data wireless cards produce are very dependent on the model of the devices involved. They're pretty unreliable for generating coordinates.
- matthewbauer 10y agoI feel like there has to be some sort of algorithm that lets you generate something like this though. You would definitely have to calibrate the RSSI based on your current card and time of day. Maybe not perfect but you could get a spatial sense of your routers.
- memmcgee 9y agoWell we were able to write an algorithm that kind of worked. But it relied more on just which MAC addresses are visible at a certain point.