Return dryness to http and mqtt
This commit is contained in:
parent
4c09dcbb24
commit
5db953072d
@ -7,6 +7,7 @@ int MqttIsConnected();
|
|||||||
int MqttSetup(char *server, char *user, char *passwd, int port, char * hostname);
|
int MqttSetup(char *server, char *user, char *passwd, int port, char * hostname);
|
||||||
int MqttPublish(double temp, double pressure);
|
int MqttPublish(double temp, double pressure);
|
||||||
int MqttDhtPublish(float temp, float humidity);
|
int MqttDhtPublish(float temp, float humidity);
|
||||||
|
int MqttDryPublish(int dry);
|
||||||
void MqttCheckSubscription();
|
void MqttCheckSubscription();
|
||||||
void MqttChangeGpioValue(int gpio, int value);
|
void MqttChangeGpioValue(int gpio, int value);
|
||||||
bool MqttIsConfigured();
|
bool MqttIsConfigured();
|
||||||
|
@ -8,6 +8,7 @@ Adafruit_MQTT_Publish *mqtt_temp;
|
|||||||
Adafruit_MQTT_Publish *mqtt_pressure;
|
Adafruit_MQTT_Publish *mqtt_pressure;
|
||||||
Adafruit_MQTT_Publish *mqtt_dht_temp;
|
Adafruit_MQTT_Publish *mqtt_dht_temp;
|
||||||
Adafruit_MQTT_Publish *mqtt_dht_humidity;
|
Adafruit_MQTT_Publish *mqtt_dht_humidity;
|
||||||
|
Adafruit_MQTT_Publish *mqtt_dry;
|
||||||
|
|
||||||
#define NB_ELEMENTS(x) (sizeof(x)/ sizeof(x[0]))
|
#define NB_ELEMENTS(x) (sizeof(x)/ sizeof(x[0]))
|
||||||
#define FEED_MAX_SIZE 96
|
#define FEED_MAX_SIZE 96
|
||||||
@ -17,6 +18,7 @@ Adafruit_MQTT_Publish *mqtt_dht_humidity;
|
|||||||
#define PRESSURE_FEED_FORMAT "/feeds/%s/%s/pressure"
|
#define PRESSURE_FEED_FORMAT "/feeds/%s/%s/pressure"
|
||||||
#define TEMPERATURE_DHT_FEED_FORMAT "/feeds/%s/%s/dht/temperature"
|
#define TEMPERATURE_DHT_FEED_FORMAT "/feeds/%s/%s/dht/temperature"
|
||||||
#define HUMIDITY_DHT_FEED_FORMAT "/feeds/%s/%s/dht/humidity"
|
#define HUMIDITY_DHT_FEED_FORMAT "/feeds/%s/%s/dht/humidity"
|
||||||
|
#define DRY_FEED_FORMAT "/feeds/%s/%s/dry"
|
||||||
|
|
||||||
// Should have less that MAXSUBSCRIPTIONS elements
|
// Should have less that MAXSUBSCRIPTIONS elements
|
||||||
// MAXSUBSCRIPTIONS is defined is Adafruit_mqtt.h
|
// MAXSUBSCRIPTIONS is defined is Adafruit_mqtt.h
|
||||||
@ -46,6 +48,7 @@ int MqttSetup(char *server, char *user, char *passwd, int port, char * hostname)
|
|||||||
mqtt_dht_humidity = MqttCreatePublisher(HUMIDITY_DHT_FEED_FORMAT, user, mqttId);
|
mqtt_dht_humidity = MqttCreatePublisher(HUMIDITY_DHT_FEED_FORMAT, user, mqttId);
|
||||||
mqtt_temp = MqttCreatePublisher(TEMPERATURE_FEED_FORMAT, user, mqttId);
|
mqtt_temp = MqttCreatePublisher(TEMPERATURE_FEED_FORMAT, user, mqttId);
|
||||||
mqtt_pressure = MqttCreatePublisher(PRESSURE_FEED_FORMAT, user, mqttId);
|
mqtt_pressure = MqttCreatePublisher(PRESSURE_FEED_FORMAT, user, mqttId);
|
||||||
|
mqtt_dry = MqttCreatePublisher(DRY_FEED_FORMAT, user, mqttId);
|
||||||
|
|
||||||
for (uint i = 0 ; i < NB_ELEMENTS(gpioWatched) && i < MAXSUBSCRIPTIONS; i++) {
|
for (uint i = 0 ; i < NB_ELEMENTS(gpioWatched) && i < MAXSUBSCRIPTIONS; i++) {
|
||||||
snprintf(GPIO_FEED[i], FEED_MAX_SIZE, GPIO_FEED_FORMAT, user, mqttId, gpioWatched[i]);
|
snprintf(GPIO_FEED[i], FEED_MAX_SIZE, GPIO_FEED_FORMAT, user, mqttId, gpioWatched[i]);
|
||||||
@ -114,6 +117,14 @@ int MqttPublish(double temp, double pressure) {
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int MqttDryPublish(int dry) {
|
||||||
|
if (MqttConnect() == 0) {
|
||||||
|
SKETCH_DEBUG_PRINTLN("publishing dry!");
|
||||||
|
mqtt_dry->publish((dry*100)/1024);
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int MqttDhtPublish(float temp, float humidity) {
|
int MqttDhtPublish(float temp, float humidity) {
|
||||||
if (MqttConnect() == 0) {
|
if (MqttConnect() == 0) {
|
||||||
SKETCH_DEBUG_PRINTLN("publishing DHT!");
|
SKETCH_DEBUG_PRINTLN("publishing DHT!");
|
||||||
|
@ -14,6 +14,9 @@ void WebHandleRoot() {
|
|||||||
#ifdef CONFIG_ENABLE_DHT
|
#ifdef CONFIG_ENABLE_DHT
|
||||||
"Temperature DHT " + String(dhtTemp, 0) + "C<br/>"
|
"Temperature DHT " + String(dhtTemp, 0) + "C<br/>"
|
||||||
"Humidity DHT " + String(dhtHumidity, 0) + "%<br/>"
|
"Humidity DHT " + String(dhtHumidity, 0) + "%<br/>"
|
||||||
|
#endif
|
||||||
|
#ifdef CONFIG_ENABLE_DRY_SENSOR
|
||||||
|
"Dryness " + String((dryness*100)/1024) + "%<br/>"
|
||||||
#endif
|
#endif
|
||||||
"</fieldset>"
|
"</fieldset>"
|
||||||
#ifdef CONFIG_WEB_CONTROLLED_GPIO
|
#ifdef CONFIG_WEB_CONTROLLED_GPIO
|
||||||
@ -147,7 +150,7 @@ void WebHandleOTA() {
|
|||||||
SKETCH_DEBUG_PRINTLN("Boot mode Set to OTA");
|
SKETCH_DEBUG_PRINTLN("Boot mode Set to OTA");
|
||||||
EepromSaveBootMode(BOOTMODE_OTA);
|
EepromSaveBootMode(BOOTMODE_OTA);
|
||||||
server.send(200, "text/html", "<h1>OTA Mode set</h1><br/>"
|
server.send(200, "text/html", "<h1>OTA Mode set</h1><br/>"
|
||||||
"You can reboot now"
|
"You can reboot now<br/>"
|
||||||
"<a href=\"/reboot\">Reboot</a><br/>");
|
"<a href=\"/reboot\">Reboot</a><br/>");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -139,7 +139,7 @@ void OTASetup() {
|
|||||||
SKETCH_DEBUG_PRINTLN("\nEnd");
|
SKETCH_DEBUG_PRINTLN("\nEnd");
|
||||||
});
|
});
|
||||||
ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
|
ArduinoOTA.onProgress([](unsigned int progress, unsigned int total) {
|
||||||
SKETCH_DEBUG_PRINTF("Progress: %u%%\r", (progress / (total / 100)));
|
SKETCH_DEBUG_PRINTF("Progress: %u%%\n", (progress / (total / 100)));
|
||||||
});
|
});
|
||||||
ArduinoOTA.onError([](ota_error_t error) {
|
ArduinoOTA.onError([](ota_error_t error) {
|
||||||
SKETCH_DEBUG_PRINTF("Error[%u]: ", error);
|
SKETCH_DEBUG_PRINTF("Error[%u]: ", error);
|
||||||
@ -275,6 +275,7 @@ void loop() {
|
|||||||
SKETCH_DEBUG_PRINT("Current dryness ");
|
SKETCH_DEBUG_PRINT("Current dryness ");
|
||||||
SKETCH_DEBUG_PRINT((dryness*100)/1024);
|
SKETCH_DEBUG_PRINT((dryness*100)/1024);
|
||||||
SKETCH_DEBUG_PRINTLN("%");
|
SKETCH_DEBUG_PRINTLN("%");
|
||||||
|
MqttDryPublish(dryness);
|
||||||
}
|
}
|
||||||
nbCycle = 0;
|
nbCycle = 0;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user