Commit Graph

327 Commits

Author SHA1 Message Date
Theo Arends 421c95a51b Update change logs 2023-07-22 14:55:20 +02:00
Theo Arends b149443691 Fix default battery level
- Fix default battery level (#19160)
- Bump version to v13.0.0.3
2023-07-21 14:35:22 +02:00
stefanbode d1a4296867
New DEEPSLEEP topic for HA + Battery Level % support (#19134)
* 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
2023-07-20 09:51:08 +02:00
s-hadinger 2a3690b866
Berry `tasmota.loglevel()` and `tasmota.rtc_utc()` for faster performance (#19152) 2023-07-19 20:58:50 +02:00
sfromis 6382c2806c
More user-friendly defaults for DisplayMode and DisplayDimmer (#19138)
Changing default for DisplayMode from 1 to 0. Users are getting confused by the display doing something they did not ask for (and not being aware of DisplayMode). This got worse with LVGL/HASPmota displays becoming common, with users having much less reason to dive into the old DisplayXxxxx commands. And it may even be hard to see that it is even a display of time/date causing the display to flicker.

Changing default for DisplayDimmer from 10% to 50%. The low brightness of 10% is not always easy to see, especially in daylight. 50% is generally better, while not going "full blast" with 100%.
2023-07-18 08:26:51 +02:00
Theo Arends 9638beacec Fix possible buffer overflow 2023-07-12 12:45:02 +02:00
Theo Arends 5b6a25a7a0 Fix driver config backup and restore
Fix driver config backup and restore (#18295)
2023-07-12 10:52:58 +02:00
Theo Arends 889e6ea54d Fix driver config restore 2023-07-11 16:12:04 +02:00
Theo Arends 43bc81010f Configuration file save and restore .xdrvsetXXX
Configuration file save and restore now backup and restore ``.xdrvsetXXX`` files too (#18295)
2023-07-10 16:03:32 +02:00
Theo Arends 522e6cf234 Implement deepsleep(0)
Implement deepsleep(0) as command ``restart 9`` (#19024)
2023-07-03 21:07:45 +02:00
Theo Arends 3edb5bb096 Move SD card init up
Move SD card init up (#18934)
2023-07-01 12:48:33 +02:00
Andrew Klaus eb655a4a8f
Add support for SGP41 TVOC/NOx Sensor (#18880)
* Initial support for SGP41

* Removing delay() use from SGP4x driver

* Using i18n for TVOC/NOx raw values as well
2023-06-29 09:04:08 +02:00
Theo Arends 504b51a9b4 Add command ``Delay -1``
Add command ``Delay -1`` to wait until next second (#18984)
2023-06-28 11:53:23 +02:00
s-hadinger 69b2b93d61
Matter UI and logs polishing (#18866) 2023-06-12 19:45:18 +02:00
Theo Arends 07b7a7ee9a Fix initial ESP32 Energy kWh total time 2023-05-29 16:19:55 +02:00
Theo Arends e05d75248e Add undocumented feature 2023-05-25 17:13:31 +02:00
Theo Arends d0e88c9dae Fix BusyDelay WS2812 2023-05-24 17:24:48 +02:00
Theo Arends fc67cca8b4 Add generic SystemWaitIfBusy() to fix WS2812 led flicker
Add generic SystemWaitIfBusy() to fix WS2812 led flicker
2023-05-24 16:21:59 +02:00
Theo Arends ae518424bc Add IPv4 DNS lookup to influxdb
- Add IPv4 DNS lookup to influxdb (#18015)
- Add response to influxdb send
2023-05-21 15:34:36 +02:00
Theo Arends f5d6578fb5 Fix correct JSON display of WifiPower float 2023-05-19 17:41:18 +02:00
Theo Arends 77103baa0a Add internal support for max log level 2023-05-19 15:20:21 +02:00
s-hadinger 043ea2986b
Berry `tasmota.wifi()` would wrongly report wifi as up (#18687)
* Berry `tasmota.wifi()` would wrongly report wifi as up

* Fix ESP8266 compile

* Fix display of IP in wifiman

* Improve wifiman IP handling for IPv6
2023-05-18 11:23:09 +02:00
Theo Arends 4a7e4f9a17 Refactor dynamic wifi tx power 2023-05-17 11:44:14 +02:00
Theo Arends 57f85ae478 Optimize dynamic WiFi power 2023-05-17 10:45:00 +02:00
Theo Arends 0385204ca7 Add command ``WifiPower 0``
Add command ``WifiPower 0`` to enable dynamic wifi power based on RSSI by @TD-er (#15443)
2023-05-16 18:55:55 +02:00
Theo Arends 9b8f3b6b4c Add command I2CScan0
Add command I2CScan0 to scan both busses if available
2023-05-14 15:21:19 +02:00
Theo Arends f1a9a0b45b Add support for PCA9557
Add support for PCA9557 8-bit I/O expander (#18632)
2023-05-14 15:08:09 +02:00
Theo Arends 7cad4f95b6 Enable I2c on webcam 2023-05-14 14:42:11 +02:00
Jason2866 3c951d7751
fix GT911 crash in LVGL firmware (#18633)
* fix GT911 crash

* remove wrong frag when using GT911
2023-05-10 14:02:51 +02:00
Theo Arends e9d1e8c725 Change command FileUpload binary index 2023-05-06 18:09:11 +02:00
Theo Arends cda2bf157d Add support for TC74
Add support for TC74 temperature sensor by Michael Loftis (#18042)
2023-05-01 16:26:07 +02:00
Theo Arends 53bd49ddcd Remove USE_ARDUINO_OTA from ESP32 2023-04-27 16:35:47 +02:00
Jason2866 c33472d9b6
ArduinoOTA support only ESP8266 (#18528)
* ArduinoOTA support only ESP8266

* add comment ArduinoOTA
2023-04-27 14:19:27 +02:00
Theo Arends 9f77cfd890 Fix single pin latching relay power on state
Fix single pin latching relay power on state (#18386)
2023-04-19 16:17:04 +02:00
Theo Arends 6f6c43a724 Add command ``SetOption152 0/1``
Add command ``SetOption152 0/1`` to select two (default) or one pin bistable relay control (#18386)
2023-04-18 17:16:29 +02:00
Theo Arends c2a6dd81e8 Fix ESP32 energy monitoring set StartTotalTime
Fix ESP32 energy monitoring set StartTotalTime regression from v12.3.1.5 (#18385)
2023-04-14 17:42:31 +02:00
Szewcson 4fdd1ad94d
Ftlab gdk101 Gamma Radiation Sensor Module support (#18390)
* Support for GDK101.

* GDK101 driver rework

---------

Co-authored-by: PetrNovacek <39201428+r21m@users.noreply.github.com>
2023-04-14 15:29:00 +02:00
Theo Arends 545c6a3511 Refactor saving some bytes 2023-04-07 13:03:20 +02:00
Theo Arends 4f983105f3 Allow compound commands in json command
Allow compound commands in json command (#18358)
2023-04-07 12:36:02 +02:00
Anton ACE d8bdcebc78
xsns_105_lox_o2: LOX-02 Oxygen sensor support (#18333)
* xsns_105_lox_o2: LOX-02 Oxygen sensor support

* strtof removed, ConvertTemp added
2023-04-06 09:52:15 +02:00
Theo Arends 542eca3154 Global fix http(s) connect issues 2023-04-03 16:12:29 +02:00
Theo Arends d9353cf1e3 Fix upload connection error 2023-04-03 14:17:08 +02:00
stefanbode 5c14a3169b
Shutter esp32 support up to 16 shutters (#18295)
* Updates to support ESP32 shutter compiler option

* New ESP32 shutter driver

* Update xdrv_27_ESP32_shutter.ino

* Update xdrv_27_shutter.ino

* Update support_command.ino

* Update xdrv_27_shutter.ino

Fix compile error

* Update xdrv_27_ESP32_shutter.ino

Fix compile error

* Update xdrv_27_shutter.ino

Fix compile error

---------

Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2023-03-29 15:43:19 +02:00
Theo Arends 61b8e95543 Fix ESP32 change baudrate (#17869) 2023-03-26 16:37:29 +02:00
Theo Arends 9ae7b86efc Save some bytes 2023-03-25 11:59:42 +01:00
Theo Arends b32a093c0c Fix multidigit SwitchModes display
Fix multidigit SwitchModes display
2023-03-25 11:36:10 +01:00
Theo Arends 5bb624ad09 Add command ``SwitchMode0``
Add command ``SwitchMode0`` to show or set all SwitchModes
2023-03-25 11:29:49 +01:00
Theo Arends 00c60450c6 Consolidate messages
- Consolidate messages
- Fix sen5x
2023-03-22 13:25:55 +01:00
Jean-Pierre Deschamps 5661a6798f
Support for pmsa003i (#18214)
* 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>
2023-03-20 09:52:22 +01:00
Theo Arends bda32739a8 Support for reset settings on filesystem 2023-03-13 15:41:21 +01:00
Theo Arends 2b89b7a134 Fix init order of device drivers (#18124) 2023-03-11 15:52:02 +01:00
Theo Arends 63408f3a7d Add NTP time request from gateway (#17984) 2023-03-01 10:58:02 +01:00
Theo Arends 9f30836854 Add support for multiple MCP23017 as switch/button/relay 2023-03-01 10:12:47 +01:00
Barbudor 635afa36de
i2cdriverstate in status only when use_i2c (#18067) 2023-02-27 15:39:52 +01:00
Theo Arends a97f0349d8 Add I2CDriver output to status 4 2023-02-27 09:28:28 +01:00
Theo Arends e927e3307e Add DevicesPresent limit check
- Increase supported relays and buttons to 32
2023-02-25 16:44:04 +01:00
Theo Arends 29ae903f67 Fixed EnergyTotal divided twice
Fixed EnergyTotal divided twice during minimal upgrade step regression from v12.3.1.3 (#18024)
2023-02-24 16:15:02 +01:00
Theo Arends a994c71de4 Refactor device_present calculation 2023-02-19 15:28:20 +01:00
Theo Arends 89ccfe910e Fix undocumented support
Fix undocumented support for non-sequential buttons and switches (#17967)
2023-02-18 14:30:40 +01:00
Theo Arends 31f5b79bf8 Fix adding virtual switches 2023-02-15 11:06:53 +01:00
Theo Arends 87686c0d52 update changelogs 2023-02-13 16:07:38 +01:00
Theo Arends b72cf69d2c Refactor buttons and switches Pt.3
- Quick return from interrupts
2023-02-12 17:40:24 +01:00
Theo Arends dab80f9d29 Refactor buttons and switches Pt.2 2023-02-12 17:23:22 +01:00
Theo Arends e0584b2157 Refactor switches and buttons
- Fix Tuya switches
2023-02-12 16:09:28 +01:00
Theo Arends 134c839244 Fix virtual relays multi press 2023-02-09 15:34:05 +01:00
Theo Arends 8cbb62d8c9 Simplify virtual buttons/switches 2023-02-09 14:46:54 +01:00
Theo Arends 055331d2ab Breaking change TM1638 button and led support
Breaking change TM1638 button and led support are handled as virtual switches and relays (#11031)
2023-02-06 15:57:27 +01:00
Theo Arends ce29bc38d7 Extent ESP8266 virtual button support 2023-02-06 12:03:32 +01:00
Theo Arends 9673cca8b0 Extent ESP8266 virtual switch support 2023-02-06 11:45:28 +01:00
Theo Arends 0ebcf1dc03 Fix exception on empty topic (#17879) 2023-02-05 15:13:44 +01:00
Theo Arends 8bc03bbc06 Bump version v12.3.1.6
- Add ESP32 preliminary support for Matter protocol, milestone 1 (commissioning) by Stephan Hadinger
- Add basic support for Shelly Pro 4PM
2023-02-05 14:29:42 +01:00
s-hadinger 96b66225d2
Reserve `SetOption151` for Matter protocol (#17860) 2023-02-02 20:22:59 +01:00
Barbudor 3d39efaf4a
isTuya optionnal arg to validpin (#17835) 2023-01-30 22:35:38 +01:00
Theo Arends d9cbbaeb2a Fix energy usage and return migrated too small
Fix energy usage and return migrated too small (/10000) regression from v12.3.1.3
2023-01-30 15:36:46 +01:00
Theo Arends 664b60332a Fix broken I2C priority
Fix broken I2C priority regression from v12.3.1.3 (#17810)
2023-01-29 13:59:09 +01:00
Tyeth Gundry 2ed602057c
Add SEN5X to I2C devices (#17736) 2023-01-29 08:06:25 +01:00
Theo Arends d70dbe979e Prep ESP32 energy for four+ phases 2023-01-26 15:26:10 +01:00
Theo Arends 4297fa3f3e Add Shelly Pro 4 input interrupt support 2023-01-23 12:51:02 +01:00
Theo Arends 88dd5f7f50 Fix Shelly Pro 4PM auto reset 2023-01-22 16:41:25 +01:00
Theo Arends c85003c67d Prep Shelly Pro 4PM 2023-01-21 14:30:35 +01:00
Theo Arends aa78ffb733 Prep Shelly Pro 4PM 2023-01-20 14:28:58 +01:00
Barbudor d904e0aa7f
Tuya - WIFI_STRENGTH + Save check on MCU_CONF (#17724)
* adding response to command 36 Get Wifi Strength

* more logs

* poperly check and warn if Mode 2 provide bad GPIOs

* final test on gpio
2023-01-17 04:46:00 +01:00
Theo Arends e2c9a71c3b Prep virtual button handler 2023-01-16 18:29:51 +01:00
Theo Arends 7a97fa4a19 Fix BMP support on two busses
Fix BMP support on two busses (#17643)
2023-01-15 17:14:54 +01:00
Theo Arends 094f45fe7e Fix compilation without USE_IPV6 2023-01-13 11:47:58 +01:00
Theo Arends 1a9e86a6b3 Fix ESP32 safeboot propagating upload 2023-01-13 11:30:30 +01:00
Theo Arends 24105a74b2 Save some RAM on ESP8266 2023-01-08 17:51:17 +01:00
David Gwynne 17d68750d9
WIP Tuya MCU Bridge driver alternative to the TuyaMCU driver (#17626)
* 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>
2023-01-08 17:35:45 +01:00
Theo Arends 9073fe01c1 Add ESP32 support for BMPxxx sensors on two I2C busses
Add ESP32 support for BMPxxx sensors on two I2C busses (#17643)
2023-01-08 17:19:08 +01:00
Theo Arends 0781192c87 Extract I2C support
- Fix BMP compilation on ESP8266
2023-01-08 16:04:58 +01:00
Ralph Maschotta d80b763f97
Enable more than two and up to four BMP/BME sensors on two I2C buses for ESP32 (only two addresses (76, 77) per I2C bus are possible). (enhancement of #10827,#1049, #2707) (#17643) 2023-01-08 15:57:34 +01:00
Theo Arends 95690ab1b9 Add recursive rule MQTT subscribe support (#16943) 2023-01-07 17:31:10 +01:00
Theo Arends 2e7496a052 Keep webserver enabled on command ``upload`` 2023-01-07 15:37:52 +01:00
s-hadinger 5e89578403
Extend fix #17619 to non-IPv6 (#17621) 2023-01-06 19:03:07 +01:00
s-hadinger 33d6dbed3d
No IP address shown when in AP moode (#17599) (#17619) 2023-01-06 14:03:16 +01:00
s-hadinger dfc01cd3a4
Fix crash when getting IP address (#17576) 2023-01-03 09:33:31 +01:00
Theo Arends 14ee8decf7 Update changelogs
Add support for PCA9632 4-channel 8-bit PWM driver as light driver by Pascal Heinrich (#17557)
2023-01-01 14:29:41 +01:00
Theo Arends 32a51da43d Fix PUSH_IGNORE_INV once more 2023-01-01 14:01:18 +01:00
Theo Arends c63919d783 Change Energy totals max supported value
- Change Energy totals max supported value from +/-21474.83647 to +/-2147483.647 kWh
- Bump version to v12.3.1.3
2023-01-01 11:32:30 +01:00
Stefan Oskamp e5fd35ba85
Added: Driver xdsp_20_tm1650 for I2C-based seven-segment LED controller TM1650. (#17549)
Co-authored-by: Stefan Oskamp <stefan@scinax.lan>
2022-12-31 09:19:53 +01:00