Перейти к содержанию

MQTT-шлюз для Redmond своими руками: различия между версиями

Материал из Wiki yaboard
Нет описания правки
Нет описания правки
 
(не показаны 4 промежуточные версии 2 участников)
Строка 1: Строка 1:
{{metadesc|{{PAGENAME}} | Подключение устройств redmond по MQTT без гейтвея и облака}}
{{metadesc|{{PAGENAME}} | Подключение к умному дому устройств Redmond по MQTT без гейтвея и без облака Редмонд! }}
__NOEDITSECTION__
__NOEDITSECTION__
__TOC__
__TOC__
Строка 16: Строка 16:
* Периодически отваливается и само облако Редмонд.
* Периодически отваливается и само облако Редмонд.


  Инструкция описывает самодельный шлюз размером со спичечный коробок со стоимостью около 300 рублей. При этом отпадает необходимость как в стандартных гейтвей-устройствах и программах, так и в самом облаке Redmond!
  Инструкция описывает самодельный шлюз размером со спичечный коробок со стоимостью около 300 рублей.  
Прошивка поддерживает до трех устройств redmond.
'''При этом отпадает необходимость как в стандартных гейтвей-устройствах и программах, так и в самом облаке Redmond!'''




Строка 24: Строка 26:
Нам понадобятся:
Нам понадобятся:


* Плата ESP32 с поддержкой Wi-Fi и Bluetooth ([https://aliexpress.ru/item/32864722159.html например, такая]; продавец не проплатил, можете найти аналоги )
* Плата ESP32 с поддержкой Wi-Fi и Bluetooth ([https://aliexpress.ru/item/32864722159.html например, такая]; продавец не проплатил)), можете купить  аналог в любом другом месте);
* Прошивка ([https://github.com/alutov/ESP32-R4sGate-for-Redmond ссылка на гит])
* Прошивка ([https://github.com/alutov/ESP32-R4sGate-for-Redmond ссылка на гит]);
* MQTT-сервер. Я, по традиции, использую ioBroker со своим MQTT, который уже работает в паре с Алисой. Можете выбрать любой удобный вариант.
* MQTT-сервер. Автор с удовольствием использует ioBroker со своим MQTT, который уже работает в паре с Алисой. Можете также выбрать любой удобный вариант;
* Прямые руки, чайник Редмонд, немного Windows
* Чайник Редмонд (в него вторгаться не нужно, он просто есть);
* Прямые руки, и немного минут в Windows.




Строка 33: Строка 36:




В интернете полно статей и видео о прошивке ESP32 (например, [http://wiki.amperka.ru/продукты:esp8266:esptool на Амперке].  
В интернете достаточно много статей и видео о порядке прошивки ESP32 (например, [http://wiki.amperka.ru/продукты:esp8266:esptool на Амперке]), чтобы не повторять эти инструкции здесь.


  На всякий случай сделайте бэкап родной прошивки платы.
  На этом шаге сделайте бэкап родной прошивки платы.


В git-репозитории из предыдущего пункта подробно описано, что нужно сделать. Если коротко:
В git-репозитории из предыдущего пункта подробно описан порядок действий. Если коротко, то:
# Подключить плату к ПК и прошить файл '''fr4sGate.bin''' с git, перезагрузить плату;
# Подключить плату к ПК и прошить файл '''fr4sGate.bin''' с git, перезагрузить плату;
# Создать Wi-Fi сеть (на ноуте/смартфоне) с именем '''r4s''' и паролем '''12345678''';
# Создать Wi-Fi сеть (на ноуте/смартфоне) с именем '''r4s''' и паролем '''12345678''';
Строка 46: Строка 49:
#* Параметры вашего MQTT-сервера.
#* Параметры вашего MQTT-сервера.


<gallery>
[[Файл:R4s settings.jpg | 600px | Вкладка 'Settings']]
Файл:R4s settings.jpg | Вкладка 'Settings'
</gallery>


После этого плата перезагрузится и подключится на ваш стандартный домашний Wi-Fi.


Находим адрес платы и снова переходим в веб-интерфейс.
Плата перезагрузится, и подключится на ваш стандартный домашний Wi-Fi. Находим адрес платы, и снова переходим в веб-интерфейс.


  У автора на последней версии прошивки чайник подключился к плате сам.  
  У автора на последней версии прошивки чайник подключился к плате сам.  


Порядок действий по инструкции:
Порядок действий по инструкции:
# Зажать кнопку на чайнике
# Зажать кнопку на чайнике;
# Отправить плату в перезагрузку (есть кнопка reboot в веб-интерфейсе).
# Отправить плату в перезагрузку кнопкой 'reboot' в веб-интерфейсе.


  Сколько держать - не уточняется. Можно поэкспериментировать с подключением в родном приложении (оценить, сколько жать и с какой интенсивностью).
  Сколько держать кнопку на чайнике - не уточняется. Можно поэкспериментировать с подключением в родном приложении (оценить, сколько жать и с какой интенсивностью).


В веб-интерфейсе на вкладке main можно увидеть, как плата обнаруживает чайник. На этой же вкладке расположены:
Теперь в веб-интерфейсе на вкладке main можно увидеть, как плата обнаруживает чайник. На этой же вкладке расположены:
* Версия прошивки;
* Версия прошивки;
* Uptime (время непрерывной работы) платы;  
* Uptime (время непрерывной работы) платы;  
Строка 69: Строка 69:
* Статус подключения к MQTT-серверу;
* Статус подключения к MQTT-серверу;


<gallery>
 
Файл:R4s main.jpg | Вкладка 'main'
[[Файл:R4s main.jpg | 600px | Вкладка 'main']]
</gallery>




Строка 79: Строка 78:
После того, как чайник определился и вы указали параметры MQTT, в '''iobroker/mqtt''' отобразятся стейты:
После того, как чайник определился и вы указали параметры MQTT, в '''iobroker/mqtt''' отобразятся стейты:


<gallery>
Файл:Iob mqtt r4s.jpg | Iob_mqtt_r4s
</gallery>


[[Файл:Iob mqtt r4s.jpg | 600px | Iob_mqtt_r4s]]


Mqtt топики для чайника (Из документации к прошивке)
 
MQTT-топики (они же iobroker-стейты) для чайника (из описания прошивки):


{| class="wikitable" style = "width:100%"
{| class="wikitable" style = "width:100%"
Строка 92: Строка 90:
|-
|-
| r4s/devaddr/'''cmd/state'''
| r4s/devaddr/'''cmd/state'''
| '''0/off/false''' выключение, '''1/on/true''' кипячение, '''2...100''' - кипячение и подогрев (число в градусах Цельсия)
| '''0/off/false''' выключение, <br>'''1/on/true''' кипячение, <br>'''2...100''' - кипячение и подогрев (число в градусах Цельсия)
|-
|-
| r4s/devaddr/'''cmd/heat_temp'''
| r4s/devaddr/'''cmd/heat_temp'''
| '''0''' выключение, '''1...100''' подогрев (число в градусах Цельсия)
| '''0''' выключение, <br>'''1...100''' подогрев (число в градусах Цельсия)
|-
|-
| r4s/devaddr/'''cmd/nightlight'''
| r4s/devaddr/'''cmd/nightlight'''
| '''0/off/false''' выключение ночника, '''1/on/true''' - включение
| '''0/off/false''' выключение ночника, <br>'''1/on/true''' - включение
|-
|-
| r4s/devaddr/'''cmd/nightlight_red'''
| r4s/devaddr/'''cmd/nightlight_red'''
Строка 115: Строка 113:


  На практике автору оказалось достаточно одного топика (on/off для включения или отключения чайника).
  На практике автору оказалось достаточно одного топика (on/off для включения или отключения чайника).
О связке с Алисой, MQTT и вообще платформе УД описано в статье: https://wiki.yaboard.com/w/Алиса,_IoBroker_и_MQTT




[[Category:Умный дом]]
[[Category:Умный дом]]
[[Category:Своими руками]]

Текущая версия от 06:37, 10 апреля 2021

Требуются прямые руки И вдумчивое отношение к инструкции
Мы не несём никакой ответственности за правильное или неправильное применение, или неприменение, и/или неспособность применить данное руководство.
Телефон вызова экстренных служб - 112.

Описание проблемы

Как известно, техника Redmond работает по протоколу bluetooth и поэтому требует наличия отдельного устройства (аппаратный гейтвей, или выделенный Android телефон\планшет с установленным ПО Redmond; некоторые используют в качестве базы ТВ-приставки на базе Андроид). Такое решение имеет ряд минусов:

  • Все "прелести" работы bluetooth, особенно на больших расстояниях или за несколькими стенами и/или перекрытиями;
  • Дополнительные затраты на шлюз (3000+р, что ради чайника экономически невыгодно, учитывая и стоимость чайника);
  • Программный android-шлюз часто работает нестабильно. Да и не всегда есть лишний смартфон или приставка;
  • Периодически отваливается и само облако Редмонд.
Инструкция описывает самодельный шлюз размером со спичечный коробок со стоимостью около 300 рублей. 
Прошивка поддерживает до трех устройств redmond.
При этом отпадает необходимость как в стандартных гейтвей-устройствах и программах, так и в самом облаке Redmond!

Требования и ресурсы

Нам понадобятся:

  • Плата ESP32 с поддержкой Wi-Fi и Bluetooth (например, такая; продавец не проплатил)), можете купить аналог в любом другом месте);
  • Прошивка (ссылка на гит);
  • MQTT-сервер. Автор с удовольствием использует ioBroker со своим MQTT, который уже работает в паре с Алисой. Можете также выбрать любой удобный вариант;
  • Чайник Редмонд (в него вторгаться не нужно, он просто есть);
  • Прямые руки, и немного минут в Windows.

Прошивка и настройка платы

В интернете достаточно много статей и видео о порядке прошивки ESP32 (например, на Амперке), чтобы не повторять эти инструкции здесь.

На этом шаге сделайте бэкап родной прошивки платы.

В git-репозитории из предыдущего пункта подробно описан порядок действий. Если коротко, то:

  1. Подключить плату к ПК и прошить файл fr4sGate.bin с git, перезагрузить плату;
  2. Создать Wi-Fi сеть (на ноуте/смартфоне) с именем r4s и паролем 12345678;
  3. Найти в списке подключенных устройств плату, открыть её в браузере по IP-адресу;
  4. Перейти на вкладку settings, внести:
    • Настройки вашего Wi-Fi,
    • Название и модель чайника,
    • Параметры вашего MQTT-сервера.

Вкладка 'Settings'


Плата перезагрузится, и подключится на ваш стандартный домашний Wi-Fi. Находим адрес платы, и снова переходим в веб-интерфейс.

У автора на последней версии прошивки чайник подключился к плате сам. 

Порядок действий по инструкции:

  1. Зажать кнопку на чайнике;
  2. Отправить плату в перезагрузку кнопкой 'reboot' в веб-интерфейсе.
Сколько держать кнопку на чайнике - не уточняется. Можно поэкспериментировать с подключением в родном приложении (оценить, сколько жать и с какой интенсивностью).

Теперь в веб-интерфейсе на вкладке main можно увидеть, как плата обнаруживает чайник. На этой же вкладке расположены:

  • Версия прошивки;
  • Uptime (время непрерывной работы) платы;
  • Статус устройства (подключён или нет);
  • Сетевой адрес платы;
  • Статус подключения к MQTT-серверу;


Вкладка 'main'

обнаружение в iobroker MQTT

После того, как чайник определился и вы указали параметры MQTT, в iobroker/mqtt отобразятся стейты:


Iob_mqtt_r4s


MQTT-топики (они же iobroker-стейты) для чайника (из описания прошивки):

Стейт (топик) Значения, описание
r4s/devaddr/cmd/state 0/off/false выключение,
1/on/true кипячение,
2...100 - кипячение и подогрев (число в градусах Цельсия)
r4s/devaddr/cmd/heat_temp 0 выключение,
1...100 подогрев (число в градусах Цельсия)
r4s/devaddr/cmd/nightlight 0/off/false выключение ночника,
1/on/true - включение
r4s/devaddr/cmd/nightlight_red 0..255 Уровень красного в ночнике
r4s/devaddr/cmd/nightlight_green 0..255 Уровень зеленого в ночнике
r4s/devaddr/cmd/nightlight_blue 0..255 Уровень синего в ночнике
r4s/devaddr/rsp/ Датчики: текущее состояние, температура, rssi итд
На практике автору оказалось достаточно одного топика (on/off для включения или отключения чайника).
О связке с Алисой, MQTT и вообще платформе УД описано в статье: https://wiki.yaboard.com/w/Алиса,_IoBroker_и_MQTT