|noerw 54b9f91628 read SDS011 & HDC1008 instead||2 years ago|
|LICENSE||2 years ago|
|README.md||2 years ago|
|TelnetPrint.h||2 years ago|
|api.h||2 years ago|
|box.jpg||2 years ago|
|config.h||2 years ago|
|esp8266-gps.ino||2 years ago|
|gps.h||2 years ago|
|storage.h||2 years ago|
|streampipe.h||2 years ago|
|ublox-neo7m-config_10hz-europe.txt||2 years ago|
|wifi.h||2 years ago|
This is a modular (but probably overcomplicated) sketch for a mobile sensebox, written as a part of my bachelors thesis. It measures arbitrary phenomena (currently only implemented: WiFi network count), which are geocoded and uploaded to the openSenseMap upon wifi connection.
Supports debug logging via telnet on it’s own access point + the connected network.
The GPS module must provide NMEA sentences & be connected via the hardware serial (Wemos Pins
SoftSerial did not work for me but created many issues (random crashes, due to buffer overflows?).
mobile-sensebox.inoin Arduino IDE
Wemos D1 (retired)(or whatever you have)
Once started, the device will idle until a first GPS fix was established. From then on the following procedure runs repeatedly:
Two hardware switches are implemented, which enable/disable the measurement- and/or upload-procedure:
By default, connecting pin
GND disables the upload,
GND disables the measurements.
This can be useful for quickly uploading accumulated stored measurements!
A telnet logger is enabled by default, and provides basic debug output.
You can connect to it both from the created accesspoint (which is there only for this purpose), as well as on the connected wifi network. So you either..
Connections are not polled all the time, so you may have to wait a moment until you receive first data.
Note that, due to the limited single-channel hardware of the ESP8266, a reconnection to the configured WiFi network fails, when a client is connected to the telnet logger on the open access point.
Developed using ESP8266 Arduino core v2.3.0 in Arduino IDE v1.6.8.
Depends on the following libraries, of which copies are stored in the
Time.hfor easy extraction of current timestamps
TinyGPS++.hfor NMEA parsing & distance calculation
ESP8266TrueRandomfor UUID generation