diff --git a/schrack/integrationpluginschrack.cpp b/schrack/integrationpluginschrack.cpp index 9be9271..fbb7e61 100644 --- a/schrack/integrationpluginschrack.cpp +++ b/schrack/integrationpluginschrack.cpp @@ -154,6 +154,10 @@ void IntegrationPluginSchrack::setupThing(ThingSetupInfo *info) connect(cionConnection, &CionModbusRtuConnection::cpSignalStateChanged, thing, [=](quint16 cpSignalState){ qCDebug(dcSchrack()) << "CP Signal state changed:" << (char)cpSignalState; + if (cpSignalState < 65 || cpSignalState > 68) { + qCWarning(dcSchrack()) << "Ignoring bogus CP signal state value" << cpSignalState; + return; + } thing->setStateValue(cionPluggedInStateTypeId, cpSignalState >= 66); });