improvements

This commit is contained in:
Timo Volkmann 2020-06-29 15:34:23 +02:00
parent 2d8a30572b
commit 8ad568ea1b
3 changed files with 36 additions and 12 deletions

View File

@ -4,12 +4,25 @@
#include <header.h>
const int numReadings = 20;
void setupCapacitiveSoilMoistureSensor() {
// pinMode(PIN_MS, INPUT);
}
int readCapacitiveSoilMoistureSensor()
{
int measurement = analogRead(PIN_MS);
int total = 0; // the running total
// read from the sensor:
for (int readIndex = 0; readIndex < numReadings; readIndex++)
{
total = total + analogRead(PIN_MS);
delay(2);
}
int measurement = total / numReadings;
Serial.print("soil moisture raw: ");
Serial.println(measurement);
// add the reading to the total:
//int measurement = analogRead(PIN_MS);
return map(measurement, VALUE_AIR, VALUE_WATER, 0, 100);
}

View File

@ -26,8 +26,8 @@
// MOISTURE SENSOR // A7
#define PIN_MS 35
#define VALUE_WATER 275
#define VALUE_AIR 430
#define VALUE_WATER 1650
#define VALUE_AIR 3500
// Ventil
#define PIN_VENTIL 26
@ -41,8 +41,9 @@
#define MQTT_HOST "mqtt.timovolkmann.de"
#define MQTT_PORT 1883
#define MQTT_DEVICE_ID "esp-timo"
#define MQTT_TOPIC_BASE_SUBSCRIBE "smartgarden/commands"
#define MQTT_TOPIC_BASE_PUBLISH "smartgarden/updates"
#define MQTT_TOPIC_BASE_SUB "smartgarden/commands"
#define MQTT_TOPIC_BASE_PUB "smartgarden/updates"
#define MQTT_PATH_PUB MQTT_TOPIC_BASE_PUB "/" MQTT_DEVICE_ID "/"
// PUBLISH FREQUENCY (MS)
#define FREQUENCY 3000

View File

@ -3,11 +3,19 @@
*/
#include <header.h>
#include <string>
//using namespace std;
#define MQTT_MOISTURE MQTT_PATH_PUB "moisture"
#define MQTT_TEMPERATURE MQTT_PATH_PUB "temperature"
#define MQTT_HUMIDITY MQTT_PATH_PUB "humidity"
#define MQTT_BRIGHTNESS MQTT_PATH_PUB "brightness"
unsigned long pingTimer = 0;
char buffer[16];
void setup() {
void setup()
{
Serial.begin(115200);
pingTimer = millis();
setupConnections();
@ -19,32 +27,34 @@ void setup() {
Serial.println();
}
void loop() {
if (millis() - pingTimer >= FREQUENCY) {
void loop()
{
if (millis() - pingTimer >= FREQUENCY)
{
float lxValue = readLightSensorValue();
Serial.print("Light intensity: ");
Serial.print(lxValue);
Serial.println(" lx");
sprintf(buffer, "%f", lxValue);
publishMessage("smartgarden/updates/esp-N2Ff4kaDgs45/brightness", buffer);
publishMessage(MQTT_BRIGHTNESS, buffer);
int mstValue = readCapacitiveSoilMoistureSensor();
Serial.print("Soil moisture: ");
Serial.println(mstValue);
sprintf(buffer, "%i", mstValue);
publishMessage("smartgarden/updates/esp-N2Ff4kaDgs45/moisture", buffer);
publishMessage(MQTT_MOISTURE, buffer);
float humidityValue = readHumidity();
Serial.print("Humidity: ");
Serial.println(humidityValue);
sprintf(buffer, "%f", humidityValue);
publishMessage("smartgarden/updates/esp-N2Ff4kaDgs45/humidity", buffer);
publishMessage(MQTT_HUMIDITY, buffer);
float temperatureValue = readTemperature();
Serial.print("Temperature: ");
Serial.println(temperatureValue);
sprintf(buffer, "%f", temperatureValue);
publishMessage("smartgarden/updates/esp-N2Ff4kaDgs45/temperature", buffer);
publishMessage(MQTT_TEMPERATURE, buffer);
Serial.print("\n");
pingTimer = millis();