MQTT-шлюз для Redmond своими руками: различия между версиями
Нет описания правки |
м Ark rusinov-9121383 переименовал страницу "Шлюз для чайника redmond своими руками" в "MQTT-шлюз для Redmond своими руками" без о… |
(нет различий)
| |
Версия от 10:01, 21 октября 2020
Телефон вызова экстренных служб - 112.
Описание проблемы
Как известно, техника Redmond работает по протоколу bluetooth и поэтому требует наличия отдельного устройства (аппаратный гейтвей, или выделенный Android телефон\планшет с установленным ПО Redmond; некоторые используют в качестве базы ТВ-приставки на базе Андроид). Такое решение имеет ряд минусов:
- Все "прелести" работы bluetooth, особенно на больших расстояниях или за несколькими стенами и/или перекрытиями;
- Дополнительные затраты на шлюз (3000+р, что ради чайника экономически невыгодно, учитывая и стоимость чайника);
- Программный android-шлюз часто работает нестабильно. Да и не всегда есть лишний смартфон или приставка;
- Периодически отваливается и само облако Редмонд.
Инструкция описывает самодельный шлюз размером со спичечный коробок со стоимостью около 300 рублей. При этом отпадает необходимость как в стандартных гейтвей-устройствах и программах, так и в самом облаке Redmond!
Требования и ресурсы
Нам понадобятся:
- Плата ESP32 с поддержкой Wi-Fi и Bluetooth (например, такая; продавец не проплатил, можете найти аналоги )
- Прошивка (ссылка на гит)
- MQTT-сервер. Я, по традиции, использую ioBroker со своим MQTT, который уже работает в паре с Алисой. Можете выбрать любой удобный вариант.
- Прямые руки, чайник Редмонд, немного Windows
Прошивка и настройка платы
В интернете достаточно много статей и видео о порядке прошивки ESP32 (например, на Амперке), чтобы не повторять эти инструкции здесь.
На всякий случай сделайте бэкап родной прошивки платы.
В git-репозитории из предыдущего пункта подробно описано, что нужно сделать. Если коротко:
- Подключить плату к ПК и прошить файл fr4sGate.bin с git, перезагрузить плату;
- Создать Wi-Fi сеть (на ноуте/смартфоне) с именем r4s и паролем 12345678;
- Найти в списке подключенных устройств плату, открыть её в браузере по IP-адресу;
- Перейти на вкладку settings, внести:
- Настройки вашего Wi-Fi,
- Название и модель чайника,
- Параметры вашего MQTT-сервера.
После этого плата перезагрузится и подключится на ваш стандартный домашний Wi-Fi. Находим адрес платы, и снова переходим в веб-интерфейс.
У автора на последней версии прошивки чайник подключился к плате сам.
Порядок действий по инструкции:
- Зажать кнопку на чайнике
- Отправить плату в перезагрузку (есть кнопка reboot в веб-интерфейсе).
Сколько держать - не уточняется. Можно поэкспериментировать с подключением в родном приложении (оценить, сколько жать и с какой интенсивностью).
В веб-интерфейсе на вкладке main можно увидеть, как плата обнаруживает чайник. На этой же вкладке расположены:
- Версия прошивки;
- Uptime (время непрерывной работы) платы;
- Статус устройства (подключён или нет);
- Сетевой адрес платы;
- Статус подключения к MQTT-серверу;
обнаружение в iobroker MQTT
После того, как чайник определился и вы указали параметры MQTT, в iobroker/mqtt отобразятся стейты:
Mqtt топики для чайника (Из документации к прошивке)
| Стейт (топик) | Значения, описание |
|---|---|
| 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 для включения или отключения чайника).