weheat 2025.2.26__tar.gz → 2025.2.27__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of weheat might be problematic. Click here for more details.
- {weheat-2025.2.26 → weheat-2025.2.27}/PKG-INFO +1 -1
- {weheat-2025.2.26 → weheat-2025.2.27}/pyproject.toml +1 -1
- {weheat-2025.2.26 → weheat-2025.2.27}/setup.py +1 -1
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/abstractions/heat_pump.py +33 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat.egg-info/PKG-INFO +1 -1
- {weheat-2025.2.26 → weheat-2025.2.27}/LICENSE +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/README.md +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/setup.cfg +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/tests/test_ha_api.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/__init__.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/abstractions/__init__.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/abstractions/discovery.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/abstractions/user.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/api/__init__.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/api/energy_log_api.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/api/heat_pump_api.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/api/heat_pump_log_api.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/api/user_api.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/api_client.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/api_response.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/configuration.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/exceptions.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/__init__.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/boiler_type.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/device_state.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/dhw_type.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/energy_view_dto.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/heat_pump_log_view_dto.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/heat_pump_model.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/heat_pump_status_enum.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/heat_pump_type.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/raw_heat_pump_log_dto.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/read_all_heat_pump_dto.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/read_heat_pump_dto.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/read_user_dto.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/read_user_me_dto.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/models/role.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/py.typed +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat/rest.py +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat.egg-info/SOURCES.txt +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat.egg-info/dependency_links.txt +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat.egg-info/requires.txt +0 -0
- {weheat-2025.2.26 → weheat-2025.2.27}/weheat.egg-info/top_level.txt +0 -0
|
@@ -21,7 +21,7 @@ from setuptools import setup, find_packages # noqa: H301
|
|
|
21
21
|
# prerequisite: setuptools
|
|
22
22
|
# http://pypi.python.org/pypi/setuptools
|
|
23
23
|
NAME = "weheat"
|
|
24
|
-
VERSION = "2025.2.
|
|
24
|
+
VERSION = "2025.2.27"
|
|
25
25
|
PYTHON_REQUIRES = ">=3.7"
|
|
26
26
|
REQUIRES = [
|
|
27
27
|
"urllib3 >= 1.25.3, < 2.1.0",
|
|
@@ -285,6 +285,39 @@ class HeatPump:
|
|
|
285
285
|
return self.State.DEFROSTING
|
|
286
286
|
return None
|
|
287
287
|
|
|
288
|
+
@staticmethod
|
|
289
|
+
def _pwm_to_volume(pwm: float, max: float) -> Union[float, None]:
|
|
290
|
+
"""Calculate PWM to Volume in m3/h based on the max available volume"""
|
|
291
|
+
|
|
292
|
+
# 0 or > 75 are abnormal states. 255 = Off
|
|
293
|
+
if pwm < 1 or pwm > 75:
|
|
294
|
+
return None
|
|
295
|
+
|
|
296
|
+
# 2 = standby
|
|
297
|
+
if pwm <= 5:
|
|
298
|
+
return 0
|
|
299
|
+
|
|
300
|
+
# 5-75 is linear from 0 to max
|
|
301
|
+
return ((pwm - 5) / 70) * max
|
|
302
|
+
|
|
303
|
+
@property
|
|
304
|
+
def dhw_flow_volume(self) -> Union[float, None]:
|
|
305
|
+
"""The DHW Flow in m3/h."""
|
|
306
|
+
pwm = pwm=self._if_available("dhw_flow")
|
|
307
|
+
if pwm is None:
|
|
308
|
+
return None
|
|
309
|
+
|
|
310
|
+
return self._pwm_to_volume(pwm, max=2.1)
|
|
311
|
+
|
|
312
|
+
@property
|
|
313
|
+
def central_heating_flow_volume(self) -> Union[float, None]:
|
|
314
|
+
"""The Central Heating Flow in m3/h."""
|
|
315
|
+
pwm = pwm=self._if_available("central_heating_flow")
|
|
316
|
+
if pwm is None:
|
|
317
|
+
return None
|
|
318
|
+
|
|
319
|
+
return self._pwm_to_volume(pwm, max=2.1)
|
|
320
|
+
|
|
288
321
|
@property
|
|
289
322
|
def energy_total(self) -> Union[float, None]:
|
|
290
323
|
"""The total used energy in kWh from 2023 to now."""
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|