Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
e56afcf
Link to updated backend library
bouwew Jun 21, 2026
cd86886
Refresh test-fixtures
bouwew Jun 21, 2026
891b2a0
Rework water_heater to support the updated backend library
bouwew Jun 21, 2026
2642e48
Update constants and deploy
bouwew Jun 21, 2026
1856c6f
Updates
bouwew Jun 21, 2026
21b8a7a
Update water_heater testcase
bouwew Jun 21, 2026
e8ad578
Fix len asserts in test_update_device()
bouwew Jun 21, 2026
59181b2
Update translations
bouwew Jun 21, 2026
5ef1c55
Save updated snapshot files
bouwew Jun 21, 2026
0dfa069
Ruffed
bouwew Jun 21, 2026
867c527
More updates
bouwew Jun 21, 2026
fcb0106
Remove boiler_temperature as number, moved to water_heater
bouwew Jun 22, 2026
97382dd
Water_heater updates
bouwew Jun 22, 2026
6519640
More fixture updates
bouwew Jun 22, 2026
b7b790c
More water_heater updates
bouwew Jun 22, 2026
dac1b01
Update water_heater unique_id
bouwew Jun 22, 2026
db07f84
Update translation strings
bouwew Jun 22, 2026
aa58cf6
Updates
bouwew Jun 22, 2026
49b8160
Water_heater test updates
bouwew Jun 22, 2026
436c3ac
Test-number: remove test case, number removed
bouwew Jun 22, 2026
3007952
Fix code
bouwew Jun 22, 2026
7c3995e
Save updated snapshot files
bouwew Jun 23, 2026
bd6a385
Clean up
bouwew Jun 23, 2026
f6d7f25
Correct translation files
bouwew Jun 23, 2026
85898ce
Fix requirements format
bouwew Jun 23, 2026
2c1325e
Implement suggested fixes
bouwew Jun 23, 2026
8a51f1a
Update dhw-select translations
bouwew Jun 25, 2026
27a8b05
Add water_heater state translation string
bouwew Jun 25, 2026
8eefb43
Correct water_heater translation string
bouwew Jun 25, 2026
62148ce
Fix removed import after rebase
bouwew Jun 26, 2026
4932408
Regenerate snapshots after rebase
bouwew Jun 26, 2026
d541bd8
Improve typing, test coverage
bouwew Jun 27, 2026
cb59e5c
Update NL translation
bouwew Jun 30, 2026
2dfd464
Correct nl.json
bouwew Jun 30, 2026
fb837a7
Clean up after rebase
bouwew Jul 1, 2026
0fde6d7
Add async_turn_off()/on() functions
bouwew Jul 3, 2026
af4f8ab
Fix typing
bouwew Jul 4, 2026
6cc7bbd
Add Anna-Loria test fixture
bouwew Jul 4, 2026
5bbbcb2
Change wh-testcase to the added fixture
bouwew Jul 4, 2026
80a36fd
Save updated shapshot
bouwew Jul 4, 2026
186cf27
Add testcase setting dhw_mode to off
bouwew Jul 4, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 9 additions & 6 deletions custom_components/plugwise/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,15 +77,12 @@
VENDOR: Final = "vendor"

# Number constants
MAX_BOILER_TEMP: Final = "maximum_boiler_temperature"
MAX_DHW_TEMP: Final = "max_dhw_temperature"
LOWER_BOUND: Final = "lower_bound"
RESOLUTION: Final = "resolution"
TEMPERATURE_OFFSET: Final = "temperature_offset"
UPPER_BOUND: Final = "upper_bound"

# Sensor constants
DHW_TEMP: Final = "dhw_temperature"
DHW_SETPOINT: Final = "domestic_hot_water_setpoint"
EL_CONSUMED: Final = "electricity_consumed"
EL_CONS_INTERVAL: Final = "electricity_consumed_interval"
Expand Down Expand Up @@ -150,6 +147,10 @@
COOLING_ENA_SWITCH: Final ="cooling_ena_switch"
SWITCHES: Final = "switches"

# Water_heater constants
BOILER_TEMP: Final = "boiler_temperature"
DHW_TEMP: Final = "dhw_temperature"

# Default directives
DEFAULT_PORT: Final[int] = 80
DEFAULT_TIMEOUT: Final[int] = 30
Expand Down Expand Up @@ -188,11 +189,8 @@
}

type NumberType = Literal[
"maximum_boiler_temperature",
"max_dhw_temperature",
"temperature_offset",
]

type SelectType = Literal[
"select_dhw_mode",
"select_gateway_mode",
Expand All @@ -207,3 +205,8 @@
"regulation_modes",
"zone_profiles",
]
type WaterHeaterType = Literal[
"boiler_temperature",
"dhw_temperature",
]
type WaterHeaterOptionsType = Literal["dhw_modes"]
4 changes: 3 additions & 1 deletion custom_components/plugwise/manifest.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,9 @@
"integration_type": "hub",
"iot_class": "local_polling",
"loggers": ["plugwise"],
"requirements": ["plugwise==1.12.0"],
"requirements": [
"plugwise@git+https://github.com/plugwise/python-plugwise.git@water_heater_2"
],
Comment thread
coderabbitai[bot] marked this conversation as resolved.
"version": "0.65.0",
"zeroconf": ["_plugwise._tcp.local."]
}
10 changes: 0 additions & 10 deletions custom_components/plugwise/number.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
from .const import (
LOGGER,
LOWER_BOUND,
MAX_BOILER_TEMP,
RESOLUTION,
TEMPERATURE_OFFSET,
UPPER_BOUND,
Expand All @@ -40,13 +39,6 @@ class PlugwiseNumberEntityDescription(NumberEntityDescription):

# Upstream + is there a reason we didn't rename this one prefixed?
NUMBER_TYPES = (
PlugwiseNumberEntityDescription(
key=MAX_BOILER_TEMP,
translation_key=MAX_BOILER_TEMP,
device_class=NumberDeviceClass.TEMPERATURE,
entity_category=EntityCategory.CONFIG,
native_unit_of_measurement=UnitOfTemperature.CELSIUS,
),
PlugwiseNumberEntityDescription(
key=TEMPERATURE_OFFSET,
translation_key=TEMPERATURE_OFFSET,
Expand Down Expand Up @@ -121,8 +113,6 @@ def __init__(
self._attr_native_min_value = ctrl.get(LOWER_BOUND, 0.0) # Upstream const

native_step = ctrl.get(RESOLUTION, 0.5) # Upstream const
if description.key != TEMPERATURE_OFFSET: # Upstream const
native_step = max(native_step, 0.5)
self._attr_native_step = native_step

@property
Expand Down
30 changes: 16 additions & 14 deletions custom_components/plugwise/translations/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -93,12 +93,6 @@
}
},
"number": {
"max_dhw_temperature": {
"name": "Domestic hot water setpoint"
},
"maximum_boiler_temperature": {
"name": "Maximum boiler temperature setpoint"
},
"temperature_offset": {
"name": "Temperature offset"
}
Expand All @@ -108,7 +102,7 @@
"name": "DHW mode",
"state": {
"comfort": "Comfort",
"off": "Off"
"eco": "Eco"
}
},
"select_gateway_mode": {
Expand Down Expand Up @@ -299,13 +293,21 @@
}
},
"water_heater": {
"plugwise": {
"state": {
"auto": "Auto",
"boost": "Boost",
"comfort": "Comfort",
"eco": "Eco",
"off": "Off"
"boiler_temperature": {
"name": "Boiler temperature"
},
"dhw_temperature": {
"name": "DHW temperature",
"state_attributes": {
"dhw_modes": {
"state": {
"auto": "Auto",
"boost": "Boost",
"comfort": "Comfort",
"eco": "Eco",
"off": "Off"
}
}
}
}
}
Expand Down
30 changes: 16 additions & 14 deletions custom_components/plugwise/translations/nl.json
Original file line number Diff line number Diff line change
Expand Up @@ -93,12 +93,6 @@
}
},
"number": {
"max_dhw_temperature": {
"name": "Instelpunt sanitair warm water"
},
"maximum_boiler_temperature": {
"name": "Instelpunt maximale boiler temperatuur"
},
"temperature_offset": {
"name": "Temperatuurcompensatie"
}
Expand All @@ -108,7 +102,7 @@
"name": "SWW modus",
"state": {
"comfort": "Comfort",
"off": "Uit"
"eco": "Eco"
}
},
"select_gateway_mode": {
Expand Down Expand Up @@ -299,13 +293,21 @@
}
},
"water_heater": {
"plugwise": {
"state": {
"auto": "Auto",
"boost": "Boost",
"comfort": "Comfort",
"eco": "Eco",
"off": "Off"
"boiler_temperature": {
"name": "Boiler temperatuur"
},
"dhw_temperature": {
"name": "SWW temperatuur",
"state_attributes": {
"dhw_modes": {
"state": {
"auto": "Auto",
"boost": "Boost",
"comfort": "Comfort",
"eco": "Eco",
"off": "Uit"
}
}
}
}
}
Expand Down
Loading
Loading