I managed to connect to overkitz Atlantic
I have a device that is found « MODBUSLINK »
But absolutely not my water heater.
What do you need?
[2026-08-03T19:21:54.251Z] [INFO] [overkiz] Connected to the Overkiz API
[2026-08-03T19:21:54.312Z] [INFO] [overkiz] Fetched 4 Overkiz devices
[2026-08-03T19:21:55.674Z] [INFO] [overkiz] Connected to the Overkiz API
[2026-08-03T19:21:55.710Z] [INFO] [overkiz] Fetched 4 Overkiz devices
[2026-08-03T19:22:18.372Z] [INFO] onScanRequest -> refreshing Overkiz devices
[2026-08-03T19:27:47.425Z] [INFO] onScanRequest -> refreshing Overkiz devices
[2026-08-03T19:27:48.542Z] [INFO] onScanRequest -> refreshing Overkiz devices
my water heater:
mutmut
August 3, 2026, 7:48pm
2
@spenceur not sure your ball is already available:
That’s why I created this post to be taken into account (what exactly is missing?)
Thanks @mutmut
I made a little matter plugin to integrate it (well, I need to revise it)
but I had this information and it was more than enough
mutmut
August 3, 2026, 7:56pm
4
ok I didn’t understand, I took the liberty of changing the post title.
I had the same thought as you at first and then I saw the message in the integration that said it wasn’t available yet.
For information, I spoke with @cicoub13 this morning in PM and he should normally work on the hot water balloons issue on Wednesday
Hi. I started looking into it but I think we’ll need to modify the core of Gladys to add a new type of device. We could do it now but it’s a bit of a hack and the feature labels aren’t clear.
I’m currently writing a specification to add it to Gladys.
Once that’s done, I can add it to the Overkiz integration.
Thanks for the reference @spenceur , I’ll probably ask you for testing as well
Could you look at the specification?
master ← cicoub13:claude/spec-chauffe-eau-integration-jxgobk
ouvert 07:26AM - 04 Aug 26 UTC
Gladys has no category for domestic hot water. A connected water heater can only… be published today as a makeshift assembly — switch/binary for on/off, heater/pilot-wire-mode (a room-heating concept) bent into a mode selector — so the user does not recognize their appliance in the dashboard, and scenes have no mode selector. Integrations have no target either: server/services/matter/README.md lists WaterHeaterManagement and WaterHeaterMode as not handled, for want of something to map them onto.
This adds a living specification for a `water-heater` category, written before the code as AGENTS.md asks for anything touching the data model. No code is changed: the spec is the deliverable, and it is meant to be challenged before implementation starts.
The design follows docs/specs/device-feature-categories.md, and section D answers its review checklist point by point:
- Six types, all intrinsic to producing and storing hot water: binary, mode, target-temperature, remaining-hot-water, heating, boost. The water temperature measured in the tank is published as temperature-sensor/decimal and the consumption as energy-sensor features on the same device — one physical quantity, one category.
- The mode enum carries the full generic set of eight operating modes; per-appliance subsets are declared through supported_options, including for appliances whose native interface is independent switches rather than a selector.
- Every type is mapped to its Matter cluster, with one divergence declared and argued: the category keeps its own target-temperature rather than reusing thermostat/target-temperature.
- heat-source, COP and absence-duration are deliberately deferred to the non-goals, with the reason for each.
Two reference device profiles are specified — a heat-pump water heater with a mode selector, and an electric storage tank exposing switches — so that no later change can quietly make any type mandatory.
Claude-Session: https://claude.ai/code/session_01JLunXRNfohakXDyqzwHHrw
### Description
## Forum
### Checklist
- [ ] Tests pass: `cd server && npm run coverage` (Codecov requires 100% coverage on changed lines) and Cypress (`npm run cypress:run`) if the UI changed
- [ ] Linter and prettier pass on both front and server (`npm run eslint`, `npm run prettier`)
- [ ] No undocumented breaking change
I’ll let @pierre-gilles take a look at this one