DIY remote environmental logger
This project demonstrates how fargin firmware works in a real-world application.
logger
It's technically an SDI-12 "recorder" but most users would just call it a "logger". It collects, stores and uploads data from one or more SDI-12 sensors.
environmental monitoring
SDI-12 is typically used for acquiring data about the environment
ground, water and air temperatures
water levels and velocity
water quality
wind velocity
air pressure
humidity
seismology
snow depth
etc, etc
remote
This logger can be deployed anywhere on the planet and will operate unattended for as long as it has power (solar charging is typically needed).
The logger sends and receives messages via satellite.
sensor data
maintenance data (e.g. battery health, gps location, file system stats, etc)
application code changes
on-the-fly - i.e. without resetting the mcu or restarting the application
DIY (DoItYourself) hardware
This is a firmware project - not a hardware project. This firmware is intended to be ported to your hardware which needs:
an mcu with plenty of flash and ram (for example, the Adafruit ItsyBitsy M4 with 512K flash and 192K ram or the Sparkfun Thing Plus - SAMD51 with 1M flash and 256K ram)
1 or more SDI-12 ports (each port can read multiple SDI-12 sensors)
fixed non-volatile storage for application code, logging data and satellite messages
consider removable sd card for logging data
usb port for initial setup prior to deployment
an Adafruit RockBLOCK 9603 Iridium satellite modem
power source (most likely a solar panel)
Notes:
this firmware implements SDI-12 version 1.4 dated Feb 20, 2023
compare this logger to the Arduino-compatible EnviroDIY Mayfly Data Logger
contact: SDI-12@FarginFirmware.com