Skip to content
This repository has been archived by the owner on Oct 17, 2023. It is now read-only.

ParsIOT/ParsinServer

Repository files navigation

Introduction

ParsinServer is a Fingerprint-based Indoor Positioning System based on Find. In Parsiot, we are working on Indoor Positioning Solutions and ParsinServer is one of the main products that we were working on. After developing the code for two years, in the end, we decided to make the code free and opensource. Our reasons are as follow:

  • Find is opensource : Although we changed and refactor the code base, we used Find when we started. Therefore, we sense that as our duty to make the code opensource.
  • Help other research : As we spend a lot of our time to test and research on Fingerprint-based IPS solutions, We know how it can be useful or precious for any researcher to start their study and research on the pre-build code base.
  • Opportunity for new contributions : Current IPS solutions that work with Wi-Fi and BLE are usually based on heuristic ideas. So we need others to contribute.

Attention!

We don't provide documentation for ParsinServer and the code accessories(e.g. the Android and ios app). If you need more help email me (Mohammad Hadi Azaddel, m.h.azaddel -- at -- gmail.com).

Capabilities

ParsinServer contains complete capabilities as follow:

  1. Main Dashboard

    Dashboard
Dashboard consists of :
  • Algorithm configs
  • Algorithm hyperparameter tuning
  • Display Algorithm details
  • Upload different map image
  • Total algorithm evaluation
  1. Collecting and Showing Fingerprints

    Fingerprint Map
  2. Live user positioning:
    • User Management
    • Collaboration with PDR solutions(on the android app)
    • Live UWB localization
    Live map
  3. Arbitrary fingerprint location:

    Arbitrary Location
  4. Access Points management:

    access points locations
  5. Fingerprint ambiguity: helps to find similar fingerprints

    fingerprint ambiguity map
  6. Graph & Map: This tool provides:
    • Set map constraints and borders(It can be used in Particle Filter models)
    • Set valid connections between nodes
    Map borders Connection links
  7. RSS heatmap

    RSS heatmap
  8. Error heatmap:

    Error heatmap
  9. Offline tracking: Use to evaluate offline collected test data. E.g. in the below figure, you can see user track as a timeline.

    Test track map
  1. Error calculation: This is a complete panel to get different algorithm localization accuracy and localization details like the association between real fingerprint and the estimated positions.

    Algorithm error calculation
  2. Error comparison and CDF graph:

    CDF1 CDF2
  3. Particle Filter algorithm

  4. UWB compatible data collection: You can collect fingerprints with the accurate localization systems like UWB. ## Android and ios app

Side Projects

  1. Tag tracking : You can use BLE and Wi-Fi tags and some signal receivers to track tags.
  2. Android app and react-native app (ios)
  3. Proximity advertisement framework, Parsin Admin Panel. It works alongside Parsinserver. Besides we provided a proximity advertisement.