Skip to content

Add new skyfi hot water appliances - #114

Open
billgeo wants to merge 4 commits into
fredrike:masterfrom
billgeo:feature/skyfi-hot-water
Open

Add new skyfi hot water appliances#114
billgeo wants to merge 4 commits into
fredrike:masterfrom
billgeo:feature/skyfi-hot-water

Conversation

@billgeo

@billgeo billgeo commented May 2, 2026

Copy link
Copy Markdown

Description

Thanks for the opportunity to contribute! 😄

Adds support for Daikin RQWX60ZV1A (C02 heat pump hot water system) that uses the Daikin Airbase BRP15B61 Controller.

This introduces a dedicated DaikinAirBaseHotWater device for the local /skyfi/hotwater/... API, with status parsing, typed status helpers, control setters, and local validation before writes. It is integrated with DaikinFactory through auto-detection or hot_water=True, and exposed in the CLI via --hot-water.

The hot water implementation is kept separate from the existing SkyFi/aircon protocol so current device behavior should be unaffected.

Tests added for parsing, validation, setters, and factory detection.

Test summary for scripts I ran on a local Daikin RQWX60ZV1A / BRP15B61 system:

[PASS] local validation
[PASS] raw hot-water HTTP API
[PASS] explicit hot-water factory
[PASS] factory auto-detection
[PASS] safe write-back check
[PASS] CLI state-change write exercise and restore
[PASS] CLI smoke tests

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code refactoring
  • Performance improvement
  • Test coverage improvement

Testing

  • I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • I have tested this with real Daikin hardware (if applicable)

Code Quality

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • Pre-commit hooks pass (run pre-commit run --all-files)

String Formatting (New Code)

  • If this PR adds new Python files, I've used double quotes (") for strings following Python conventions

Note: An automated check will highlight single quotes in new code. We're planning to migrate to standard string normalization in the future. New code should prefer double quotes (") over single quotes (') to ease this transition.

Documentation

  • I have updated the documentation accordingly (if needed)
  • I have updated the CHANGELOG (if applicable)

Related Issues

As described in #112

Additional Notes

billgeo added 4 commits May 1, 2026 12:55
Add DaikinAirBaseHotWater for BRP15B61/AirBase hot water systems using the local /skyfi/hotwater API.

Wire the device into factory detection and the CLI, including explicit hot water controls for power, boost, vacation mode, vacation days, and boil level.

Add async tests for status parsing, validation, setter requests, factory detection, and AirBase fallback behavior.
@codecov

codecov Bot commented May 2, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 86.34021% with 53 lines in your changes missing coverage. Please review.
✅ Project coverage is 84.78%. Comparing base (c406595) to head (a6ce4d5).

Files with missing lines Patch % Lines
pydaikin/daikin_airbase_hotwater.py 86.41% 50 Missing ⚠️
pydaikin/factory.py 84.21% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #114      +/-   ##
==========================================
+ Coverage   84.04%   84.78%   +0.74%     
==========================================
  Files          12       13       +1     
  Lines        1178     1564     +386     
==========================================
+ Hits          990     1326     +336     
- Misses        188      238      +50     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@billgeo
billgeo marked this pull request as ready for review May 2, 2026 10:42
@fredrike

Copy link
Copy Markdown
Owner

Please update tests to covered changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants