Unofficial custom integration for automated windows and skylights
An unofficial Home Assistant integration for Marvin Connected Home automated windows, skylights and doors.
Not affiliated with or endorsed by Marvin. Marvin publishes no public API; this was reverse-engineered, and can break without notice.
Integration on GitHub · Python client library
Marvin’s own sanctioned integrations — the Control4 driver, the dry-contact terminals behind the trim — give you a handful of fixed stops and, in Control4’s case, roughly ten-minute polling latency. This integration talks to the same cloud service the Marvin Home app does, which turns out to be considerably more capable than what the sanctioned paths expose:
The windows are ESP32 devices that hold one outbound MQTT/TLS connection to Azure IoT Hub. A full 65,535-port scan of real hardware found no listening ports at all, so local control is not reachable without modifying firmware — which on an installed window means soldering, brick risk, and giving up rain auto-close and OTA updates.
The consolation is that the cloud path is genuinely fast. Sub-second updates were measured against real hardware.
Through HACS, add
https://github.com/cb2206/ha-marvin-connected-home as a custom Integration
repository, install it, and restart Home Assistant. Then add the integration
from Settings → Devices & services.
Full installation and sign-in instructions, including why the config flow asks you to paste a URL back, are in the README.
Released under the MIT licence.