Giter Site home page Giter Site logo

cedancp / android-hpma115s0 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kike-canaries/canairio_android

0.0 1.0 0.0 2.27 MB

Android client for ESP32 hpma115s0 sensor project and map publisher

License: GNU General Public License v3.0

CMake 1.03% Java 98.81% C++ 0.15%

android-hpma115s0's Introduction

CanAir.io Air quality Reporter

CanAirIO is a citizen science initiative for air quality tracking, visualization and dissemination by using PM2.5 particulate material sensors paired with your smartphone via bluetooth.

This code is for CanAir.io Android client and reporter for esp32-hpma115s0 pollution sensor.

Full guide (Hackster.io): English | Spanish


TODO

  • BLE scanning and connecting
  • BLE auto connect and reconnect
  • Receive data via BLE notification
  • Basic chart for PM 2.5 data
  • BLE persist connection on background service
  • Recoding data in the phone
  • List recorded tracks fragment
  • Open Street map fragment
  • Connect list records to record track
  • Connect Open Street Maps to pollution data
  • Firebase connection for publish reports
  • Osmdroid clusters (for static points)
  • Osmdroid routes (for line or dinamic points)
  • Export data to json or others

Dependencies

  • Android SDK and NDK
  • Tested with gradle 4.4, SDK tools 26 and NDK 15
  • CMake

Requirements

This application uses a Firebase Database instance to store air quality reports.

For local development, you will need to create a database in the Firebase Console using hpsaturn.pollutionreporter as the application identifier and retrieve a google-services.json file. See instructions here.

Compiling

  • Create a local keystore:

keytool -genkey -v -keystore my-release-key.keystore -alias alias_name -keyalg RSA -keysize 2048 -validity 10000

  • Add a reference to the keystore to your environment variables by adding the following to ~/.bash_profile or ~/.bashrc depending on your local setup.
export airStoreFile=<your_test.keystore>
export airStorePassword=<your_test_keystore_password>
export airKeyAlias=<your_test_keystore_alias>
export airKeyPassword=<your_key_password>
git clone https://github.com/kike-canaries/android-hpma115s0.git
cd android-hpma115s0.git && ./gradlew assembleDebug

Credits

Icons made by Prosymbols from www.flaticon.com is licensed by CC 3.0 BY

android-hpma115s0's People

Contributors

hpsaturn avatar gaguevaras avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.