diff --git a/dbus_systemcalc.py b/dbus_systemcalc.py index ac9d460..3bdd20a 100755 --- a/dbus_systemcalc.py +++ b/dbus_systemcalc.py @@ -1051,10 +1051,12 @@ def _updatevalues(self): if has_ac_in_system: newvalues[_AC_PATHS[(phase, 'cons_in_p')]] = consumption[phase] newvalues[_AC_PATHS[(phase, 'cons_in_i')]] = currentconsumption[phase] - - self._compute_number_of_phases('/Ac/Consumption', newvalues) - self._compute_number_of_phases('/Ac/ConsumptionOnOutput', newvalues) + else: + newvalues[_AC_PATHS[(phase, 'cons_in_p')]] = 0 + newvalues[_AC_PATHS[(phase, 'cons_in_i')]] = 0 self._compute_number_of_phases('/Ac/ConsumptionOnInput', newvalues) + self._compute_number_of_phases('/Ac/ConsumptionOnOutput', newvalues) + self._compute_number_of_phases('/Ac/Consumption', newvalues) for m in self._modules: m.update_values(newvalues) diff --git a/delegates/batterylife.py b/delegates/batterylife.py index bcce6f8..d3caf7e 100644 --- a/delegates/batterylife.py +++ b/delegates/batterylife.py @@ -333,7 +333,7 @@ def update_values(self, newvalues): elif newstate > State.KeepCharged: self._dbusservice['/Control/ActiveSocLimit'] = self.minsoclimit else: - self._dbusservice['/Control/ActiveSocLimit'] = None + self._dbusservice['/Control/ActiveSocLimit'] = self.minsoclimit def _on_timer(self): now = self._get_time() diff --git a/tests/systemcalc_test.py b/tests/systemcalc_test.py index f783889..79f9606 100644 --- a/tests/systemcalc_test.py +++ b/tests/systemcalc_test.py @@ -1559,8 +1559,8 @@ def test_no_input_acloads_in_system(self): '/Ac/Consumption/L1/Current': 5.1 - 0.6 + 0.4, '/Ac/ConsumptionOnOutput/L1/Power': 100, '/Ac/ConsumptionOnOutput/L1/Current': 0.4, - '/Ac/ConsumptionOnInput/L1/Power': None, - '/Ac/ConsumptionOnInput/L1/Current': None + '/Ac/ConsumptionOnInput/L1/Power': 0, + '/Ac/ConsumptionOnInput/L1/Current': 0 }) def test_battery_capacity(self):