mirror of
https://github.com/lumapu/ahoy.git
synced 2025-05-10 15:36:38 +02:00
in app.h defines eingebaut mit dem sich das verhalten der app in Bezug auf MQTT anpassen läst
in app.cpp bedingte Compiler Abschnitte eingebaut
This commit is contained in:
parent
4dc64eb2d7
commit
ef520b65ec
2 changed files with 28 additions and 9 deletions
|
@ -165,9 +165,11 @@ void app::setup(uint32_t timeout) {
|
|||
mMqtt.setup(mqttAddr, mqttTopic, mqttUser, mqttPwd, mqttDevName, mqttPort);
|
||||
mMqtt.mClient->setCallback(std::bind(&app::cbMqtt, this, std::placeholders::_1, std::placeholders::_2, std::placeholders::_3));
|
||||
mMqttTicker = 0;
|
||||
|
||||
#ifdef __MQTT_TEST__
|
||||
// für mqtt test
|
||||
mMqttTicker = mMqttInterval -10;
|
||||
|
||||
#endif
|
||||
mSerialTicker = 0;
|
||||
|
||||
if(mqttAddr[0] > 0) {
|
||||
|
@ -365,12 +367,17 @@ void app::loop(void) {
|
|||
}
|
||||
}
|
||||
snprintf(val, 10, "%ld", millis()/1000);
|
||||
// sendMqttDiscoveryConfig();
|
||||
|
||||
#ifndef __MQTT_NO_DISCOVERCONFIG__
|
||||
// MQTTDiscoveryConfig nur wenn nicht abgeschaltet.
|
||||
sendMqttDiscoveryConfig();
|
||||
#endif
|
||||
mMqtt.sendMsg("uptime", val);
|
||||
|
||||
#ifdef __MQTT_TEST__
|
||||
// für einfacheren Test mit MQTT, den MQTT abschnitt in 10 Sekunden wieder ausführen
|
||||
mMqttTicker = mMqttInterval -10;
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
if(mSerialValues) {
|
||||
|
@ -495,7 +502,9 @@ bool app::buildPayload(uint8_t id) {
|
|||
//-----------------------------------------------------------------------------
|
||||
void app::processPayload(bool retransmit) {
|
||||
|
||||
#ifdef __MQTT_AFTER_RX__
|
||||
boolean doMQTT = false;
|
||||
#endif
|
||||
|
||||
DPRINTLN(DBG_VERBOSE, F("app::processPayload"));
|
||||
for(uint8_t id = 0; id < mSys->getNumInverters(); id++) {
|
||||
|
@ -553,7 +562,10 @@ void app::processPayload(bool retransmit) {
|
|||
yield();
|
||||
}
|
||||
iv->doCalculations();
|
||||
|
||||
#ifdef __MQTT_AFTER_RX__
|
||||
doMQTT = true;
|
||||
#endif
|
||||
|
||||
}
|
||||
}
|
||||
|
@ -561,6 +573,7 @@ void app::processPayload(bool retransmit) {
|
|||
}
|
||||
}
|
||||
|
||||
#ifdef __MQTT_AFTER_RX__
|
||||
// ist MQTT aktiviert und es wurden Daten vom einem oder mehreren WR aufbereitet ( doMQTT = true)
|
||||
// dann die den mMqttTicker auf mMqttIntervall -2 setzen, also
|
||||
// MQTT aussenden in 2 sek aktivieren
|
||||
|
@ -569,7 +582,7 @@ void app::processPayload(bool retransmit) {
|
|||
++mMqttTicker = mMqttInterval -2;
|
||||
DPRINT(DBG_DEBUG, F("MQTTticker auf Intervall -2 sec ")) ;
|
||||
}
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -17,6 +17,12 @@
|
|||
#include "hmSystem.h"
|
||||
#include "mqtt.h"
|
||||
|
||||
// hier läst sich das Verhalten der app in Bezug auf MQTT
|
||||
// durch PER-Conpiler defines anpassen
|
||||
//
|
||||
// #define __MQTT_TEST__ // MQTT Interval wird auf 10 Sekunden verkürzt ( nur für testzwecke )
|
||||
#define __MQTT_AFTER_RX__ // versendet die MQTT Daten sobald die WR daten Aufbereitet wurden ( gehört eigentlich ins Setup )
|
||||
// #define __MQTT_NO_DISCOVERCONFIG__ // das versenden der MQTTDiscoveryConfig abschalten ( gehört eigentlich ins Setup )
|
||||
|
||||
typedef CircularBuffer<packet_t, PACKET_BUFFER_SIZE> BufferType;
|
||||
typedef HmRadio<RF24_CE_PIN, RF24_CS_PIN, RF24_IRQ_PIN, BufferType> RadioType;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue