VE.Direct: publish data retrieved from HEX protocol
This commit is contained in:
parent
abe01ae36f
commit
4cd690de66
@ -85,6 +85,17 @@ void MqttHandleVedirectHassClass::publishConfig()
|
|||||||
publishSensor("Panel maximum power today", NULL, "H21", "power", "measurement", "W", *optMpptData);
|
publishSensor("Panel maximum power today", NULL, "H21", "power", "measurement", "W", *optMpptData);
|
||||||
publishSensor("Panel yield yesterday", NULL, "H22", "energy", "total", "kWh", *optMpptData);
|
publishSensor("Panel yield yesterday", NULL, "H22", "energy", "total", "kWh", *optMpptData);
|
||||||
publishSensor("Panel maximum power yesterday", NULL, "H23", "power", "measurement", "W", *optMpptData);
|
publishSensor("Panel maximum power yesterday", NULL, "H23", "power", "measurement", "W", *optMpptData);
|
||||||
|
|
||||||
|
// optional info, provided only if TX is connected to charge controller
|
||||||
|
if (optMpptData->NetworkTotalDcInputPowerMilliWatts.first != 0) {
|
||||||
|
publishSensor("VE.Smart network total DC input power", "mdi:solar-power", "NetworkTotalDcInputPower", "power", "measurement", "W", *optMpptData);
|
||||||
|
}
|
||||||
|
if (optMpptData->MpptTemperatureMilliCelsius.first != 0) {
|
||||||
|
publishSensor("MPPT temperature", "mdi:temperature-celsius", "MpptTemperature", "temperature", "measurement", "W", *optMpptData);
|
||||||
|
}
|
||||||
|
if (optMpptData->SmartBatterySenseTemperatureMilliCelsius.first != 0) {
|
||||||
|
publishSensor("Smart Battery Sense temperature", "mdi:temperature-celsius", "SmartBatterySenseTemperature", "temperature", "measurement", "W", *optMpptData);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
yield();
|
yield();
|
||||||
|
|||||||
@ -130,4 +130,14 @@ void MqttHandleVedirectClass::publish_mppt_data(const VeDirectMpptController::da
|
|||||||
PUBLISH(yieldYesterday_H22_Wh, "H22", currentData.yieldYesterday_H22_Wh / 1000.0);
|
PUBLISH(yieldYesterday_H22_Wh, "H22", currentData.yieldYesterday_H22_Wh / 1000.0);
|
||||||
PUBLISH(maxPowerYesterday_H23_W, "H23", currentData.maxPowerYesterday_H23_W);
|
PUBLISH(maxPowerYesterday_H23_W, "H23", currentData.maxPowerYesterday_H23_W);
|
||||||
#undef PUBLILSH
|
#undef PUBLILSH
|
||||||
|
|
||||||
|
#define PUBLISH_OPT(sm, t, val) \
|
||||||
|
if (currentData.sm.first != 0 && (_PublishFull || currentData.sm.second != previousData.sm.second)) { \
|
||||||
|
MqttSettings.publish(topic + t, String(val)); \
|
||||||
|
}
|
||||||
|
|
||||||
|
PUBLISH_OPT(NetworkTotalDcInputPowerMilliWatts, "NetworkTotalDcInputPower", currentData.NetworkTotalDcInputPowerMilliWatts.second / 1000.0);
|
||||||
|
PUBLISH_OPT(MpptTemperatureMilliCelsius, "MpptTemperature", currentData.MpptTemperatureMilliCelsius.second / 1000.0);
|
||||||
|
PUBLISH_OPT(SmartBatterySenseTemperatureMilliCelsius, "SmartBatterySenseTemperature", currentData.SmartBatterySenseTemperatureMilliCelsius.second / 1000.0);
|
||||||
|
#undef PUBLILSH_OPT
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user