Wireless particulate matter monitoring over LoRa networks
This is a version of the SensorGrid project that is specific to monitoring particulate matter data (PM 2.5 and PM 10) and collecting that data over a LoRa wireless network.
This code is structured for development in PlatformIO with its entry point set to enable Arduino IDE compilation as well. See below for information about compiling with the Arduino IDE.
See the lib_deps
section of the platformio.ini
file
Development is mostly done on PlatformIO (https://platformio.org/) but we do occasional checks to ensure deployment on Arduino IDE. It should just work.
Please lint with cpplint before submitting code changes:
See this project's CPPLINT.cfg
file for details about flags used for linting.
cpplint <SubProject>/*
We are making an effort to move toward the Google C++ style guide: https://google.github.io/styleguide/cppguide.html
with some notable exceptions:
The requirement for specifying subdirs adds unnecessary complexity to project
maintenance. We use a relatively flat code structure within a given project,
thus includes will either be in the form "file.h"
where file.h is in the
same directory or <Library.h>
where Library is accessible on the compile path.
As a result, please lint with --filter=-build/include_subdir
- Variables should be
snake_case
- Functions and methods should be
camelCase
(Not PascalCase)