* 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