smart_garden/src/main.cpp

52 lines
1.4 KiB
C++

/*
Main file for the SmartGarden project
*/
#include <header.h>
unsigned long pingTimer = 0;
char buffer[16];
void setup() {
Serial.begin(115200);
pingTimer = millis();
setupConnections();
setupLightSensor();
setupTemperatureSensor();
setupCapacitiveSoilMoistureSensor();
Serial.println("Setup complete...");
Serial.println();
Serial.println();
}
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);
int mstValue = readCapacitiveSoilMoistureSensor();
Serial.print("Soil moisture: ");
Serial.println(mstValue);
sprintf(buffer, "%i", mstValue);
publishMessage("smartgarden/updates/esp-N2Ff4kaDgs45/moisture", buffer);
float humidityValue = readHumidity();
Serial.print("Humidity: ");
Serial.println(humidityValue);
sprintf(buffer, "%f", humidityValue);
publishMessage("smartgarden/updates/esp-N2Ff4kaDgs45/humidity", buffer);
float temperatureValue = readTemperature();
Serial.print("Temperature: ");
Serial.println(temperatureValue);
sprintf(buffer, "%f", temperatureValue);
publishMessage("smartgarden/updates/esp-N2Ff4kaDgs45/temperature", buffer);
Serial.print("\n");
pingTimer = millis();
}
}