Рыбачим в эфире: данные с метеостанции, номер борта, соседский звонок и другие интересные находки - «Умные Решения» » Умный Дом и решения
Рыбачим в эфире: данные с метеостанции, номер борта, соседский звонок и другие интересные находки - «Умные Решения»

Новинки / Производитель / Умные Решения

Рыбачим в эфире: данные с метеостанции, номер борта, соседский звонок и другие интересные находки - «Умные Решения»

  • Наталья
  • 13-фев-2024, 10:00
  • 0 комментариев
  • 1 989 просмотров

Наша тестовая установка
Запускаем rtl_433 -F json

Практический опыт

Мы ограничились прослушиванием популярной частоты 433 МГц.

Сначала нам удалось поймать сигнал датчиков температуры и давления в шинах соседского автомобиля Toyota. Польза околонулевая.

Затем удалось найти соседский уличный датчик температуры и влажности, а это уже полезно. Можно сэкономить на собственном ? Затем мы продолжили поиски и поймали еще несколько.

Команда 

rtl_433 -F json

ловит такие данные с соседских датчиков

{"time" : "2024-01-20 19:02:07", "model" : "inFactory-TH", "id" : 17, "channel" : 3, "battery_ok" : 1, "temperature_F" : 14.500, "humidity" : 20, "mic" : "CRC"}
{"time" : "2024-01-20 19:02:12", "model" : "Nexus-T", "id" : 28, "channel" : 1, "battery_ok" : 1, "temperature_C" : -14.000}
{"time" : "2024-01-20 19:02:30", "model" : "Nexus-TH", "id" : 251, "channel" : 1, "battery_ok" : 1, "temperature_C" : -13.500, "humidity" : 14}
{"time" : "2024-01-20 19:02:42", "model" : "Solight-TE44", "id" : 151, "channel" : 1, "temperature_C" : -14.100, "mic" : "CRC"}
{"time" : "2024-01-20 19:02:39", "model" : "Hideki-TS04", "id" : 15, "channel" : 1, "battery_ok" : 1, "temperature_C" : -13.000, "humidity" : 5, "mic" : "CRC"}
{"time" : "2024-01-20 19:03:39", "model" : "Solight-TE44", "id" : 151, "channel" : 1, "temperature_C" : -14.100, "mic" : "CRC"}
{"time" : "2024-01-20 21:06:15", "model" : "Fineoffset-WH2", "id" : 59, "temperature_C" : -14.000, "mic" : "CRC"}
{"time" : "2024-01-20 20:50:30", "model" : "Hyundai-VDO", "type" : "TPMS", "id" : "21c154c2", "state" : 48, "flags" : 10, "repeat" : 1, "pressure_kPa" : 226.875, "temperature_C" : -16.000, "maybe_battery" : 1, "mic" : "CRC"}
{"time" : "2024-01-20 19:04:07", "model" : "TFA-TwinPlus", "id" : 57, "channel" : 1, "battery_ok" : 1, "temperature_C" : -13.700, "humidity" : 20, "mic" : "CHECKSUM"}

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

#!/bin/bash

HOST=127.0.0.1

wirenBoardPubHeaderMQTT() {
local model=$1
local name=$2
mosquitto_pub -h $HOST -r -t "/devices/rtl-${model}/meta/name" -m "${name}"
mosquitto_pub -h $HOST -r -t "/devices/rtl-${model}/meta/driver" -m "gateRTL433-MQTT.sh"
}
# однократный вызов при старте
wirenBoardPubHeaderMQTT "sdr" "Radio Meteo/RTL_433"
wirenBoardPubHeaderMQTT "Hideki-Wind" "Radio My Weather"

# Функция для отправки данных в MQTT
wirenBoardPubMQTT() {
local filename="gateRTL433-MQTT_log_output_$(date +'%Y%m%d').txt"
local model=$1
local param=$2
local value=$3
local type=$4
if [ "$value" != "null" ]; then
echo -e "$(date +'%Y%m%d_%H%M%S') ${model} ${param}=${value}" | tee -a $filename
mosquitto_pub -h $HOST -r -t "/devices/rtl-${model}/controls/${param}/meta/type" -m "$type"
mosquitto_pub -h $HOST -r -t "/devices/rtl-${model}/controls/${param}/meta/readonly" -m "1"
mosquitto_pub -h $HOST -r -t "/devices/rtl-${model}/controls/${param}" -m "$value"
# else
# echo "$model / $param / $type is null !!!"
fi
}

# Функция для обработки данных
process_weather_wind() {
local data=$1
# echo $data
model=$(echo $data | jq -r '.model')
if [[ $model == "Hideki-Wind" ]]; then
# Извлекаем и отправляем каждый параметр
temperature=$(echo $data | jq -r '.temperature_C')
wind_avg_km_h=$(echo $data | jq -r '.wind_avg_km_h')
wind_max_km_h=$(echo $data | jq -r '.wind_max_km_h')
wind_approach=$(echo $data | jq -r '.wind_approach')
wind_dir_deg=$(echo $data | jq -r '.wind_dir_deg')
# Отправка данных в MQTT
wirenBoardPubMQTT "$model" "temperature_C" "$temperature" "temperature"
wirenBoardPubMQTT "$model" "wind_avg_km_h" "$wind_avg_km_h" "wind_speed"
wirenBoardPubMQTT "$model" "wind_max_km_h" "$wind_max_km_h" "wind_speed"
wirenBoardPubMQTT "$model" "wind_approach" "$wind_approach" "counter"
wirenBoardPubMQTT "$model" "wind_dir_deg" "$wind_dir_deg" "value"
fi
}

# Функция для обработки данных
process_data() {
local data=$1
#echo "Обработка данных: $data"
echo $data | grep "Hideki-Wind" > /dev/null
if [[ $? -eq 0 ]]; then
model=$(echo $data | jq -r '.model')
if [[ $model == "Hideki-Wind" ]]; then
process_weather_wind "$data"
fi
else
echo $data | grep temperature_C > /dev/null
if [[ $? -eq 0 ]]; then
model=$(echo $data | jq -r '.model')
temperature=$(echo $data | jq -r '.temperature_C')
wirenBoardPubMQTT "sdr" $model $temperature "temperature"
fi
fi
}
rtl_433 -C si -F json | while IFS= read -r line; do
process_data "$line"
done

Также удалось поймать сигнал с пролетающего самолета (на другой частоте) и сравнить его с картой Flightradar. Бортовой номер и скорость совпали, ура!

Еще одна польза — отладка сигналов Z-Wave и Lora в тестовой лаборатории, но мы пока только думаем над этим.

Вообще мы рекомендуем заглянуть в таблицу, где приведен список программ, которые работают с RTL-SDR.

За выходные удалось «наловить» данные с нескольких термометров

Дополнительные изображения

Сравнили температуру соседских датчиков и своего 1-Wire (оранжевый)
Поймали сигнал с борта, проверили по Flightradar
Сведения с нескольких соседских датчиков температуры и влажности по команде rtl_433 -С si.  Параметр -C si необходим для переключения Фаренгейтов в Градусы
Поймали еще дверной звонок


Подключаем метеостанцию

Несколько лет назад родственнику была подарена старая метеостанция с уличным блоком, измеряющим направление и скорость ветра. Пришлось на время «вернуть на родину». Думали придется хакать протокол, но все заработало из коробки. Конечно, возможности уступают метеостанции «Ласточка» в предыдущем обзоре, но для дома польза будет.

Уличный блок

Дополнительные изображения

Добавили поддержку внешнего блока, можно посмотреть историю скорости ветра, например
Добавили виджет метеостанции (вверху)
График средней скорости ветра
Графики средней и максимальной скорости ветра


Поиск свободных радиоканалов

Еще один полезный сценарий — поиск свободных радиоканалов с целью пообщаться с тусовкой друзей. В нашем случае, например, обычно собирается тусовка на 100+ раций.

Здесь мы пошли на небольшой чит и воспользовались ПК, поскольку нужен был графический вывод. На контроллере Wiren Board придется довольствоваться текстовой информацией, которую можно вывести в файл и потом обработать, например.

Ниже приведен скриншот программы gqrx, которую можно установить командой:

sudo apt install gqrx-sdr

По горизонтали частота в районе 433 МГц, по вертикали — время: на скриншоте показаны 10 минут. Диапазон LDP, показаны каналы от 1 до 69. Желтые и красные — это шумы: они есть почти на всех каналах. Немного поменьше шума на 1, 2 и 68, 69 каналах. Тональный субкод весьма удобен для фильтрации шумов.

Поиск свободных радиоканалов (скриншот на ПК)

Есть режим, помогающий разработчикам проектировать свои устройства. Через SSH на контроллере можно запустить утилиту командой:

rtl_433 -A

причем утилита к каждому распознанному цифровому пакету добавляет ссылку на сайт, где можно посмотреть подробную развертку сигнала. Ниже приведен пример скриншота сайта.

Подробная развертка сигнала (скриншот сайта на ПК)

Ретранслятор FM-радио

Еще один сценарий, который мы проверили — ретранслятор FM-радио в браузер по сети. Вдохновила статья, где приведены все команды. Чтобы подобрать нужные команды, пришлось развлекаться. Вот они:

rtl_fm -f 102.0M -M fm -s 170k -A fast -r 32k -l 2 -E deemp | play -t raw -r 32k -es -b 16 -c 1 -V1 -

Затем достаточно набрать IP-адрес и порт контроллера в браузере, после чего можно будет слушать радио. Кроме того, можно установить в контроллер Wiren Board звуковую карту USB и через нее выводить звук на колонки.

Заключение

Как видим, подключить различное оборудование на 433 Мгц к своей домашней автоматизации  легко и просто. И крупные бюджеты не нужны, особенно если под рукой есть контроллер на Linux. Для нас подобный широкополосный радиоприемник — больше игрушка. Но можно найти и практическое применение: мы, например, получили данные с метеостанции, датчика температуры и давления в шинах, дверного звонка. 

Возможно, вы подскажете какие-либо практически применения в комментариях? Или поделитесь своим опытом?

Приходите к нам на выставку и конференцию WBCE 2024, где можно пообщаться с разработчиками оборудования Wiren Board, посетить производство с экскурсией, а также посмотреть решения партнёров.

Цитирование статьи, картинки - фото скриншот - Rambler News Service.
Иллюстрация к статье - Яндекс. Картинки.
Есть вопросы. Напишите нам.
Общие правила  поведения на сайте.
Наша тестовая установка Запускаем rtl_433 -F json Практический опыт Мы ограничились прослушиванием популярной частоты 433 МГц. Сначала нам удалось поймать сигнал датчиков температуры и давления в шинах соседского автомобиля Toyota. Польза околонулевая. Затем удалось найти соседский уличный датчик температуры и влажности, а это уже полезно. Можно сэкономить на собственном ? Затем мы продолжили поиски и поймали еще несколько. Команда ловит такие данные с соседских датчиков Для удобства предлагаем код, который «ловит» метеоданные с соседских датчиков. Также удалось поймать сигнал с пролетающего самолета (на другой частоте) и сравнить его с картой Flightradar. Бортовой номер и скорость совпали, ура! Еще одна польза — отладка сигналов Z-Wave и Lora в тестовой лаборатории, но мы пока только думаем над этим. Вообще мы рекомендуем заглянуть в таблицу, где приведен список программ, которые работают с RTL-SDR. За выходные удалось «наловить» данные с нескольких термометров Дополнительные изображения Сравнили температуру соседских датчиков и своего 1-Wire (оранжевый) Поймали сигнал с борта, проверили по Flightradar Сведения с нескольких соседских датчиков температуры и влажности по команде rtl_433 -С si. Параметр -C si необходим для переключения Фаренгейтов в Градусы Поймали еще дверной звонок Подключаем метеостанцию Несколько лет назад родственнику была подарена старая метеостанция с уличным блоком, измеряющим направление и скорость ветра. Пришлось на время «вернуть на родину». Думали придется хакать протокол, но все заработало из коробки. Конечно, возможности уступают метеостанции «Ласточка» в предыдущем обзоре, но для дома польза будет. Уличный блок Дополнительные изображения Добавили поддержку внешнего блока, можно посмотреть историю скорости ветра, например Добавили виджет метеостанции (вверху) График средней скорости ветра Графики средней и максимальной скорости ветра Поиск свободных радиоканалов Еще один полезный сценарий — поиск свободных радиоканалов с целью пообщаться с тусовкой друзей. В нашем случае, например, обычно собирается тусовка на 100 раций. Здесь мы пошли на небольшой чит и воспользовались ПК, поскольку нужен был графический вывод. На контроллере Wiren Board придется довольствоваться текстовой информацией, которую можно вывести в файл и потом обработать, например. Ниже приведен скриншот программы gqrx, которую можно установить командой: По горизонтали частота в районе 433 МГц, по вертикали — время: на скриншоте показаны 10 минут. Диапазон LDP, показаны каналы от 1 до 69. Желтые и красные — это шумы: они есть почти на всех каналах. Немного поменьше шума на 1, 2 и 68, 69 каналах. Тональный субкод весьма удобен для фильтрации шумов. Поиск свободных радиоканалов (скриншот на ПК) Есть режим, помогающий разработчикам проектировать свои устройства. Через SSH на контроллере можно запустить утилиту командой: причем утилита к каждому распознанному цифровому пакету добавляет ссылку на сайт, где можно посмотреть подробную развертку сигнала. Ниже приведен пример скриншота сайта. Подробная развертка сигнала (скриншот сайта на ПК) Ретранслятор FM-радио Еще один сценарий, который мы проверили — ретранслятор FM-радио в браузер по сети. Вдохновила статья, где приведены все команды. Чтобы подобрать нужные команды, пришлось развлекаться. Вот они: Затем достаточно набрать IP-адрес и порт контроллера в браузере, после чего можно будет слушать радио. Кроме того, можно установить в контроллер Wiren Board звуковую карту USB и через нее выводить звук на колонки. Заключение Как видим, подключить различное оборудование на 433 Мгц к своей домашней автоматизации легко и просто. И крупные бюджеты не нужны, особенно если под рукой есть контроллер на Linux. Для нас подобный широкополосный радиоприемник — больше игрушка. Но можно найти и практическое применение: мы, например, получили данные с метеостанции, датчика температуры и давления в шинах, дверного звонка. Возможно, вы подскажете какие-либо практически применения в комментариях? Или поделитесь своим опытом? Приходите к нам на выставку и конференцию WBCE 2024, где можно пообщаться с разработчиками оборудования Wiren Board, посетить производство с экскурсией, а также посмотреть решения партнёров.


Комментарии (0)
img
Как продвинуть на рынке новую систему Умного Дома - «Умный Дом и решения»

За прошедший год я три раза общался с разработчиками новых систем Умного Дома в России. Одну из систем мне удалось посмотреть лично: там собственное

Категории сайта
Разное

Производитель и новинки производства

Это не только возможность управлять лампочкой со смартфона, а слаженная, незаметная для Вас, работа всех систем дома как инструментов в оркестре.

       89a39215
img
Новинки / Xiaomi / Умные Решения
Xiaomi выпустила робот-пылесос с мощным всасыванием и мойкой углов - «Умный Дом и решения»

Xiaomi выпустила новый робот-пылесос Mijia Robot Vacuum-Mop 5C. Устройство отличается возможностью качественной уборки в углах помещения. Ключевые

img
Производитель / Новинки / Xiaomi / Умные Решения
Xiaomi выпустила европейскую версию нового датчика температуры и влажности - «Умный Дом и решения»

Несколько месяцев назад Xiaomi выпустила новый компактный датчик температуры и влажности Temperature and Humidity Monitor 3 Mini в Китае. Сейчас

img
Производитель / Xiaomi / Новинки / Смарт.ТВ / Умные Решения
Xiaomi выпустила камеру наблюдения с двумя 5-мегапиксельными объективами - «Умный Дом и решения»

Компания Xiaomi выпустила новую камеру Smart Camera 4 Dual-Camera Edition. Устройство продолжает линейку продвинутых камер наблюдения вслед за

img
Смарт.ТВ / Производитель / Умные Решения
GE представила два умных диммера с поддержкой Matter - «Умный Дом и решения»

GE Lighting обновила линейку умных выключателей Cync: в продаже появились два умных диммера с Matter-подключением — Keypad Dimmer Smart Switch и

img
Производитель / Новинки / Умные Решения
Компания Kwikset выпустила три модели умных замков с поддержкой Matter - «Умный Дом и решения»

Компания Kwikset расширяет свою линейку смарт-замков и объявила о запуске трех новых моделей с поддержкой Matter: Halo Select Plus, Aura Reach и

img
Новинки / Яндекс / Sprut.hub / Производитель / Умный Дом и решения
У Wirenboard появилась прямая интеграция с Алисой - «Умный Дом и решения»

Очень классная новость: теперь настроить интеграцию Wirenboard с экосистемой Умного Дома Яндекса можно без стороннего программного обеспечения,

Top.Mail.Ru