ESP Plant Care - Class Documentation¶
General¶
MQTTHelper¶
-
class
MQTTHelper
¶ MQTT helper for fast sensor and system data uploading.
Public Functions
-
MQTTHelper
(PubSubClient *pubSubClient, TimeProvider *timeProvider)¶ - Parameters
pubSubClient
: provided by https://github.com/knolleary/pubsubclient.gittimeProvider
:
-
void
setup
()¶ Setup the MQTT connection.
-
void
update
()¶ Update the MQTT connection.
-
void
connect
()¶ Connect/Reconnect to the MQTT broker.
-
void
disconnect
()¶ Disconnect from the MQTT broker.
- template <typename Generic>
-
void
logSensorMetric
(String sensor, Generic payload, bool retained = false)¶ Send generic sensor message with automatic time providing.
- Template Parameters
Generic
:
- Parameters
sensor
: name used in MQTT topic.payload
: to send over MQTT. (Parsed as String(payload);)retained
: MQTT message. (See: https://www.hivemq.com/blog/mqtt-essentials-part-8-retained-messages)
- template <typename Generic>
-
void
logSystemMetric
(String system, Generic payload, bool retained = false)¶ Send generic system message with automatic time providing.
- Template Parameters
Generic
:
- Parameters
system
: name used in MQTT topic.payload
: to send over MQTT. (Parsed as String(payload);)retained
: MQTT message. (See: https://www.hivemq.com/blog/mqtt-essentials-part-8-retained-messages)
- template <typename Generic>
-
void
logSensorMetric
(String sensor, Generic payload, unsigned long time, bool retained = false)¶ Send generic sensor message.
- Template Parameters
Generic
:
- Parameters
sensor
: name used in MQTT topic.payload
: to send over MQTT. (Parsed as String(payload);)time
:retained
: MQTT message. (See: https://www.hivemq.com/blog/mqtt-essentials-part-8-retained-messages)
- template <typename Generic>
-
void
logSystemMetric
(String system, Generic payload, unsigned long time, bool retained = false)¶ Send generic sensor message.
- Template Parameters
Generic
:
- Parameters
system
: name used in MQTT topic.payload
: to send over MQTT. (Parsed as String(payload);)time
:retained
: MQTT message. (See: https://www.hivemq.com/blog/mqtt-essentials-part-8-retained-messages)
-
Sensors¶
AnalogReadCap¶
-
class
AnalogReadCap
¶ R sens 100 ohm 3.3V/Sensor -----\/\/\/-----*-----\/\/\/----- DigitalPin | | ======= 10µF | | GND *
Analog sensor reader:
- Discharge Capacitor
- Wait until charged and time it
- RC = time
Inherits from Sensor
Public Functions
-
AnalogReadCap
(String name, ITimeProvider *timeProvider, uint8_t ioPin)¶ - Parameters
name
:timeProvider
:ioPin
: digital read pin
BH1750¶
-
class
BH1750light
¶ BH1750 Sensor.
Inherits from Sensor
Public Functions
-
BH1750light
(String name, ITimeProvider *timeProvider, int sda, int scl, BH1750::Mode = BH1750::CONTINUOUS_HIGH_RES_MODE)¶ - Parameters
name
: - used as MQTT sensor topic nametimeProvider
:sda
: - i2cscl
: - i2c
-
BMP180¶
-
class
BMPholder
¶ BMP180 Sensor.
Inherits from SensorSet