Nuki · Bluetooth · KNX · Home Assistant · 7 мин чтения

Nuki Smart Lock — интеграция с KNX через Home Assistant

Локальный API, время отклика менее 100 мс, гостевые коды через автоматизацию и полный журнал аудита — как подключить замки Nuki к вашей системе KNX без зависимости от облака.

Линейка Nuki — какая модель для какого проекта

Nuki производит интеллектуальные замки для модернизации — они устанавливаются поверх существующего поворотного механизма дверного цилиндра без его замены. Правильная модель зависит от требований к подключению и наличия дверного открывателя (домофона) для интеграции.

Nuki Smart Lock 4.0 Pro

Рекомендуется для интеграции с KNX
  • Встроенный Wi-Fi (2,4 ГГц) и Thread — мост не нужен для доступа к локальной сети
  • Мост Nuki по-прежнему требуется для локального HTTP API (режим прямого Wi-Fi использует только облако)
  • Matter через Thread — протокол для будущих технологий
  • Автоблокировка, журнал активности, DoorSense (датчик открытия/закрытия двери)
  • Батареи: 8× AA щелочные, около 6 месяцев типичного использования

Nuki Smart Lock 3.0

Бюджетный вариант — требуется мост
  • Только Bluetooth — требуется мост Nuki для доступа к локальной сети/API
  • Мост подключается через Wi-Fi и преобразует Bluetooth в локальную сеть
  • Проверенная надежность — большая база установок по всей Европе
  • Немного ниже стоимость, чем у 4.0 Pro, если мост уже есть
  • Батареи: 4× AA щелочные

Nuki Combo (Lock + Opener)

Для домов с домофоном
  • Включает Nuki Opener — крепится на домофон, открывает входную дверь
  • Opener связывается по Bluetooth с Smart Lock
  • Поддерживает открытие по звонку: звонок в дверь → Opener автоматически открывает подъезд
  • Совместим с большинством аналоговых домофонов (BUS и 2-проводные)
  • Идеально для квартиры: одной кнопкой открываете и подъезд, и квартиру

Nuki Bridge — локальный API-шлюз

Nuki Bridge — это компактное устройство (вставляется в розетку, Wi-Fi), которое связывает Bluetooth от замка Nuki с локальной сетью. Он предоставляет HTTP API в локальной сети, позволяя напрямую управлять замком из Home Assistant или любого LAN-клиента — для команд блокировки/разблокировки интернет не требуется.

Порт локального API
8080 (HTTP)
Аутентификация
API-токен (создается в приложении Nuki)
Поддержка вебхуков
Да — отправка событий в HA при изменении состояния
Дальность Bluetooth
~10 м до Smart Lock
Питание
Сетевой адаптер (постоянно включен)
Макс. замков на один Bridge
3 устройства Nuki
Обновления прошивки
OTA через приложение Nuki
Документация локального API
developer.nuki.io/bridge-api

Bridge должен находиться в зоне действия Bluetooth замка. Для больших планировок тщательно продумайте расположение Bridge — стены и металлические двери значительно ослабляют сигнал Bluetooth. Bridge поддерживает постоянное Bluetooth-соединение с замком, поэтому команды передаются почти мгновенно без повторной синхронизации.

Сравнение времени отклика: локальный API против облачного

МетодПутьТипичная задержкаАвтономность
Локальный HTTP API BridgeHA → Bridge (LAN) → Bluetooth → Замок~50–100 мсПолная — интернет не нужен
Облачный API NukiHA → облако → интернет → Bridge → Bluetooth → Замок~1.5–4 сНет — не работает без интернета
Приложение Nuki (вручную)Смартфон → Bluetooth → Замок~200–500 мсПолная — прямое Bluetooth-соединение
Matter (4.0 Pro)Умный дом → Thread border router → Замок~80–150 мсПолная — локальная сетка Thread

Всегда используйте локальный Bridge API для интеграции с KNX

Интеграция через облачный API означает, что любой сбой интернета (перезагрузка роутера, проблемы провайдера, обслуживание серверов Nuki) нарушит ваши сценарии контроля доступа KNX. Локальный Bridge API оставляет всё на месте — панель KNX и сервер HA управляют замком независимо от интернет-соединения.

Интеграция Home Assistant Nuki — настройка и конфигурация

Официальная интеграция Home Assistant Nuki подключается через локальный HTTP API Bridge. Она обеспечивает обновление состояния в реальном времени через вебхуки — Bridge отправляет POST в HA сразу при любом изменении состояния замка, без опроса.

Home Assistant — локальная интеграция Nuki Bridge

# Settings → Devices & Services → Add Integration → Nuki
# (or configuration.yaml for manual setup)

nuki:
  host: 192.168.1.90     # Nuki Bridge LAN IP (set static in router)
  token: !secret nuki_bridge_token
  port: 8080

# Bridge webhook registration (auto by HA integration)
# Bridge will POST to http://HA_IP:8123/api/webhook/nuki_<id>
# on every lock/unlock/door_open event

# Resulting entities in HA:
# lock.front_door         — lock/unlock service
# binary_sensor.front_door_door     — door open/closed (DoorSense)
# sensor.front_door_battery         — battery level %
# sensor.front_door_last_action     — last action description

После добавления интеграции HA создает сущность замка, датчика двери (если установлен DoorSense) и датчика батареи. Сущность замка поддерживает сервисы lock, unlock и unlatch. Обновления состояния приходят через вебхук в течение ~100 мс после физического срабатывания замка.

Путь интеграции KNX — двунаправленное управление

Home Assistant с установленной интеграцией KNX действует как мост между групповыми адресами KNX и сервисами замка Nuki. Работает в обоих направлениях: KNX управляет Nuki, а изменения состояния Nuki обновляют групповые адреса KNX.

automations.yaml — двунаправленный мост KNX ↔ Nuki

# KNX scene → Nuki lock
automation:
  - alias: "KNX Departure Scene → Nuki lock"
    trigger:
      platform: state
      entity_id: binary_sensor.knx_departure_scene  # GA 3/0/1
      to: "on"
    action:
      - service: lock.lock
        entity_id: lock.front_door
      - service: knx.send
        data:
          address: "6/1/0"   # lock status feedback GA
          payload: [1]
          type: "binary"

  - alias: "KNX Arrival Pushbutton → Nuki unlock"
    trigger:
      platform: state
      entity_id: binary_sensor.knx_arrival_button   # GA 3/0/2
      to: "on"
    action:
      - service: lock.unlock
        entity_id: lock.front_door

# Nuki state change → update KNX group address
  - alias: "Nuki state → KNX feedback"
    trigger:
      platform: state
      entity_id: lock.front_door
    action:
      - service: knx.send
        data:
          address: "6/1/0"
          payload: >
            {{ [1] if trigger.to_state.state == 'locked' else [0] }}
          type: "binary"

# configuration.yaml — expose KNX GAs for lock control
knx:
  binary_sensor:
    - name: "KNX Departure Scene"
      address: "3/0/1"
    - name: "KNX Arrival Button"
      address: "3/0/2"
  switch:
    - name: "Nuki Lock Status KNX"
      address: "6/1/0"
      state_address: "6/1/1"

KNX → Nuki

Любая телеграмма KNX на назначенный групповой адрес запускает автоматизацию HA, которая вызывает сервис lock.lock или lock.unlock на сущности Nuki. Работает от кнопки KNX, сцены, расписания или логического блока.

Nuki → KNX

Любое изменение состояния Nuki (блокировка/разблокировка из приложения, клавиатуры или физическим ключом) запускает автоматизацию HA, которая отправляет телеграмму KNX на групповой адрес статуса. Это синхронизирует визуализацию и логику KNX с фактическим состоянием замка.

Гостевой доступ — временные коды через REST API

Nuki поддерживает временные коды доступа (клавиатура или приложение). Home Assistant может создавать их автоматически через REST API Bridge Nuki — полезно для арендной недвижимости, сервисных техников или временного персонала.

Автоматизация HA — создание временного кода доступа Nuki

# rest_command to create Nuki auth (requires Nuki Web API token)
rest_command:
  nuki_create_auth:
    url: "https://api.nuki.io/smartlock/{{ nukiId }}/auth"
    method: POST
    headers:
      Authorization: "Bearer {{ secrets.nuki_web_token }}"
      Content-Type: "application/json"
    payload: >
      {
        "name": "{{ name }}",
        "type": 13,
        "allowedFromDate": "{{ from_date }}",
        "allowedUntilDate": "{{ until_date }}",
        "allowedWeekDays": 127,
        "code": {{ code }}
      }

# Trigger from HA script called by KNX or calendar event
script:
  create_guest_code:
    sequence:
      - service: rest_command.nuki_create_auth
        data:
          nukiId: "{{ states('sensor.nuki_lock_id') }}"
          name: "Guest {{ now().strftime('%Y-%m-%d') }}"
          from_date: "{{ now().isoformat() }}"
          until_date: "{{ (now() + timedelta(days=3)).isoformat() }}"
          code: "{{ range(1000, 9999) | random }}"
      - service: notify.mobile_app
        data:
          message: "Guest code created for 3 days"

Для локальных установок без Nuki Web API гостевые коды можно управлять напрямую в приложении Nuki владельцем дома. Интеграция HA не предоставляет локальное управление кодами клавиатуры — для этого требуется облачный API Nuki. Для полностью локальной работы используйте временные релейные выходы KNX или расписания доступа на уровне панели KNX.

Примеры использования

"Departure" KNX scene — lock + arm Ajax alarm

Resident presses "Departure" KNX pushbutton at exit. KNX logic simultaneously: (1) sends telegram to HA → HA locks Nuki, (2) sends KNX telegram to Ajax alarm integration → alarm armed. Confirmation: Nuki state telegram returns locked → KNX display indicator turns red. Total sequence time: ~300ms.

Кнопка прибытия — открытие и сцена приветствия

Кнопка KNX у входной двери (или считыватель отпечатков) отправляет телеграмму открытия → HA открывает Nuki за ~100 мс. Одновременно KNX активирует сцену «Приветствие»: свет в прихожей, температура в режим комфорта, жалюзи в последнее положение. Дверь открывается, DoorSense подтверждает → HA записывает событие входа.

RFID-карта гостиничного номера → KNX → HA → открытие Nuki

Гость вставляет RFID-карту в считыватель KNX у двери номера. KNX-телеграмма на групповой адрес → автоматизация HA проверяет срок действия → открывает Nuki на двери номера (установлен изнутри). Сцена приветствия активируется через KNX: свет на 80%, температура 22°C, приветственная музыка. Извлечение карты через 30 с запускает блокировку с задержкой.

Логирование доступа — InfluxDB и HA Logbook

Каждое действие замка Nuki (кто, что, когда) доступно в Home Assistant как состояние датчика с атрибутами. Для аудита безопасности все события записываются в InfluxDB для долгосрочного хранения и запросов.

configuration.yaml — логирование событий Nuki в InfluxDB

influxdb:
  host: 192.168.1.100
  port: 8086
  database: home_assistant
  username: !secret influx_user
  password: !secret influx_pass
  include:
    entities:
      - lock.front_door
      - binary_sensor.front_door_door
      - sensor.front_door_last_action
      - sensor.front_door_battery

# HA Logbook also records all lock state changes automatically
# Access via HA → Logbook → filter by lock.front_door

# Query example in InfluxDB / Grafana:
# SELECT "value" FROM "lock.front_door"
# WHERE time > now() - 30d
# GROUP BY "action"
# → shows lock/unlock count per day over 30 days

The HA Logbook provides a human-readable event log accessible via the web UI. For compliance or insurance purposes, InfluxDB with Grafana provides query-able historical data — you can answer questions like "who unlocked the apartment door on Tuesday at 14:30?" or "how many times was the lock accessed last month?". Nuki also retains the last 100 events in its own activity log (visible in the Nuki app).

Интеграция контроля доступа в вашу KNX-панель

Мы предварительно подключаем выходы контроллера двери, шину считывателя RFID и релейные контакты видеодомофона в сертифицированные CE панели, готовые к подключению на объекте.

Запросить предложение →
Загрузка ...
Наверх