All Projects â†’ ajnas â†’ WiFiPS

ajnas / WiFiPS

Licence: other
WiFi Based Indoor Positioning System, A MVP android Application

Programming Languages

java
68154 projects - #9 most used programming language
PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to WiFiPS

WifiIndoorPositioning
🚀 Evaluation of Location of the device using RSSI values of Access Points and Reference point which are made from Wi-Fi readings
Stars: ✭ 83 (-20.95%)
Mutual labels:  wifi, indoor-positioning
H.E.L.P.
Home Environment Locating People 🍍
Stars: ✭ 19 (-81.9%)
Mutual labels:  indoor-positioning, indoor-localisation
Rainbow-Wifi-Hack-Utility-Android
The program implements brute Wi-Fi network method on platform Android
Stars: ✭ 39 (-62.86%)
Mutual labels:  wifi, android-studio
wifiexplorer-sensor
[DEPRECATED] Enables remote scanning in WiFi Explorer Pro
Stars: ✭ 37 (-64.76%)
Mutual labels:  wifi, scanning
Find3
High-precision indoor positioning framework, version 3.
Stars: ✭ 4,256 (+3953.33%)
Mutual labels:  wifi, indoor-positioning
Find3 Android Scanner
An android app that scans Bluetooth and WiFi for FIND3
Stars: ✭ 99 (-5.71%)
Mutual labels:  wifi, scanning
Esp8266 deauther
Affordable WiFi hacking platform for testing and learning
Stars: ✭ 9,312 (+8768.57%)
Mutual labels:  wifi, scanning
Node Wifi
đŸ“ļ NodeJS tool to manage wifi (connections, scans)
Stars: ✭ 250 (+138.1%)
Mutual labels:  wifi, scanning
wifi-penetration-testing-cheat-sheet
Work in progress...
Stars: ✭ 149 (+41.9%)
Mutual labels:  wifi
micrOS
micrOS - mini automation OS for DIY projects requires reliable direct communication
Stars: ✭ 55 (-47.62%)
Mutual labels:  wifi
wemosetup
A simple Python script to set up WeMo devices
Stars: ✭ 17 (-83.81%)
Mutual labels:  wifi
bridgeap
Automagically bridge any live interface to any idle interface using NATS, DHCP, and HostAP where applicable
Stars: ✭ 52 (-50.48%)
Mutual labels:  wifi
CDDN-Change-DNS-Dynamically-with-your-Network
This script allows you to have the best configuration of your DNS when switching from one Wi-Fi to another.
Stars: ✭ 22 (-79.05%)
Mutual labels:  wifi
Somfy Remote
Somfy remote control emulator connected to MQTT
Stars: ✭ 19 (-81.9%)
Mutual labels:  wifi
receipt-manager-app
Receipt parser application written in dart.
Stars: ✭ 140 (+33.33%)
Mutual labels:  android-studio
FastWaiMai
äģŋ写įžŽå›ĸ外卖į”ĩå•†éĄšį›Ž
Stars: ✭ 123 (+17.14%)
Mutual labels:  android-studio
bl602-pac
Embedded Rust's Peripheral Access Crate for BL602 microcontrollers
Stars: ✭ 16 (-84.76%)
Mutual labels:  wifi
rssd
Rohde & Schwarz SCPI Driver (in Python)
Stars: ✭ 25 (-76.19%)
Mutual labels:  wifi
rpi3-wifi-conf
A simple Python script to configure wifi over bluetooth for a Raspberry Pi 3
Stars: ✭ 112 (+6.67%)
Mutual labels:  wifi
ESP32 Thing Plus
ESP32 Thing-compatible board using the WROOM module and a QWIIC connector.
Stars: ✭ 18 (-82.86%)
Mutual labels:  wifi

WiFi Based Indoor Positioning System

A MVP android application which is able to estimate the position of a user within a building using WiFi technology. For better understanding this project, we recommend you to go through the docs folder of this repository.

Setting up

  • Install Android Studio
  • Clone or Download project from this url http://github.com/ajnas/wifips
  • From Android Studio, click on Open project and select the android-client folder inside the downloaded project.

Testing the App

  • Download Demo App to your android phone or run the imported code from Android Studio to your device.
  • Turn on WiFi
  • Go to some building were at least 3 wifi access points are available.

Learn/Calibrate

  • Choose the 'Learn' option from the first screen.
  • Enter a name for the new building and press Add
  • Select wifi access points that are permanent inside the building using the 'Friendly Wifis' button. Do not forget to save changes after adding all such access points.
  • Now you need to find different distinguishable positions inside the building. For better results, choose different rooms inside the building as different positions.
  • Name the position and press calibrate button.
  • The scanning starts after you press start button. Time for scanning is set as 30 seconds.
  • Once the scanning of one position is complete, go to another position and repeat the procedure
  • Swipe left/right on a position name to remove a position from the list.
  • You can re-calibrate a position by clicking on a position again.
  • Once you have added enough positions inside the building, press the update button to sync this readings to server, so that this data can be used from other devices as well.

Locate

  • Choose the 'Locate' option from the first screen.
  • Choose the building where you want to locate your position.
  • Press start button and complete the scanning process.
  • Your position obtained from the calculations are displayed in the screen.

Syncing data to server [OPTIONAL]

  • Create MYSQL database with tables to store readings and list of access points. Please refer this file for necessary schema details
  • Setup a php server with backend code included in this project and host it on your own server. It uses Slim framework.
  • Change the BASE_URL in android code to your server url in Config.java file
  • Run app to your Android device from Android Studio
  • Use the 'Sync' button in the first screen to load the buildings from the server. The readings taken from other devices are also displayed.

How to Contribute

  • Fork the repo
  • Commit changes to a branch in your fork
  • Pull request with your changes

Developers

Ajnas and Jazeem. Feel free to contact us in case of any issue while setting up/testing.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].