HACS custom integration for reading Nilan data via Nabto, branded as Nilan CodeWizard.
- CodeWizard: https://github.com/RasmusOtharKirketerp
Tested with:
- Home Assistant OS:
17.0 - Home Assistant Core:
2026.2.1 - Home Assistant Supervisor:
2026.01.1 - Home Assistant Frontend:
20260128.6
Minimum supported Home Assistant Core version is set to 2026.2.1 in integration metadata.
- In Home Assistant, install HACS first if it is not already installed.
- Go to
HACS -> Integrations -> 3 dots -> Custom repositories. - Add your repository URL and set category to
Integration. - Install
Nilan by CodeWizardfrom HACS. - Restart Home Assistant.
- Go to
Settings -> Devices & Services -> Add Integration. - Search for
Nilan CodeWizardand complete setup.
Use local install to test changes without HACS/GitHub download limits.
Linux/HA container host:
./scripts/sync_local.sh /path/to/ha_configWindows:
scripts\\sync_local.bat C:\\path\\to\\ha_configOr use the root publisher shortcut:
publish_to_ha.bat C:\\path\\to\\ha_configOn Windows, if local_settings.json has ha.config_path, you can run without arguments:
scripts\\sync_local.bat
publish_to_ha.batIf your Home Assistant runs on a Pi and is reachable by SSH, use:
Linux/WSL:
./scripts/deploy_ha_ssh.shWindows:
scripts\\deploy_ha_ssh.batThese commands read SSH target details from local_settings.json:
ha.hostha.portha.usernameha.auth.method(passwordorkey)ha.auth.password(when using password auth)ha.auth.private_key_path(optional)ha.config_path(usually/config)deploy.integration_src(defaultcustom_components/nilan_nabto)deploy.integration_name(defaultnilan_nabto)deploy.restart_after_deploy(trueto send restart command automatically)
Password auth notes:
deploy_ha_ssh.shusessshpasswhenha.auth.method=password.deploy_ha_ssh.batuses PuTTY tools (plink+pscp) whenha.auth.method=password.
After syncing:
- Restart Home Assistant.
- Go to
Settings -> Devices & Services. - Reload
Nilan CodeWizardintegration.
You will be asked for:
- Authorized email
- Gateway host/IP
- Gateway port (default
5570) - Optional device ID
- Scan interval in seconds
The integration creates:
sensor.nilan_status- sensors for available datapoints
- sensors for available setpoints (
min/max/stepas attributes) - number entities for writable setpoints (e.g. fan speed), where supported by the device model
timestamp_utc is exposed on the status sensor attributes.
custom_components/nilan_nabto: Home Assistant integrationcustom_components/nilan_nabto/vendor/genvexnabto: vendored Nabto protocol stack
- Integration version is tracked only in:
custom_components/nilan_nabto/manifest.json(version)
- Release notes are tracked in
CHANGELOG.md.
HACS is configured to track releases (not every commit) via hacs.json:
hide_default_branch: true
When you publish a new version:
- Update
custom_components/nilan_nabto/manifest.jsonversion. - Update
CHANGELOG.md. - Push to GitHub (and publish a release if you want release notes in HACS).
After this, HACS will show an available update to users on older versions.