@@ -461,13 +461,13 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
461
461
{
462
462
if (pEnergyDevice->bValidValue )
463
463
{
464
- SendKwhMeter (pEnergyDevice->nodeID , pEnergyDevice->instanceID , (pDevice-> hasBattery ) ? pDevice-> batValue : 255 , pDevice->floatValue , pEnergyDevice->floatValue / pEnergyDevice->scaleMultiply , " kWh Meter" );
464
+ SendKwhMeter (pEnergyDevice->nodeID , pEnergyDevice->instanceID , BatLevel , pDevice->floatValue , pEnergyDevice->floatValue / pEnergyDevice->scaleMultiply , " kWh Meter" );
465
465
}
466
466
}
467
467
else
468
468
{
469
469
// No kWh meter, send as normal Power device
470
- SendWattMeter (pDevice->nodeID , pDevice->instanceID , (pDevice-> hasBattery ) ? pDevice-> batValue : 255 , pDevice->floatValue , " Power Meter" );
470
+ SendWattMeter (pDevice->nodeID , pDevice->instanceID , BatLevel , pDevice->floatValue , " Power Meter" );
471
471
}
472
472
}
473
473
else if (pDevice->devType == ZDTYPE_SENSOR_POWERENERGYMETER)
@@ -506,21 +506,21 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
506
506
}
507
507
if (bHaveValidPowerDevice)
508
508
{
509
- SendKwhMeter (pDevice->nodeID , pDevice->instanceID , (pDevice-> hasBattery ) ? pDevice-> batValue : 255 , pPowerDevice->floatValue , pDevice->floatValue / pDevice->scaleMultiply , " kWh Meter" );
509
+ SendKwhMeter (pDevice->nodeID , pDevice->instanceID , BatLevel , pPowerDevice->floatValue , pDevice->floatValue / pDevice->scaleMultiply , " kWh Meter" );
510
510
}
511
511
else
512
512
{
513
- SendKwhMeter (pDevice->nodeID , pDevice->instanceID , (pDevice-> hasBattery ) ? pDevice-> batValue : 255 , 0 , pDevice->floatValue / pDevice->scaleMultiply , " kWh Meter" );
513
+ SendKwhMeter (pDevice->nodeID , pDevice->instanceID , BatLevel , 0 , pDevice->floatValue / pDevice->scaleMultiply , " kWh Meter" );
514
514
}
515
515
}
516
516
else if (pDevice->devType == ZDTYPE_SENSOR_VOLTAGE)
517
517
{
518
518
int sid = (int )(ID1 << 24 ) | (ID2 << 16 ) | (ID3 << 8 ) | ID4;
519
- SendVoltageSensor (0 , sid, pDevice-> batValue , pDevice->floatValue , " Voltage" );
519
+ SendVoltageSensor (0 , sid, BatLevel , pDevice->floatValue , " Voltage" );
520
520
}
521
521
else if (pDevice->devType ==ZDTYPE_SENSOR_PERCENTAGE)
522
522
{
523
- SendPercentageSensor ((int )(ID1 << 24 ) | (ID2 << 16 ) | (ID3 << 8 ) | ID4, 0 , pDevice-> batValue , pDevice->floatValue , " Percentage" );
523
+ SendPercentageSensor ((int )(ID1 << 24 ) | (ID2 << 16 ) | (ID3 << 8 ) | ID4, 0 , BatLevel , pDevice->floatValue , " Percentage" );
524
524
}
525
525
else if (pDevice->devType ==ZDTYPE_SENSOR_AMPERE)
526
526
{
@@ -545,7 +545,7 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
545
545
}
546
546
else if (pDevice->devType == ZDTYPE_SENSOR_UV)
547
547
{
548
- SendUVSensor (ID3, ID4, pDevice-> batValue , pDevice->floatValue , " UV" );
548
+ SendUVSensor (ID3, ID4, BatLevel , pDevice->floatValue , " UV" );
549
549
}
550
550
else if (pDevice->devType == ZDTYPE_SENSOR_TEMPERATURE)
551
551
{
@@ -560,12 +560,12 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
560
560
if (!pHumDevice->bValidValue )
561
561
return ;
562
562
uint16_t NodeID = (ID3 << 8 ) | ID4;
563
- SendTempHumSensor (NodeID, pDevice-> batValue , pDevice->floatValue , pHumDevice->intvalue , " TempHum" );
563
+ SendTempHumSensor (NodeID, BatLevel , pDevice->floatValue , pHumDevice->intvalue , " TempHum" );
564
564
}
565
565
else
566
566
{
567
567
uint16_t NodeID = (ID3 << 8 ) | ID4;
568
- SendTempSensor (NodeID, pDevice-> batValue , pDevice->floatValue , " Temperature" );
568
+ SendTempSensor (NodeID, BatLevel , pDevice->floatValue , " Temperature" );
569
569
}
570
570
}
571
571
else if (pDevice->devType ==ZDTYPE_SENSOR_HUMIDITY)
@@ -588,12 +588,12 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
588
588
ID4 = pTempDevice->instanceID ;
589
589
590
590
uint16_t NodeID = (ID3 << 8 ) | ID4;
591
- SendTempHumSensor (NodeID, pDevice-> batValue , pTempDevice->floatValue , pDevice->intvalue , " TempHum" );
591
+ SendTempHumSensor (NodeID, BatLevel , pTempDevice->floatValue , pDevice->intvalue , " TempHum" );
592
592
}
593
593
else
594
594
{
595
595
uint16_t NodeID = (ID3 << 8 ) | ID4;
596
- SendHumiditySensor (NodeID, pDevice-> batValue , pDevice->intvalue , " Humidity" );
596
+ SendHumiditySensor (NodeID, BatLevel , pDevice->intvalue , " Humidity" );
597
597
}
598
598
}
599
599
else if (pDevice->devType == ZDTYPE_SENSOR_VELOCITY)
@@ -671,7 +671,7 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
671
671
}
672
672
else if (pressure >= 1029 )
673
673
nforecast = wsbaroforcast_sunny;
674
- SendTempHumBaroSensorFloat (pDevice->nodeID , pDevice-> batValue , pTempDevice->floatValue , pHumDevice->intvalue , pDevice->floatValue , nforecast, " TempHumBaro" );
674
+ SendTempHumBaroSensorFloat (pDevice->nodeID , BatLevel , pTempDevice->floatValue , pHumDevice->intvalue , pDevice->floatValue , nforecast, " TempHumBaro" );
675
675
}
676
676
}
677
677
else if (pDevice->devType == ZDTYPE_SENSOR_LIGHT)
@@ -683,9 +683,7 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
683
683
lmeter.id4 =ID4;
684
684
lmeter.dunit =pDevice->scaleID ;
685
685
lmeter.fLux =pDevice->floatValue ;
686
- lmeter.battery_level =255 ;
687
- if (pDevice->hasBattery )
688
- lmeter.battery_level =pDevice->batValue ;
686
+ lmeter.battery_level = BatLevel;
689
687
sDecodeRXMessage (this , (const unsigned char *)&lmeter, NULL , BatLevel);
690
688
}
691
689
else if (pDevice->devType == ZDTYPE_SENSOR_GAS)
@@ -699,14 +697,11 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
699
697
}
700
698
else if (pDevice->devType == ZDTYPE_SENSOR_WATER)
701
699
{
702
- int battery_level = 255 ;
703
- if (pDevice->hasBattery )
704
- battery_level = pDevice->batValue ;
705
- SendMeterSensor (ID3, ID4, battery_level, pDevice->floatValue ," Water" );
700
+ SendMeterSensor (ID3, ID4, BatLevel, pDevice->floatValue ," Water" );
706
701
}
707
702
else if (pDevice->devType == ZDTYPE_SENSOR_CO2)
708
703
{
709
- SendAirQualitySensor (ID3, ID4, pDevice-> batValue , int (pDevice->floatValue ), " CO2 Sensor" );
704
+ SendAirQualitySensor (ID3, ID4, BatLevel , int (pDevice->floatValue ), " CO2 Sensor" );
710
705
}
711
706
else if (pDevice->devType == ZDTYPE_SENSOR_SETPOINT)
712
707
{
@@ -717,9 +712,7 @@ void ZWaveBase::SendDevice2Domoticz(const _tZWaveDevice *pDevice)
717
712
tmeter.id3 =ID3;
718
713
tmeter.id4 =ID4;
719
714
tmeter.dunit =1 ;
720
- tmeter.battery_level =255 ;
721
- if (pDevice->hasBattery )
722
- tmeter.battery_level =pDevice->batValue ;
715
+ tmeter.battery_level = BatLevel;
723
716
tmeter.temp =pDevice->floatValue ;
724
717
sDecodeRXMessage (this , (const unsigned char *)&tmeter, NULL , BatLevel);
725
718
}
0 commit comments