Інтеграція через MQTT

Будь-який брокер. Будь-яка платформа, що говорить через MQTT.

Car 2 Home є повноцінним клієнтом MQTT. Кожен датчик, який ви обрали для експорту, від стандартного OBD і розширених PID до обчислюваних метрик, GPS, TPMS і стану діагностики, публікується у ваш брокер разом із показниками Vehicle Hub: прогнозом заправки, обслуговуванням і нагадуваннями, яким настає термін, підсумками та витратою за місяць. Показання й хаб прив'язуються до конкретної машини в будь-якому форматі публікації.

Якщо у вас уже працює Mosquitto, EMQX, HiveMQ чи інший брокер, до робочої зв'язки лишається заповнити кілька полів. Наші сервери для цього не потрібні: телеметрія йде просто із застосунку у ваш брокер.


MQTT проти нативної інтеграції з Home Assistant

Обидва шляхи несуть ті самі датчики. Різниця в тому, що MQTT несе неперервний стан, а нативна інтеграція з Home Assistant несе ще й події (поїздка почалася, знайдено код несправності, різке прискорення). Якщо вам потрібен лише MQTT, ви отримаєте всі живі дані, але окремі моменти, на яких тримаються найцікавіші автоматизації, існують тільки в нативній інтеграції.

МожливістьMQTTНативна HA
Неперервний стан
Значення датчиків публікуються щойно змінюються.
✓✓
Події
trip_started, trip_ended, dtc_found, harsh_event, ecu_online/offline.
—✓
Команди в обидва боки
Home Assistant може попросити авто просканувати коди несправностей або наново оголосити датчики.
—✓

Як публікуються дані

  • Повідомлення автовизначення надсилаються з retain=true, тож передплатник, який під'єднався пізніше, одразу бачить каталог сутностей.
  • Лише зміни: значення надсилаються повторно тільки коли змінюються, за бажання з проріджуванням, щоб не завалювати брокер.
  • Перелічувані PID розшифровуються: тип палива "1" стає "Бензин", заданий коефіцієнт еквівалентності подається дробом і так далі. І сире, і зрозуміле людині значення доступні як атрибути.
  • Піктограми Material Design входять до повідомлень автовизначення, тож панелі одразу виглядають правильно.
  • Налаштовуваний QoS для кожного класу тем. Стан датчиків типово QoS 0, службові повідомлення використовують QoS 1.
  • TLS та автентифікація підтримуються, а облікові дані зберігаються у зв'язці ключів iOS або в Android Keystore.

Працює з

З усім, що говорить через MQTT, у парі з відповідним форматом публікації (див. вище). Регулярно перевіряємо на:

  • Home Assistant через інтеграцію MQTT з форматом Home Assistant Discovery (визначається автоматично).
  • OpenHAB та ioBroker з форматом Homie 4.0 (біндинг MQTT Homie, адаптер MQTT Client).
  • Hubitat, Node-RED, Domoticz з форматом простих тем.
  • Grafana з Telegraf або InfluxDB та власні панелі з форматом єдиного JSON.
  • ThingsBoard CE та Cloud з профілем ThingsBoard; мости ESPHome і будь-який саморобний споживач MQTT з простими темами чи єдиним JSON.

Формати публікації

Оберіть формат під свою платформу призначення. Типовий Home Assistant Discovery закриває HA одразу; для OpenHAB, Hubitat, звичайних панелей чи ThingsBoard перемкніться на один із решти.

Home Assistant Discovery

Типовий. Повідомлення автовизначення в homeassistant/<component>/<deviceId>/<sensor>/config. Авто саме з'являється в HA у розділі Налаштування → Пристрої та служби → MQTT. Неперервний стан публікується пакетом JSON у <prefix>/<deviceId>/state.

Homie 4.0

Відкритий стандарт з виявленням через топологію homie/<deviceId>/$nodes і метаданими $datatype / $unit / $format для кожної властивості, з повноцінним last will і повним життєвим циклом стану, тож брокер завжди знає, чи автомобіль на зв'язку. Рідна ціль для OpenHAB (прив'язка MQTT Homie) та ioBroker.

Прості теми

По одній темі MQTT на датчик, без виявлення. Корисне навантаження перемикається між сирим значенням (наприклад, 1850) і JSON виду {value, ts}. Працює з Hubitat, Node-RED, Domoticz і будь-яким звичайним споживачем MQTT.

Єдиний JSON

Усі датчики одним навантаженням JSON у налаштовувану тему, зі збереженням для тих, хто підписався пізніше. Добре пасує для Grafana, InfluxDB і Telegraf та власних панелей, яким зручніше підписатися на одну тему й розібрати повний знімок авто цілком.

ThingsBoard

Готовий профіль для ThingsBoard CE та ThingsBoard Cloud. Публікує телеметрію в v1/devices/me/telemetry, а статичні датчики (VIN, тип палива, CalID) у v1/devices/me/attributes. Токен доступу вводьте в поле Ім'я користувача, поле Пароль лишіть порожнім.

Формат можна змінити будь-коли в Налаштування → MQTT → Формат. Коли ви йдете з Home Assistant або Homie, застосунок пропонує прибрати збережені теми виявлення, що лишилися на брокері, щоб на боці споживача не було примарних пристроїв.


Як обрати брокер

Якщо власного ще немає, ось відправна точка:

  • Mosquitto: найпростіший варіант. Ставиться додатком до Home Assistant одним кліком або окремо в Docker. Для дому цього більш ніж досить.
  • EMQX: збирається в кластер, добре масштабується, має охайну вебпанель. Вартий уваги, коли пристроїв багато або потрібен докладний моніторинг.
  • HiveMQ: надійний комерційний чи хмарний варіант, якщо не хочете тримати все в себе.

Швидке налаштування

  1. 1. Брокер має бути доступний із телефона

    Або у домашній мережі, або через тунель (Tailscale, Cloudflare Tunnel, Nabu Casa). Щоб телеметрія йшла в реальному часі, MQTT має бути доступним і в дорозі.

  2. 2. Відкрийте Налаштування → MQTT у застосунку

    Вкажіть хост, порт, ім'я користувача, пароль і за потреби параметри TLS. Застосунок перевіряє з'єднання і показує стан одразу.

  3. 3. Підпишіться й дивіться, як приходять сутності

    Повідомлення автовизначення публікуються негайно. У Home Assistant пристрій з'являється в розділі Налаштування → Пристрої та служби → MQTT. У Node-RED чи будь-якому оглядачі MQTT пройдіться деревом тем під заданим вами префіксом.

Переглянути покроковий посібник з налаштування →

Matter, SmartThings, Google Home і Alexa

Плагін Matterbridge, який віддає датчики Car 2 Home як пристрої Matter, щоб вони з'являлися в Apple Home, Google Home, SmartThings та Alexa без Home Assistant посередині, уже написаний і проходить випробування. Ми поки що його не випускаємо: типи пристроїв у Matter недостатньо добре описують ті показання та події, які породжує автомобіль, і результат не дотягує до рівня, який нас влаштовує. Повідомимо, щойно це зміниться.