ModularSensors > Classes > Sensor > SDI12Sensors > Decagon5TM
ModularSensors > Modules > Meter ECH2O (5TM) > Decagon5TM


Decagon5TM class

The Sensor sub-class for the Meter ECH2O soil moisture sensors.

These were formerly sold as the Decagon 5TM.

Base classes

class SDI12Sensors
The main class for SDI-12 Sensors.

Constructors, destructors, conversion operators

Decagon5TM(char SDI12address, int8_t powerPin, int8_t dataPin, uint8_t measurementsToAverage = 1)
Construct a new Decagon 5TM object.
Decagon5TM(char* SDI12address, int8_t powerPin, int8_t dataPin, uint8_t measurementsToAverage = 1)
Construct a new Decagon 5TM object.
Decagon5TM(int SDI12address, int8_t powerPin, int8_t dataPin, uint8_t measurementsToAverage = 1)
Construct a new Decagon 5TM object.
~Decagon5TM()
Destroy the Decagon 5TM object.

Public functions

bool addSingleMeasurementResult(void ) override
Get the results from a single measurement.

Function documentation

Decagon5TM(char SDI12address, int8_t powerPin, int8_t dataPin, uint8_t measurementsToAverage = 1)

Construct a new Decagon 5TM object.

Parameters
SDI12address The SDI-12 address of the ECH2O; can be a char, char*, or int.
powerPin

The pin on the mcu controlling power to the ECH2O Use -1 if it is continuously powered.

  • The ECH2O requires a 3.5-12V power supply, which can be turned off between measurements
dataPin The pin on the mcu connected to the data line of the SDI-12 circuit.
measurementsToAverage The number of measurements to take and average before giving a "final" result from the sensor; optional with a default value of 1.

The SDI-12 address of the sensor, the Arduino pin controlling power on/off, and the Arduino pin sending and receiving data are required for the sensor constructor. Optionally, you can include a number of distinct readings to average. The data pin must be a pin that supports pin-change interrupts.


Decagon5TM(char* SDI12address, int8_t powerPin, int8_t dataPin, uint8_t measurementsToAverage = 1)

Construct a new Decagon 5TM object.

Parameters
SDI12address The SDI-12 address of the ECH2O; can be a char, char*, or int.
powerPin

The pin on the mcu controlling power to the ECH2O Use -1 if it is continuously powered.

  • The ECH2O requires a 3.5-12V power supply, which can be turned off between measurements
dataPin The pin on the mcu connected to the data line of the SDI-12 circuit.
measurementsToAverage The number of measurements to take and average before giving a "final" result from the sensor; optional with a default value of 1.

The SDI-12 address of the sensor, the Arduino pin controlling power on/off, and the Arduino pin sending and receiving data are required for the sensor constructor. Optionally, you can include a number of distinct readings to average. The data pin must be a pin that supports pin-change interrupts.


Decagon5TM(int SDI12address, int8_t powerPin, int8_t dataPin, uint8_t measurementsToAverage = 1)

Construct a new Decagon 5TM object.

Parameters
SDI12address The SDI-12 address of the ECH2O; can be a char, char*, or int.
powerPin

The pin on the mcu controlling power to the ECH2O Use -1 if it is continuously powered.

  • The ECH2O requires a 3.5-12V power supply, which can be turned off between measurements
dataPin The pin on the mcu connected to the data line of the SDI-12 circuit.
measurementsToAverage The number of measurements to take and average before giving a "final" result from the sensor; optional with a default value of 1.

The SDI-12 address of the sensor, the Arduino pin controlling power on/off, and the Arduino pin sending and receiving data are required for the sensor constructor. Optionally, you can include a number of distinct readings to average. The data pin must be a pin that supports pin-change interrupts.


booladdSingleMeasurementResult(void ) override

Get the results from a single measurement.

Returns bool True if the function completed successfully.

This asks the sensor for a new result, verifies that it passes sanity range checks, and then adds the value to the result array.

This also un-sets the _millisMeasurementRequested timestamp (sets _millisMeasurementRequested to 0) and updates the _sensorStatus.