Releases: EnviroDIY/ModularSensors
Releases · EnviroDIY/ModularSensors
v0.36.0
Changed
- Applied markdown lint to markdown files
- Bumped TinyGSM dependency
- Changed datatypes for modem voltage outputs.
- Switched from Soligen fork of ADS1115 library to the standard Adafruit version. #456
- Rearranged documation of examples
- Consistently apply all pre-processor
defined
checks with function-like syntax - Consistently check for both
__AVR__
andARDUINO_ARCH_AVR
in all cases.- Not all AVR boards defin
__AVR__
within the PlatformIO system, which was confusing the SCons preprocessor.
- Not all AVR boards defin
- Modified implementation of initial short logging intervals.
- Allow non-sleep before returing from testing or logging functions.
- Modified returns of modem variables from uint's to int's for consistency with the latest version of TinyGSM.
- Add pre-processor macro for number of times to attempt to update the clock.
Added
- Added support for Yosemitech Y513 Blue Green Algae Sensor thanks to @aufdenkampe #476
- Added support for Alphasense CO2 Sensor thanks to @aufdenkampe #457
- Added support for Turner Turbidity Plus thanks to @mbarneytu #361
- Added complete paramter documentation where it was missing thanks to @SRGDamia1
v0.35.1
v0.35.1 2024-08-26
This is a hot-fix type release, pushing out fixes for sleeping for the SAMD21. It is not fully tested. If you are not using a SAMD21, please stick to version 0.35.0 until 0.36 is released.
Changed
- BREAKING Switched default clock for SAMD21 from the built-in 32bit RTC to the DS3231.
This is not be a permanent change. - Switched to reusable workflows for CI
Fixed
Fixed clock configuration for SAMD21
v0.35.0
Changed
- BREAKING Refactored how the publisher transmit buffer works. This will require adjustment to custom data publishers.
- Update GitHub actions
- Remove date from copyright for easier tracking
- Turn modem off at end of setup, regardless of time
- Clean function to set file timestamp on SD card
- Use equation rather than table for CSQ
- Only polling modem for enabled parameters
- INCREASED THE MAXIMUM NUMBER OF VARIABLES FROM A SINGLE SENSOR and implemented an option to set this by build flag.
- This will increase memory use for the entire library.
If you are not using the GroPoint sensors which require many variables, I recommend you change this value via the build flag-D MAX_NUMBER_VARS=8
- This will increase memory use for the entire library.
- Allow all WiFi modems to first attempt to connect using existing on-modem saved credentials rather than immediately sending new credentials.
- Add further debug printouts to the processor stats
Added
- Support GroPoint Profile GPLP-8 Eight-Segment Soil Moisture and Temperature Profiling Probe
- Support Vega Puls 21 Radar
- Functions to enable and disable modem metadata polling by bitmask
Removed
- Removed the (unused) sendOffset parameter from dataPublisherBase.
Fixed
- Minor bug fixes for XBee Wifi
- Handle no SIM card response from SIM7080G (EnviroDIY LTE Bee)
- Fixed Keller debugging output.
- Fixed file reference for SDFat 2.2.3
Known Issues
- The modem hardware, firmware, and serial number is only implemented for the Digi XBee WiFi.
v0.34.0
Changed
- BREAKING - Removed support for light sleep on Espressif modules.
This changes the order of the constructor for the ESP32 and ESP8266!- The light sleep mode is non-functional anyway, and confusion over the sleep request pin was putting the board in a position not to sleep at all.
- Minor tweek to clang-format
- Moved all variable initialization to default header values and initializer lists
- Converted all "c-style" casts to static casts
- Switched cases of strcat and strcpy to snprintf
- Specify python version 3.x for actions (used by PlatformIO)
Added
- Support Campbell RainVUE10 SDI-12 Precipitation Sensor #416
- Support YosemiTech Y700 Pressor Sensor (#421)
Removed
Fixed
- Fixed bug in YosemiTech Y4000 Sonde (#420)
- Fixed non-concurrent data fetch for SDI-12 when NOT using debugging.
- Fixed internet connection when in "testing mode"
- Allow a non-zero wait time for SDI-12 sensors
- Fixed outdated GitHub actions
v0.33.4
v0.33.3
Fixed
- Increased measurement time for Hydros21 to work with the latest version of the sensor.
v0.33.2
Fixed
- Fixed script to install and zip libraries for a release
v0.33.1
Changed
Added
- Added a typedef and header for the ESP32
- This is just another name to the ESP8266 class to help any who don't know they're identical for our purposes.
- Example: Created a new DRWI wifi example for workshop.
Removed
Fixed
v0.33.0
Changed
- Breaking: Renamed the static
markedEpochTime
variable tomarkedLocalEpochTime
.- This was sometimes used in "complex" loops. Code utilizing it will have to be changed.
- This is part of the effort to clarify where localized and UTC time are being used.
We recommend a logger's real time clock always be set in UTC and then localized for printing and storing data.
- Breaking: Renamed the function
setNowEpoch(uint32_t)
tosetNowUTCEpoch(uint32_t)
.- Although public, this was never intended to be used externally.
- Breaking: Renamed the YosemiTech Y550 COD sensor as Y551. See below.
- Potentially Breaking: Changed the default "button" interrupt pin mode from
INPUT_PULLUP
toINPUT
and created optional arguments to thesetTestingModePin
andsetLoggerPins
functions to specify the pin mode and pull-up resistor state.INPUT
is the proper mode for the Mayfly.
The Mayfly has an external pull down on the button pin with the button being active high.
This means having the pull-up resistors on negates the button signal.
The pin mode had been set asINPUT_PULLUP
for the button, backwards for the Mayfly, since July of 2017.
By some electrical luck, with the 0.x versions of the Mayfly, the external pull-down on the button pin was strong enough to out-weigh the incorretly activated pull-up resistors and an interrupt was still registered when the button was pressed.
With a different pull-down resistor on the Mayfly 1.x, the button no longer registers with the pull-up resistors active.
So, for most of our users with Mayflies, this will be a fix.
But for anyone using a different board/processor/button configuration that depended on the processor pull-up resistors, this will be a breaking change and they will need to specify the button mode in thesetTestingModePin
orsetLoggerPins
function to return to the previous behavior.
- Added a longer warm up time and removed some of the modem set-up to work with the ESP-IDF AT firmware versions >2.0
- Made sure that all example clock synchronization happens at noon instead of midnight.
- Renamed Classes: Renamed several classes for internal consistency.
These are not breaking changes at this time; the old class names are still usable.- Rename class
MPL115A2
toFreescaleMPL115A2
- Rename class
MPL115A2_Pressure
toFreescaleMPL115A2_Pressure
- Rename class
MPL115A2_Temp
toFreescaleMPL115A2_Temp
- Rename class
TIINA219_Volt
toTIINA219_Voltage
- Rename class
PaleoTerraRedox_Volt
toPaleoTerraRedox_Voltage
- Rename class
ExternalVoltage
toTIADS1x15
- Rename class
ExternalVoltage_Volt
toTIADS1x15_Voltage
- Rename class
- Documentation: Migrated to latest version of Doxygen (1.9.3).
Added
- Sensor Added support for the YosemiTech Y551 COD Sensor, which makes a UV254 light absorption and translates it to estimates of Chemical Oxygen Demand (COD) (or Total Organic Carbon (TOC)) and Turbidity.
- NOTE that this upgrade removes the earlier Y550 from the library, as it was never tested and is no longer available form YosemiTech. If anyone has a Y550 sensor, the Y551 commands should work. Let us know if they don't.
- Sensor Added support for the YosemiTech Y560 Ammonium Probe, which is a mini sonde for three Ion Selective Electrode (ISE) sensors (pH, NH4+, K+) that together are used to provide a corrected estimate of total ammonium nitrogen (NH4_N) in mg/L.
- NOTE that this release only includes outputs for NH4_N, pH, and temperature. A future release will also include estimates of potassium (K) and raw potential values from each of the electrodes.
- Sensor Added support for the SDI-12 In-Situ Level TROLL 400, 500 & 700 Data Loggers
- Sensor Added support for the Sensirion SHT40 relative humidity and temperature sensor
- Sensor Added support for the Everlight ALS-PT19 ambient light sensor
- Sensor Added support for the Bosch SensorTec BMP388 and BMP390 pressure sensors
Removed
Fixed
- Fixed memory leak for AOSong AM2315 thanks to @neilh10
v0.32.2
Changed
- Restructured SDI-12 slightly to break out the start measurement functionality into a new function.
- Modified Decagon 5-TM and Meter Teros 11 to use the SDI-12 get results function rather than addSingleMeasurmentResult.
This will allow both sensors to honor the 'non-concurrent' flag, if that is set.
Previously, they would not have. - Documentation: Migrated to latest version of Doxygen (1.9.2).
This required some changes with m.css to properly ignore the doxyfile.xml the current version generates.
Added
- Board: Adds 1.0 and 1.1 as valid version numbers for the Mayfly. Does not yet support any new features of those boards.
- Add a new parameter (internal variable) to the sensor base class for the number of internally calculated variables.
These are used for values that we would always calculate for a sensor and depend only on the raw results of that single sensor.
This is separate from any calculated variables that are created on-the-fly and depend on multiple other sensors.
In many cases, this is 0 and in most of the other cases the value is informational only.
For the SDI-12 sensors, I'm actually using this to make sure I'm getting the number of values expected. - Sensor: Added support for v0.2.0 of the EnviroDIY/TippingBucketRainCounter device firmware, which added capability to count rotations on a reed-switch anemometer and fixed a critical bug that failed to count high rainfall rates.