Phoenix: Ignore invalid emeter values in some models

pull/101/head
Michael Zanetti 2022-12-07 21:10:20 +01:00
parent 8a3dfb57e3
commit dfb9614267
2 changed files with 10 additions and 1 deletions

View File

@ -191,7 +191,10 @@ void IntegrationPluginPhoenixConnect::setupThing(ThingSetupInfo *info)
connect(connection, &PhoenixModbusTcpConnection::activePowerChanged, thing, [thing](quint32 activePower) {
qCDebug(dcPhoenixConnect()) << "Active power consumption changed" << activePower;
if (thing->hasState("currentPower")) {
thing->setStateValue("currentPower", activePower);
// Note: Explicitly casting to to signed integer as apparently in some setups the meter may
// occationally report negative energy flow by some 1 - 3 Watt causing the modbus controller
// register to underflow and report values like 0xFFFFFFFE (-2W) etc.
thing->setStateValue("currentPower", (qint32)activePower);
}
});

View File

@ -13,6 +13,7 @@
"displayName": "Wallbe ECO 2.0",
"name": "wallbeEco2",
"createMethods": ["discovery", "user"],
"discoveryType": "weak",
"interfaces": ["evcharger", "connectable"],
"paramTypes": [
{
@ -118,6 +119,7 @@
"displayName": "Wallbe Pro",
"name": "wallbePro",
"createMethods": ["discovery", "user"],
"discoveryType": "weak",
"interfaces": ["evcharger", "smartmeterconsumer", "connectable"],
"paramTypes": [
{
@ -239,6 +241,7 @@
"displayName": "Compleo ECO s",
"name": "compleoEcoS",
"createMethods": ["discovery", "user"],
"discoveryType": "weak",
"interfaces": ["evcharger", "connectable"],
"paramTypes": [
{
@ -344,6 +347,7 @@
"displayName": "Compleo PRO",
"name": "compleoPro",
"createMethods": ["discovery", "user"],
"discoveryType": "weak",
"interfaces": ["evcharger", "smartmeterconsumer", "connectable"],
"paramTypes": [
{
@ -465,6 +469,7 @@
"displayName": "Scapo Economy",
"name": "scapoEco",
"createMethods": ["discovery", "user"],
"discoveryType": "weak",
"interfaces": ["evcharger", "connectable"],
"paramTypes": [
{
@ -570,6 +575,7 @@
"displayName": "Scapo Vision",
"name": "scapoVision",
"createMethods": ["discovery", "user"],
"discoveryType": "weak",
"interfaces": ["evcharger", "smartmeterconsumer", "connectable"],
"paramTypes": [
{