Expose Bosch RM230Z weekly schedule#12508
Merged
Merged
Conversation
3dd7b75 to
6cd501d
Compare
f3e254d to
1834bc5
Compare
Owner
|
Thanks! |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Context
The Bosch RM230Z manual describes automatic room control through a schedule. The existing converter already exposes the Bosch private
operating_modevalueschedule, but did not expose the standard ZCL weekly schedule payloads needed to inspect or write the actual schedule.Related prior work in #9662 covered other private Bosch thermostat attributes; I did not find schedule support implemented there.
The generic thermostat weekly schedule expose currently uses camelCase properties that fail the repository expose naming check, so this PR leaves the shared helper untouched and adds an opt-in Bosch expose using
transition_timeandheat_setpoint. The converter accepts both the new snake_case keys and the existing camelCase keys for compatibility.Validation
PATH="/opt/homebrew/opt/node@24/bin:$PATH" npx pnpm@10.12.1 exec vitest run test/checks.test.ts test/bosch.test.ts test/toZigbee.test.ts --config ./test/vitest.config.mtsPATH="/opt/homebrew/opt/node@24/bin:$PATH" npx pnpm@10.12.1 run checkPATH="/opt/homebrew/opt/node@24/bin:$PATH" npx pnpm@10.12.1 run buildPATH="/opt/homebrew/opt/node@24/bin:$PATH" npx pnpm@10.12.1 testCombined live validation on my Home Assistant instance
weekly_scheduleviazigbee2mqtt/bridge/devices: Bad Thermostat, Schlafzimmer Thermostat, Arbeitszimmer Thermostat, Wohnzimmer Thermostat Flur, Wohnzimmer Thermostat Küche.["off", "heat", "auto"].homeassistant_climate_modesoption on the same live devices.