diff --git a/tasmota/xdrv_23_zigbee_5_converters.ino b/tasmota/xdrv_23_zigbee_5_converters.ino index bf508d9c2..70cbfe128 100644 --- a/tasmota/xdrv_23_zigbee_5_converters.ino +++ b/tasmota/xdrv_23_zigbee_5_converters.ino @@ -1397,7 +1397,7 @@ int32_t Z_ApplyConverter(const class ZCLFrame *zcl, uint16_t shortaddr, JsonObje if (multiplier > 0) { json[new_name] = ((float)value) * multiplier; } else { - json[new_name] = ((float)value) / multiplier; + json[new_name] = ((float)value) / (-multiplier); } } diff --git a/tasmota/xdrv_23_zigbee_9_impl.ino b/tasmota/xdrv_23_zigbee_9_impl.ino index 0ea39c194..4da0a48f6 100644 --- a/tasmota/xdrv_23_zigbee_9_impl.ino +++ b/tasmota/xdrv_23_zigbee_9_impl.ino @@ -483,7 +483,7 @@ void ZbSendReportWrite(const JsonObject &val_pubwrite, uint16_t device, uint16_t if (multiplier > 0) { // inverse of decoding val_f = val_f / multiplier; } else { - val_f = val_f * multiplier; + val_f = val_f * (-multiplier); } use_val = false; }