• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to secondary sidebar
  • Skip to footer

У Павла!

  • Контроллеры
    • Arduino
      • Приборы
      • Музыка
      • Проекты Arduino
      • Уроки Arduino
      • Игры на Arduino
      • Роботы на Ардуино
      • FLProg
    • Одноплатные ПК
      • Orange pi
      • Raspberry pi
        • Raspberry pi pico
        • Raspberry pi server
        • Проекты Raspberry pi
    • ESP
      • ESP8266
        • NodeMCU
      • ESP32
      • M5stack
    • Другие контроллеры
      • STM32
  • Умный дом
    • Home Assistant
      • Автоматизации
    • Tuya
    • Bluetooth
    • ESPHome
    • Frigate
    • Telegram
    • Яндекс
  • ЧПУ
  • 3d печать
  • Об авторе

Добавление устройств работающих на частоте 433 МГц в Home Assistant.

17 марта, 2024

В статье я использовал USB SDR R828D: https://alii.pub/6wloa6?erid=2SDnjcWwxcx

Сервер Home Assistant был установлен на ТВ приставке: https://alii.pub/6ten7r?erid=2SDnjeHU55r

Пробовал работать с Уличным датчиком температуры и влажности 433 mhz: https://alii.pub/6x057r?erid=2SDnje9xFDS

Датчик открытия двери 433mhz: https://alii.pub/6×0594?erid=2SDnjePJ8kY

 

Всяких сенсоров таких как датчик температуры ила датчик открытия двери работающих по радио на частоте 433 мегагерца довольно много и они существенно дешевле датчиков работающих например по Zigbee. Это потому, что в таких устройствах контроллеры используются, которые стоят гораздо дешевле, чем те же Zigbee.

Но используя дешевые 433mhz устройства мы теряем в безопасности, так как датчики 433mhz безопасными не назвать. По сути их могут соседи легко поймать и тоже принимать с них данные. Но используя например датчик температуры, мне вообще все равно поймают ли показания с него соседи или нет. Моей инфраструктуре умного дома это никак не повредит. Так, что будем считать его приемлемым для использования в умном доме.

Точно так-же и с датчиком открытия двери. Он охранный, отправляет показания, только когда дверь открывается (когда закрывается, он не шлёт ничего). И по сути это тоже мне никак не повредит, если этот сигнал перехватят.

Для снятия значений с датчиков по 433Mhz я использую USB свисток R828D & SDR. Он умеет работать на частотах от 25 МГц до 1760 МГц. Собственно как видите свисток очень крутой и с ним можно много делов наделать. Но мы будет в рамках этой статьи использовать только частоту 433Mhz, которая вписывается в этот диапазон.

При подключении этого свистка к серверу (например в моем случае это тв бокс rk3318 H96Max), у меня на usb 2.0 интерфейсе не запустился он. Ему не хватило питания. А вот в USB 3.0 все довольно отлично запустилось. По этому подключаю его к USB3.0. И когда будете делать самостоятельно, то обратите на это внимание, может не взлететь… Ему нужно хорошее USB питание, он прожерливый.

Но и на USB 2.0 будет конечно тоже работать на компьютерах. Просто в USB 3.0 обычно питание посерьезнее.

 

Установка Дополнения в Home Assistant для работы с SDR:

Дополнение называется “SDR to Home Assistant”.  ЧТоб его добавить, нам необходимо добавить в репозитории дополнений в Home Assistant новую ссылку.

Для этого заходим в Настройки->Дополнения->магазин дополнений-> троеточие вверху -> Репозитории и добавляем туда репозиторий https://github.com/thejeffreystone/hassio_addons

После этого перезагружаем Home Assistant и в Магазине дополнений появится новый аддон под названием “SDR to Home Assistant”. Берем и устанавливаем его.

После установки аддона, нам нужно выставить верные параметры ему перед запуском. Мои настройки примерно такие:

Ну и давайте пробежимся по настройкам основным. Первое что нужно сразу понимать, это то, что аддон работает с MQTT и все данные будет передавать по MQTT, по этому нужно здесь указать  настройки MQTT сервера.

mqtt_host – тут указывается ip адрес вашего Mqtt сервера, обычно это сам Home Assistant.

mqtt_port – тут указывается mqtt порт, стандартный порт 1883.

mqtt_user – тут указывается пользователь от mqtt сервера.

mqtt_password – тут указывается пароль от  mqtt сервера.

mqtt_topic – тут указывается топик куда будут отправляться данные этим дополнением.

frequency – тут указывается частота которую будет слушать SDR.

protocol – тут указывается тип устройства из списка: https://github.com/thejeffreystone/hassio_addons/blob/main/sdr2mqtt/PROTOCOLS.md . Например у меня датчик температуры типа inFactory. Этот тип датчика в списке 91, по этому я указываю -R 91.

Тип датчика можно определить программой rtl_433 из под линукс. Как пользоваться этой программой и получать показания датчиков в Linux я описывал в этой статье:

Работа с устройствами умного дома работающими по радио 443 mhz

В общем сканируем все датчики – если не знаете их заранее и потом в графе protocol по порядку их прописываете через пробел.

Остальные настройки оставляем по умолчанию, единственное обратите внимание на галочку auto_discovery – ее лучше отключить, или включить только во время первого прилёта показаний с датчиков. Так как параметр auto_discovery автоматически добавит сенсор в Home Assistant, а так как SDR находится в постоянном сканировании сети, то может понадобавлять кучу лишнего.

Так-же обратите внимание, что порт ненужно указывать к которому подключен USB SDR, он программой rtl_433 находится автоматически.

Собственно после заполнения всех полей в конфигурации аддона, запускаем его.

Получение данных по MQTT:

Для первых испытаний я взял датчик температуры и открыл программу MQTT Explorer, для того, чтоб понять что прилетает в MQTT.

Ну собственно и получил вот такой результат:

Собственно тут видно, что данные прилетели на сервер 192.168.31.146 в топик rtl_433 в подтопик inFactory-TH, и тут видим данные протокола, модель, id, канал (их 3 у датчика), Статус батареи, Температура, влажность и так далее.

А с этого скрина видно в какие топики какие данные прилетают и из него видно, что нам нужно в Home Assistant слушать топик rtl_433/inFactory-TH/135/1 чтоб получать данные:

 

Зная куда прилетают данные, в сервере Home Assistant, мы легко сможем в блоке MQTT создать сенсор.


mqtt:
  sensor:
    #433MHz
#Показания температуры
    - name: "temperature_433"
      unit_of_measurement: "°C"
      device_class: "temperature"
      state_class: "measurement"
      state_topic: "rtl_433/inFactory-TH/135/1/temperature_C"

#Показания влажности
    - name: "humidity_433"
      unit_of_measurement: "%"
      device_class: "humidity"
      state_class: "measurement"
      state_topic: "rtl_433/inFactory-TH/135/1/humidity"
      
       

Ну и по итогу у нас появятся 2 сенсора temperature_433 и humidity_433

На этом пожалуй все. Надеюсь Вам было понятно и интересно.

Послесловие.

Единственное, что хотелось бы сказать, это причина, почему я этим занялся (я имею ввиду раскуриванием 433mhz). Дело в том, что хороших датчиков температуры уличных мало для умного дома. Всякие Zigbee как-то не стабильно работают, про wi-fi и речи нет. А хотелось бы беспроводной хороший датчик температуры.

Ну вот существуют метеостанции например как эта: https://alii.pub/6x07fh?erid=2SDnjeJsWqE FanJu FJ3365. И в ней как-раз используется внешний уличный датчик температуры, который вполне себе продаётся отдельно и его можно докупить дополнительным для работы с этой метеостанцией. Вот я и решил проверить как такой датчик будет вести себя на улице.

Следующей зимой проверим.

Primary Sidebar

Поиск

Новые записи

  • Автоматизация перезагрузки устройства по команде Ping.
  • Разблокирование и добавление шлюза Xiaomi gateway 3 в Home Assistant для управления Bluetooth устройствами из экосистемы Xiaomi Home (mihome)
  • Интеграция для локального управления (без интернета) ик пультом Tuya работающим по wifi из Home Assistant
  • Транслируем показания с Уличного Bluetooth Датчика температуры по BTHome на дисплей датчика температуры XIaomi LYWSD03MMC
  • Заставляем Bluetooth датчики температуры tuya и xiaomi отправлять данные по Zigbee в Home Assistant.

Официальный YouTube Канал M5Stack:

Подписывайтесь на Телеграм канал

https://t.me/ypavla

Подписаться на YouTube!

Secondary Sidebar




Подписывайтесь на Telegram Канал!

У Павла!

Footer

Copyright_У Павла! © 2025 ·