Sonoff Tasmota не могу подписаться на топики

Если вы только начинаете осваивать систему MajorDoMo и чего-то не знаете или не можете понять, то задавайте свои вопросы в этой ветке.

Модератор: immortal

Ответить
Vitalii Dolgov
Сообщения: 1
Зарегистрирован: Вс авг 11, 2019 2:48 pm
Благодарил (а): 0
Поблагодарили: 0

Sonoff Tasmota не могу подписаться на топики

Сообщение Vitalii Dolgov » Вс авг 11, 2019 2:52 pm

Всем доброго дня! Вот как 3 дня бьюсь на одним решением, отчаявшись пишу сюда.
Прошил sonoff basic прошивкой tasmota. Подключил датчик температуры DS18B20.
Добавил топики на cloudmqtt.

Могу получать значение температуры в приложении на телефоне используя правило:
rule1 on tele-DS18B20#temperature do publish tele/sonoff/Temp %value% endon
Вот такой ответ приходит в топик:
10:54:48 RUL: TELE-DS18B20#TEMPERATURE performs "publish tele/sonoff/Temp 28.5"
10:54:49 MQT: tele/sonoff/Temp = 28.5

Могу ставить условие включения реле по значению температуры:
rule2 on tele-DS18B20#temperature<20 do cmnd/sonoff/POWER ON endon

и также могу управлять включением реле топиком cmnd/sonoff/POWER ON(OFF)

Тут я задался идеей сделать из Sonoff basic полноценный термостат, но для этого в rule2 необходимо по данным GITHUB прописать следущее:
rule2 on tele-DS18B20#temperature do subscribe TERMOSTAT, temp/termostat endon on tele-DS18B20#temperature<TERMOSTAT do cmnd/sonoff/POWER ON endon on tele-DS18B20#temperature>TERMOSTAT+5 do cmnd/sonoff/POWER OFF endon
T.e. получается я смогу в приложении в виджете давать значение в топик temp/termostat ниже которого будет включаться обогреватель.
Но столкнулся с ответом на команду Subscribe:
11:10:36 RUL: TELE-DS18B20#TEMPERATURE performs "subscribe TERMOSTAT, temp/termostat "
11:10:36 MQT: stat/sonoff/RESULT = {"Command":"Unknown"}

Поизучав просторы интернета нашел следуещее:
Subscribe List all topics currently subscribed
<eventName>, <mqttTopic> [, <key>]
The <key> parameter is optional. It is specified to parse a key/value pair from a JSON payload in the MQTT message. In order to parse a value from a multi-level JSON pair, you can use one dot (.) syntax to split the key into sections.

Subscribes to an MQTT topic and assigns an Event name to it. You must compile your own binary with #define SUPPORT_MQTT_EVENT in your user_config_override.h file.

Examples:
Subscribe BkLight, stat/%topic%/POWER
Rule1 ON Event#BkLight=ON DO <command>ENDON
Subscribe DnTemp, stat/%topic%/SENSOR, DS18B20.Temperature
where the MQTT message payload is {"Time":"2017-02-16T10:13:52", "DS18B20":{"Temperature":20.6}}
Rule1 ON Event#DnTemp>=21 DO <command> ENDON

Нашел этот файл на компе user_config_override.h , поставил активным #define SUPPORT_MQTT_EVENT
но увы ошибка так и не ушла(((
Ответить