From d9dfaf88f3734464d7017017204b17115212f453 Mon Sep 17 00:00:00 2001 From: Theo Arends <11044339+arendst@users.noreply.github.com> Date: Sun, 18 Oct 2020 12:17:31 +0200 Subject: [PATCH] Add command ``SwitchMode 15`` Add command ``SwitchMode 15`` sending only MQTT message on switch change (#9596) --- CHANGELOG.md | 3 ++- RELEASENOTES.md | 3 ++- tasmota/support_switch.ino | 3 +++ tasmota/tasmota.h | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4e546c3e3..faf585e0d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ All notable changes to this project will be documented in this file. - Support for Vietnamese language translations by Tâm.NT - Support for timers in case of no-sunset permanent day by cybermaus (#9543) - Command ``NoDelay`` for immediate backlog command execution by Erik Montnemery (#9544) +- Command ``SwitchMode 15`` sending only MQTT message on switch change (#9596) ### Changed - Command ``Gpio17`` replaces command ``Adc`` @@ -29,7 +30,7 @@ All notable changes to this project will be documented in this file. - Optional support for inverted NeoPixelBus data line by enabling ``#define USE_WS2812_INVERTED`` (#8988) - PWM dimmer color/trigger on tap, SO88 led, DGR WITH_LOCAL flag by Paul Diem (#9474) - Support for stateful ACs using ``StateMode`` in tasmota-ir.bin by Arik Yavilevich (#9472) -- Zigbee ``ZbData`` command for better support of device specific data +- Zigbee command ``ZbData`` for better support of device specific data - Support for analog buttons indexed within standard button range ### Changed diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 50e2247ee..34e3edff3 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -60,13 +60,14 @@ The attached binaries can also be downloaded from http://ota.tasmota.com/tasmota ## Changelog v9.0.0.2 ### Added - Command ``NoDelay`` for immediate backlog command execution by Erik Montnemery (#9544) +- Command ``SwitchMode 15`` sending only MQTT message on switch change (#9596) +- Zigbee command ``ZbData`` for better support of device specific data - Optional support for Mitsubishi Electric HVAC by David Gwynne (#9237) - Optional support for Orno WE517-Modbus energy meter by Maxime Vincent (#9353) - SDM630 three phase ImportActive Energy display when ``#define SDM630_IMPORT`` is enabled by Janusz Kostorz (#9124) - Optional support for inverted NeoPixelBus data line by enabling ``#define USE_WS2812_INVERTED`` (#8988) - PWM dimmer color/trigger on tap, SO88 led, DGR WITH_LOCAL flag by Paul Diem (#9474) - Support for stateful ACs using ``StateMode`` in tasmota-ir.bin by Arik Yavilevich (#9472) -- Zigbee ``ZbData`` command for better support of device specific data - Support for analog buttons indexed within standard button range - Support for Vietnamese language translations by Tâm.NT - Support for timers in case of no-sunset permanent day by cybermaus (#9543) diff --git a/tasmota/support_switch.ino b/tasmota/support_switch.ino index fa31106b7..91a2d59c6 100644 --- a/tasmota/support_switch.ino +++ b/tasmota/support_switch.ino @@ -393,6 +393,9 @@ void SwitchHandler(uint8_t mode) switchflag = POWER_ON; // Power ON with releasing pushbutton from Gnd } break; + case PUSH_IGNORE: + MqttPublishSensor(); + break; } Switch.last_state[i] = button; } diff --git a/tasmota/tasmota.h b/tasmota/tasmota.h index a200c3ad7..fd66c0d05 100644 --- a/tasmota/tasmota.h +++ b/tasmota/tasmota.h @@ -228,7 +228,7 @@ enum LoggingLevels {LOG_LEVEL_NONE, LOG_LEVEL_ERROR, LOG_LEVEL_INFO, LOG_LEVEL_D enum WifiConfigOptions {WIFI_RESTART, EX_WIFI_SMARTCONFIG, WIFI_MANAGER, EX_WIFI_WPSCONFIG, WIFI_RETRY, WIFI_WAIT, WIFI_SERIAL, WIFI_MANAGER_RESET_ONLY, MAX_WIFI_OPTION}; enum SwitchModeOptions {TOGGLE, FOLLOW, FOLLOW_INV, PUSHBUTTON, PUSHBUTTON_INV, PUSHBUTTONHOLD, PUSHBUTTONHOLD_INV, PUSHBUTTON_TOGGLE, TOGGLEMULTI, - FOLLOWMULTI, FOLLOWMULTI_INV, PUSHHOLDMULTI, PUSHHOLDMULTI_INV, PUSHON, PUSHON_INV, MAX_SWITCH_OPTION}; + FOLLOWMULTI, FOLLOWMULTI_INV, PUSHHOLDMULTI, PUSHHOLDMULTI_INV, PUSHON, PUSHON_INV, PUSH_IGNORE, MAX_SWITCH_OPTION}; enum LedStateOptions {LED_OFF, LED_POWER, LED_MQTTSUB, LED_POWER_MQTTSUB, LED_MQTTPUB, LED_POWER_MQTTPUB, LED_MQTT, LED_POWER_MQTT, MAX_LED_OPTION};