Home Assistant + KNX
The most powerful combination in residential smart home: KNX reliability as the hardware backbone, Home Assistant as the software brain. Here's exactly how to connect them.
Why KNX + Home Assistant?
KNX excels at rock-solid, deterministic hardware control: lights switch in <50ms, the bus keeps working without any server, and the ETS configuration is the single source of truth. But KNX logic is event-driven and relatively rigid — complex automations (if occupancy > 0 AND lux < 300 AND time is sunset ±30min AND guest mode is off) are awkward in ETS.
Home Assistant fills that gap: rich automation engine, 3,000+ integrations, dashboards, AI assistants, and easy connectivity to Alexa/Google/HomeKit. The KNX integration in HA is one of the oldest and most mature — maintained by core developers, not a community plugin.
KNX handles:
- • Physical switching (actuators)
- • DALI dimming scenes
- • Blind/shutter control
- • HVAC setpoints and fan speed
- • Time-based scenes in ETS
- • Alarm and safety outputs
Home Assistant adds:
- • Complex multi-condition automations
- • Weather-adaptive control
- • Occupancy-aware logic
- • Non-KNX device integration (Zigbee, CCTV, locks)
- • Dashboards and visualisation
- • Alexa / Google / HomeKit bridge
Hardware required
KNX IP Router / IP Interface
Required to connect HA to the KNX TP bus. IP Router is preferred (persistent tunnel, recovers from restart). MDT SCN-IP100.03 or Gira X3 recommended.
Home Assistant server
Raspberry Pi 4/5 (4GB min), NUC/mini-PC, or dedicated HA Yellow/Green hardware. Must run Home Assistant OS (HAOS) for full feature access. Runs 24/7.
Network infrastructure
HA server must be on same LAN as KNX IP Router. A Ubiquiti/Mikrotik switch with VLANs separating IoT from main network is best practice.
Optional: HA SkyConnect / Zigbee stick
If you want Zigbee devices (sensors, bulbs) in addition to KNX. Plug into HA server USB.
Setup: KNX integration in Home Assistant
Install Home Assistant OS
Flash HAOS to your hardware. Run onboarding wizard. Ensure HA is reachable at a static LAN IP (set in your router/switch DHCP reservation).
Add KNX integration
Settings → Integrations → + Add Integration → search "KNX". Select connection type: Tunneling (for IP Router/Interface). Enter KNX IP Router's IP address and port (default 3671). HA will auto-discover if on same subnet.
Configure individual address
KNX requires every device to have a unique individual address. Assign HA a free address: e.g. 1.1.255 (on line 1.1). This is configured in the KNX integration options.
Define entities in configuration.yaml
HA's KNX integration is configured via YAML (not UI). Create configuration.yaml entries for each KNX function you want to expose to HA:
Configure automation
Use HA's automation editor or YAML. Trigger on KNX entity state change. Add conditions (time, presence, weather). Call KNX service to send telegrams to KNX actuators.
Build Lovelace dashboard
Settings → Dashboards. Add Lovelace cards for lights (light entity), blinds (cover entity), thermostat (climate entity). Use custom cards via HACS for advanced visualisation.
Configuration examples
configuration.yaml — KNX light entity
knx:
light:
- name: "Living room ceiling"
address: "0/0/1" # switch group address
state_address: "0/0/2" # status feedback from actuator
brightness_address: "0/1/1" # dim value (0-255)
brightness_state_address: "0/1/2"
color_temperature_address: "0/2/1" # tunable white (DALI DT8)
color_temp_min: 2700 # warm white (Kelvin)
color_temp_max: 6500 # cool white (Kelvin)configuration.yaml — KNX cover (blind/shutter)
knx:
cover:
- name: "Bedroom blind"
move_long_address: "1/0/1" # up/down long press
stop_address: "1/0/2" # stop
position_address: "1/1/1" # absolute position (0-255)
position_state_address: "1/1/2" # current position feedback
travelling_time_down: 50 # seconds to fully closeautomation.yaml — occupancy-adaptive lighting
automation:
- alias: "Living room — adaptive lighting on occupancy"
trigger:
- platform: state
entity_id: binary_sensor.living_room_pir
to: "on"
condition:
- condition: numeric_state
entity_id: sensor.living_room_lux
below: 300
- condition: time
after: "07:00:00"
before: "23:00:00"
action:
- service: light.turn_on
target:
entity_id: light.living_room_ceiling
data:
brightness_pct: 80
color_temp_kelvin: 3000What to put in KNX vs what to put in HA
| Function | KNX (ETS) | Home Assistant |
|---|---|---|
| Button → light switch | ✅ Direct group address binding | Not needed |
| Button long press → dim | ✅ KNX dim telegram | Not needed |
| Scene recall (fixed scenes) | ✅ KNX scene GA → actuator | Can also use HA scene |
| Occupancy → adaptive light | Possible but complex | ✅ Much easier in HA |
| Blind position by sun angle | ❌ KNX can't read weather API | ✅ HA + Met.no/OpenWeather |
| Alarm arm/disarm → output | Limited (ETS logic) | ✅ HA alarm control panel |
| Energy monitoring + cost | ❌ | ✅ HA energy dashboard |
| Guest mode / holiday mode | Partial (bit flags) | ✅ HA input_boolean states |
| Voice control | ❌ | ✅ Alexa/Google/HomeKit bridge |
| CCTV motion → KNX output | ❌ | ✅ HA + Frigate NVR + KNX |
| Emergency lighting override | ✅ Safety-critical — always KNX | Never sole controller |
| Time programs (simple) | ✅ ETS time channels | Also possible in HA |
Our recommended HA server setup
Entry (apartment, ≤50 entities)
Raspberry Pi 5 (4GB) + 64GB A2 microSD + official PSU
Reliable for most residential projects. Add UPS if power cuts are common.
Standard (villa, 50-300 entities)
Intel N100 mini-PC (Beelink/ASUS NUC) + 16GB RAM + 256GB SSD
Silent, fast, reliable. Use UPS. Mount in panel or IT rack.
Premium (large project, 300+ entities + NVR)
Intel N305 / Ryzen 5 mini-PC + 32GB RAM + 2×SSD (HA + NVR storage)
Run HA + Frigate (NVR) + databases on separate drives.
KNX panel with Home Assistant pre-configured
We deliver the KNX panel, configure HA on your server, map all group addresses, set up automations and dashboards — complete turnkey.
Request a quote →