Skip to content
Home Assistant TestFlight
Climate

Nilan

veista/nilan · v1.2.28

HACSLocal polling

Nilan integration for Home Assistant

In Apple Home through HomeKit Bridge

What HomeKit Bridge makes of each kind of entity this integration creates, read from its source code. A device only gets the ones that apply to it.

EntityShows up asNote
switchSwitch or outlet
climateThermostat
binary_sensorSensor (motion, contact, leak, smoke…)
sensorSensor (temperature, humidity, air quality…)
water_heaterWater heater (as a thermostat)
buttonButton (as a switch)
selectMode picker (as switches)

What people report

Nilan CTS602-based ventilation/heat pump units work over Modbus; maintainer adds new device types quickly when given logs. Old Comfort 300 units with old firmware have little or no support.

  • Works3
  • Partly works1
  • Not working1
  • Requested2
DeviceIn Home AssistantIn Apple HomeWhat they saidSource
Nilan COMPACTn / Compact P Polar NordicWorks LocalDevice type 30 support merged
Saved copy
Implements device-type support for `COMPACTn` (device type ID 30) as discussed in #218. ## Changes 1. Added `30: "COMPACTn"` to `CTS602_DEVICE_TYPES` in `custom_components/nilan/device_map.py`. 2. Added `30` to the `supported_devices` tuples of every entry where device 44 (CompactP AIR/GEO sibling) is present, non-HPS entries and HPS-specific entries alike. (The HPS entries previously only listed `(44,)`, so they were not actually exposed for type 30 before this patch.) 3. Added `CompactP (Polar/Nordic)` to the supported-devices list in `README.md`. ## Testing Patched integration has been …

Excerpt saved from GitHub on 2026-10-23.

PR #219 · 2026-05
Nilan VPL 15Works LocalSupport added after report
Saved copy
Debug log: > 2023-01-10 18:35:09.225 DEBUG (MainThread) [custom_components.nilan.config_flow] Device Type 4 not found in supported devices list Attached is a picture of the plate.

Excerpt saved from GitHub on 2026-10-23.

Issue #35 · 2023-01
Nilan VPM/28ECWorks LocalSupport merged
Saved copy
Add support for VPM/28EC

Excerpt saved from GitHub on 2026-10-23.

PR #204 · 2026-03
Nilan VP18cComPartly works LocalInitially unsupported; later device-type 11 mapping fix still open
Saved copy
Summary Fixes the entity mapping for device type 11 (`VP 18comp`). On this unit a number of registers return valid values, but no entities are created because `supported_devices` either omits `11` or is set to `(None,)`. All changes are limited to device type 11, no other device type is touched. Verified against a real VP 18 M2 (`Control.Type` = 11, `Bus.Version` = 23, controller software 3.6.64) by reading all 293 registers of the CTS602 / HMI350T Modbus specification v23 with the integration disabled, and cross-checked against the manufacturer documentation for this unit (installation …

Excerpt saved from GitHub on 2026-10-23.

PR #238 · 2026-08
Nilan Comfort 300 (2010, software 2.00)Not working LocalNo entities; old firmware needs Nilan update, little works
Saved copy
Hi I have an old Nilan Comfort 300 from 2010. On the panel it says software 2.00. I have bought a Waveshare RS485 TO ETH (B) and configuret it. I got the link, and installed the HACS integration, but I don't get any entities is just blank? I have tried to switch A/B on RS485, but then it says unsupported device. So it looks like the connection is there. I have activated debugging, and it can read device type, bus version, but device software is blank ? 2026-03-14 13:51:11.543 DEBUG (MainThread) [custom_components.nilan.device] Setup has started 2026-03-14 13:51:11.653 DEBUG (MainThread) …

Excerpt saved from GitHub on 2026-10-23.

Issue #208 · 2026-03
Nilan CTS400 / ES1077 (Comfort 250 Top)Requested LocalDifferent register map; support PR open
Saved copy
Why Adds support for the Nilan CTS400 / ES1077 controller (Comfort 250 Top) alongside the existing CTS602 integration. The CTS400 uses a different Modbus register space, cannot be auto-detected (it has no CTS602 `control_type` register at holding 1000), and only supports function codes FC03/FC04/FC06. It therefore can't be added as a small CTS602 "device key" and is wired as a distinct board family. This is ready for review, opened from a fork, and refs discussion #165. It is additive only - no CTS602 behavior changes. ## Provenance and verification - Verified live on a Nilan Comfort 250 Top …

Excerpt saved from GitHub on 2026-10-23.

PR #223 · 2026-06
Nilan CTS602 earth tube preheaterRequested LocalEarth tube support PR open
Saved copy
Summary Adds support for monitoring and controlling an earth tube preheater (puits canadien) connected to a Nilan CTS602 unit (device type 28). - `get_t17_preheater_temperature`, temperature sensor (T17) for the earth tube inlet, mapped to `sensor` entity (already existed in `device.py`, now wired through `device_map` and `sensor`) - `get_preheat_fan_speed`, actual fan speed readback from register `output_pre_heat_cap`, exposed as a `sensor` (%) - `get_preheat_cap` / `set_preheat_cap`, fan capacity setpoint 0–100%, exposed as a `number` slider All entities are scoped to `supported_devices: …

Excerpt saved from GitHub on 2026-10-23.

PR #216 · 2026-05

Gathered from GitHub issues, pull requests, discussions and docs, and from r/homeassistant. These are individual reports, so check the linked thread and the date before you buy.

How it connects

Local polling

Talks to the device on your network, asking it for updates every so often.

Details

Installs (analytics)64 (0.01%)
GitHub stars81
Latest version1.2.28 (2026-07-05)
Set up in the UIYes
Maintainers@veista
LicenseApache-2.0

Notable forks

Forks with stars, or with code pushed at least 90 days after the original’s last push. Useful when the original goes quiet.

ForkStarsLast pushDescription
TheDave35/nilan Newer code★ 02026-10-10Nilan integration for Home Assistant

In ReReHome

Whatever HomeKit Bridge shares reaches Apple Home as normal HomeKit accessories behind your Home Assistant bridge, so ReReHome shows and controls them like any other.

Bridges get their own settings page listing the accessories behind them.