* fix: don't reset the device when coming out of deep sleep
* fix: move debug log message to inside the device validation
* Update xsns_110_max17043.ino
* add: update global battery percentage when max17043 reports new value
* Added a passive mode in sen5x sensor for parasitic installations. This skips reset & initialization of sensor on startup and reduces the polling to every 10 seconds to not interfere with and confuse the other I2C master on the bus, e.g. Ike* Vindstyrka.
* Removed obsolete updateCount. Cleanup.
* add: update DEBUG_THERMOSTAT to only control the virtual switch
Also, debug output is still generated but end user can control this debug level 3
* add: debug output of main controller parameters when thermostat enabled
Also, add units for debug outputs added to make them more intelligible
* Update xdrv_39_thermostat.ino
* add: debug message when sensor is detected as not alive
fix: display thermostat number in debug messages
* add: log message prefix string for thermostat
* Update xdrv_39_thermostat.ino
fix: typos in comments
add: debug messages
* add: debug prefix for thermostat
* add: debug prefix added to output lines
* fix: comment typos and small grammatical changes for clarity
* add: debug prefix 'THE' added to debug output
* Restart MAX17043 from the scratch
* revert change
* Changed battery capacity in charge (capacity is the Ah value of the battery, this degrades over time when battery ages)
* merge
* Changing xsns_109 to 110
* fix nr
* removed old xsns109
* Update I2CDEVICES.md
* clean-up usage of Interface
* New LWT on deepsleep
To allow better integration into HA LWT topic will report details of sleep status:
16:54:04.388 MQT: hm/tele/ESP_3284D1/LWT =
{"Sleep":{"Time":"2023-07-17T16:55:03","Sleep":1689612844,"Wakeup":1689612903}}
* Revert LWT back to non JSON
Send DeelSleep on LWT
Send Deepsleep parameters on topic DeepSleep
* Setting default for batteryLevel
* Enable BatteryPercentSet
Changing the battery level e.g. by rule
* Added Battery % to status message
* added battery_level_percent
* Added battery % support in STATE message
* Enable setting battery level
101 is reserved for power-plug. No battery Level reported
* Setting default for battery Level
101 is reserved for power plug
0..100 normal battery values
* Revert back LWT to Offline
Removed "DeepSleep" LWT status until further decision is made. Current implementation is technical sufficient for HA to detect a battery powered device
* Added discovery message after deepsleep change
* Added discovery for battery and deepsleep
This change will allow mqtt messages simpler by allowing something like
`publish cmnd/ir-bridge/IRHVAC {"Power": "On"}`.
The simpler format is required for working with mqtt clients like
iotMQTTPanel or similar on android.
Limitations:
- Requires full message be sent at-least once. I work around this with
a `system#boot` rule
- Gets messy with multiple devices. I have only one AC per room, and
this doesn't doesn't interfere with other IR devices.
TODO:
- [ ] Change the build flag `INCREMENTAL_IRAC`to a `SetOption`
- [ ] Persist `irac_prev_state` across reboots.
- [ ] Support multiple devices.
* IR: Added support for new A/C protocol fields
New fields introduced in IRremoteESP8266 v2.8.5:
1. Command (one of: [Control | Config | iFeel | Timer], default: Control) - allows to set IR command type (e.g. iFeel for no-beep ambient sensor report)
2. iFeel (boolean, default: false) - configures whether iFeel (ambient sensor temp. is used by the A/C unit)
3. SensorTemp - the ambient sensor temperature reading to send
Note:
- Fan setting via int is now 6-value (breaking change -> 6 is the new max)
* IR A/C: Model now pretty-printed to JSON
Model string is the default (falls back to int if n/a)
* IR A/C: Added separate JSON resp. per command type
* No change for "kControlCommand" (default/legacy).
* SensorReport/Timer/Config commands only contain relevant JSON nodes
Additionally:
Clock has time semantics (input: minutes, output: HH:MM), except for "config" mode,
where state.clock is used as ConfigKey and state.sleep is used as ConfigValue.
---------
Co-authored-by: Mateusz Bronk <2566147+mbronk@users.noreply.github.com>
* Added support for Dingtian Relay Board v3.6.10
* Output OE was never initialized
* Removed white spaces trying to fix language builds
* Fix for https://github.com/arendst/Tasmota/pull/18535#pullrequestreview-1406978097
* Fixed language builds
---------
Co-authored-by: JeroenSt <nospam@nospam.org>
* Worked on ESP32 dimmer with Zero cross
Until now the ESP32 does not support zero-cross dimmer. I take a sneak how they did in in ESPhome and adapted the approach to TASMOTA. At the end it works that smooth that likely i will change ESP8266 either so we have a common code. Currently ESP8266 is not touched.
There is a minor issue with savedata == default. When changing the dimmer value the interrupts get stopped during write of the config data to flash.
* ESP8266 Dimmer added
Worked all so well and the code is much smaller. There is no need for reconfiguration on existing users. But there are settings not needed anymore. Will work on the documentation. Anyhow existing installations can upgrade without hickup
* Optimized endpoints at dimmer 0 and 100
* Removed debug stuff
* Fix Issue at dimmer = 0
* Small bugfix
* Final checked Version
* Update xsns_01_counter.ino
* Add missing func
* Update xsns_01_counter.ino
* Moved out of the house of counter and build my own one
* New ZeroCross Driver
* Update xdrv_91_zerocrossDimmer.ino
* evolving
* Delete xdrv_91_zerocrossDimmer.ino
* Add files via upload
* Changed drv number from 1 to 68
* Commit to merge
* Initial support for PMSA003I air quality sensor.
* Updated pmsa003i support to the latest dev branch
* Fixed typo in esp32 configuration
Removed all global variable and use the PM25_AQI_Data struct from Adafruit library
Fix typo Xsns100 to Xsns104
Fix Typo XI2C_71 to XI2C_78
* Move everything in custom Struct for PMSA003I driver
---------
Co-authored-by: Jean-Pierre Deschamps <info@jpdeschamps.com>
- ESP32 support for eigth energy phases/channels
- ESP32 command ``EnergyCols 1..8`` to change number of GUI columns
- ESP32 command ``EnergyDisplay 1..3`` to change GUI column presentation
- support for SEN5X gas and air quality sensor by Tyeth Gundry (#17736)
* WIP Tuya MCU Bridge driver alternative to the TuyaMCU driver
The main difference is this driver does not try and wire MCU data points
(Dps) into the tasmota power/light/etc controls. Instead each Dp ends up
being relayed directly to MQTT and the rules subsystem. If you want to
change the state of something wired up to the MCU, you send tuyamcu
specific commands to manipulate the Dp.
Each Dp gets a type and id specific topic that is sent to MQTT. eg, Dp
id 1 type bool looks like tele/%topic%/TUYAMCUBOOL1. To change state you
send a TuyaMCUBool1 command (ie, the command index value is used as the
DpId, which is nice and symmetrical) with the new value.
Currently Rules operate on TuyaMCU#TypeDpid things, eg, "rule1 on
TuyaMCU#Bool1 do power %value% endon" toggle the power on the tasmota
device when the state of the thing on the MCU changes too.
The most obviously missing stuff at the moment is:
- better relaying of the wifi/mqtt status to the MCU
- handling wifi reset requests from the MCU
- low power stuff?
- support for sending status updates and device info queries.
- restarting the tuya mcu state machine?
- restarting the rx state machine when no bytes are rxed for a period of
time
- time sync
* shorten the log prefix to TYB (3 chars).
requested by arendst
* use the local definition for the SET_DP command.
reaching back to the existing tuyamcu code isnt reliable.
pointed out by arendst
* put the todo list in the code so it can be tracked
* check the wifi/mqtt state every second and update the mcu if it changes.
* fix rule processing when Dp state is changed from a cmnd.
rule processing was done as part of publishing the state, but publishing
the state when it was updated by a command only happened if So59 was
set. split rule processing out of publish and call them separately as
needed.
publish is now called from teleperiod, status updates from the MCU,
and from cmnds if so59 is set. rules are called from status updates from
the MCU and from cmnds.
Co-authored-by: David Gwynne <dlg@defeat.lan.animata.net>
* functionality update see below:
- added shutterxxx0 command to change all shutters in parallel. Similar to power0 command
- added flexible ShutterMotorstop time to control the time between one relay OFF and the next ON. Now not blocking anymore other operations
- fix recent bug "shuttermode x" not working anymore
- changed autoconfig behavior to avoid SHORT CIRCUIT on missing interlock setting or wrong shuttermode
* Adding motorstop time for shutters
* Adding motorstop command for shutters
* func update
- added shutterxxx0 command to change all shutters in parallel. Similar to power0 command
- added flexible ShutterMotorstop time to control the time between one relay OFF and the next ON. Now not blocking anymore other operations
- fix recent bug "shuttermode x" not working anymore
- changed autoconfig behavior to avoid SHORT CIRCUIT on missing interlock setting or wrong shuttermode
* typo fix
* regression fix on "shutterposition stopclose"
* fix mulithread timing issue
- Version bump to v12.1.1.4
- Support for Shelly Plus 2PM using template ``{"NAME":"Shelly Plus 2PM PCB v0.1.9","GPIO":[320,0,0,0,32,192,0,0,225,224,0,0,0,0,193,0,0,0,0,0,0,608,640,3457,0,0,0,0,0,9472,0,4736,0,0,0,0],"FLAG":0,"BASE":1,"CMND":"AdcParam1 2,10000,10000,3350"}``
SetOption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.
If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
SetOption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.
If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
Setoption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.
If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
Setoption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.
If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
Add SetOption147 (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
Add SetOption147 (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
- Add commands to better control global temperature, humidity and pressure
- Command ``GlobalTemp2 1..250`` to select Global Temperature source indexed from teleperiod occurance data (#15834)
- Command ``GlobalHum2 1..250`` to select Global Humidity source indexed from teleperiod occurance data (#15834)
- Command ``GlobalPress2 1..250`` to select Global Pressure source indexed from teleperiod occurance data (#15834)