Commit Graph

310 Commits

Author SHA1 Message Date
Andre H. Beckedorf 8683bc7722
Added passive mode for Sen5x sensor (required for Ike@ Vindstyrka) (#19388)
* 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.
2023-08-26 16:14:30 +02:00
s-hadinger 4ad3070558
Fix crash in IRHVAC (#19389) 2023-08-26 10:17:53 +02:00
Christian Baars 65a1a4feeb
Neopixel add SPI driver for C2 and some minor updates (#19372) 2023-08-24 10:34:17 +02:00
Theo Arends 0c3b559630 Phase 1 support C2/C6 2023-08-21 16:00:20 +02:00
Theo Arends d9530f32a6 Sync dev with release v13.1 2023-08-15 10:37:54 +02:00
Paul Blacknell df1a526f02
fix: properly detect device is offline after maximum misses reached (#19298) 2023-08-12 11:32:29 +02:00
Christian Baars b5cc48dd64
ESP32: pass flashmode at build time to macro definition (#19299)
* pass flashmode at build time to macro definition

* fix 8266 builds
2023-08-12 11:31:06 +02:00
Paul Blacknell c3fadde3e8
Improvements to thermostat debug output (#19279)
* 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
2023-08-08 10:55:05 +02:00
Jason2866 7488ed03f0
Tasmota based on Arduino 3.0.0 (#19270) 2023-08-06 13:44:28 +02:00
Theo Arends e52c6105c6 Bump version to v13.0.0.4 2023-08-05 15:41:12 +02:00
Theo Arends 978a21240c Update changelogs 2023-07-24 15:30:48 +02:00
Vincent de Groot bc41500d9c
MAX17043 sensor integration (#18788)
* 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
2023-07-22 13:33:47 +02:00
Theo Arends c7a22f175b Update changelogs 2023-07-21 14:55:06 +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
Theo Arends 889e6ea54d Fix driver config restore 2023-07-11 16:12:04 +02:00
Theo Arends 05d589f2d7 Set ESP32-C3 max supported ADC channels to 5 2023-07-08 18:04:13 +02:00
Theo Arends ac4c4505a5 Bump version v13.0.0.2
Update changelogs
2023-07-08 17:37:12 +02:00
stefanbode 8ce7cb4ccd
Enhance ZC-Dimmer for falling and leading edge dimmer (#19054)
* Update tasmota_types.h

* Update xdrv_68_zerocrossDimmer.ino
2023-07-07 19:50:36 +02:00
s-hadinger d72f3b9978
Command ``BrRestart`` to restart the Berry VM (experimental) (#19003)
* Command ``BrRestart`` to restart the Berry VM (experimental)

* Add web button for Berry Restart
2023-07-02 21:52:01 +02:00
Theo Arends 139ac367f0 Add support for energy dummy relays
Add support for energy dummy relays using SO48
2023-07-01 14:25:05 +02:00
Theo Arends 465ae023ab Update change logs 2023-06-29 14:10:49 +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 0930bbddf5 Fix ESP32 Matter support 2023-06-26 12:38:29 +02:00
Theo Arends d9a66547aa Bump version v13.0.0.1 2023-06-26 11:12:31 +02:00
Jason2866 b419ae3a92
add matter as a default option in most env (#18942) 2023-06-24 11:39:26 +02:00
Subhash Chandra 2f616eef2c
make IRHVAC send incremental changes. (#18310)
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.
2023-06-10 14:53:02 +02:00
Theo Arends 4e7475dbd4 Bump version v12.5.0.4 2023-06-02 10:25:02 +02:00
Jason2866 7b55e1aca2
Make `USE_DISPLAY_MODES1TO5` in firmware `LVGL` possible (#18729)
* Make `USE_DISPLAY_MODES1TO5` in firmware `LVGL` possible
2023-05-27 17:00:14 +02:00
Theo Arends fcf3477165 Initial support for WS2812 scheme 14 2023-05-26 17:47:57 +02:00
Theo Arends e05d75248e Add undocumented feature 2023-05-25 17:13:31 +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 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
Jason2866 64e844d387
Disable crashing GT911 driver (#18631) 2023-05-10 11:28:59 +02:00
Mateusz Bronk 6a7b2b0c6e
IR: Extended the A/C protocol with Command/iFeel/SensorTemp (#18612)
* 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>
2023-05-09 21:35:56 +02:00
Jason2866 eccc1af0a2
disable SHT pig on i2c / add missing GT911 defines (#18595)
* disable SHT pig on i2c / add missing GT911

* GT911 missing in config
2023-05-07 15:32:15 +02:00
Theo Arends d7b6d72e19 Add support for GM861
- Add support for GM861 1D and 2D bar code reader (#18399)
- Bump version to v12.5.0.2
2023-05-05 16:50:19 +02:00
gemu 687b26ad13
Scripter update (#18578)
* add ds2480b library

* add onewire support

* reset on error

* call to get esp32 HWS

* DS2480 serial invert option
2023-05-05 09:17:17 +02:00
Jeroen 616652ea22
Added support for Dingtian Relay Board v3.6.10 (#18535)
* 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>
2023-05-01 14:51:02 +02:00
Theo Arends f86bc7d8ab Prep GM861 2023-04-27 17:44:33 +02:00
Christian Baars f6763eb37b
Berry: add BLE server/advertiser (#18494) 2023-04-26 08:39:29 +02:00
stefanbode 39abde2583
Worked on ESP32 dimmer with Zero cross (#18481)
* 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
2023-04-25 13:46:19 +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 05f6bcf211 Bump v12.5.0.1 2023-04-17 10:10:55 +02:00
Theo Arends 1e571e1d14 Update templates 2023-04-15 14:58:21 +02:00
Theo Arends e07efd625f Add support for GDK101 gamma radiation sensor by Petr Novacek (#18390) 2023-04-14 16:50:54 +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
stefanbode 6d9beb5d79
autosetup of shutters for shelly devices (#18393)
* New autocallibration and setup for shelly devices

* setup command
2023-04-12 09:39:48 +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 96e5f0dd38 Version bump v12.4.0.5
- Add Matter support for Light and Relays on ESP32 by Stephan Hadinger (#18320)
2023-04-03 10:06:03 +02:00
Theo Arends b321fab868 Refactor PCF8574 driver 2023-03-27 15:42:40 +02:00
Theo Arends 00c60450c6 Consolidate messages
- Consolidate messages
- Fix sen5x
2023-03-22 13:25:55 +01:00
Theo Arends 6aab3d4c5e Bump version v12.4.0.4
- Add Matter support simple Relay on Apple Homekit by Stephan Hadinger (#18239)
- Bump version v12.4.0.4
2023-03-22 10:39:59 +01:00
Theo Arends 59677d7e4a Consolidate sensor parameters 2023-03-20 17:11:05 +01:00
gemu daa64f098c
Scripter update (#18226)
* fix failure with negative values in >D

* Create Powerwall.h
2023-03-20 12:13:36 +01:00
Theo Arends 34ee7c67d8 Update changelogs
- Add support for PMSA003I Air Quality Sensor by Jean-Pierre Deschamps (#18214)
- Add support for DingTian virtual switch/button/relay (#18223)
2023-03-20 10:21:16 +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 115105bf7c Consolidate energy messages 2023-03-18 18:26:43 +01:00
Theo Arends 54a2688cbf Bump v12.4.0.3
- Bump v12.4.0.3
- Refactor energy monitoring reducing stack usage and solve inherent exceptions and watchdogs (#18164)
2023-03-17 21:05:51 +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
Barbudor 0dc39e0470
Tariff command variant to force tariff - take 2 (#18112)
* tariff command variant to force tariff

* move to Settings + add esp8266

* added tariff-forced to changelog
2023-03-04 21:58:03 +01:00
Theo Arends cb988edba8 Prep PCF8574 virtual switch/button/relay 2023-03-03 16:54:57 +01:00
Theo Arends a72bbbe30a Add interrupt control to MCP23xxx driver
- Add interrupt control to MCP23xxx driver
- Enable ADE7880 in tasmota32.bin
2023-03-02 11:24:54 +01:00
Theo Arends dcc46cb4d5 Bump version v12.4.0.2 2023-03-01 17:09:51 +01:00
Theo Arends 159d1ae312 Breaking change Shelly Pro 4PM
- Add support for multiple MCP23017/MCP23S17 as switch/button/relay
- Breaking change Shelly Pro 4PM using standard MCP23xxx driver
2023-03-01 16:52:34 +01:00
Theo Arends 9f30836854 Add support for multiple MCP23017 as switch/button/relay 2023-03-01 10:12:47 +01:00
Charles 27de8b5c3e
added teleinfo config show_stats parameter (#18051) 2023-02-25 17:27:10 +01:00
Theo Arends e927e3307e Add DevicesPresent limit check
- Increase supported relays and buttons to 32
2023-02-25 16:44:04 +01:00
Jason2866 8ea8d34d17
Make setting of `CODE_IMAGE_STR` in Platformio possible (#18011)
* OTA_URL safeguard
* make override possible
2023-02-22 12:05:04 +01:00
Theo Arends dfe434bb92 Prep MCP23xxx interrupt support 2023-02-18 16:05:56 +01:00
Theo Arends 208c70adf2 Bump version v12.4.0.1 2023-02-16 14:19:31 +01:00
Theo Arends 5d3f2cc316 ESP8266 increase number of discovery relays 2023-02-09 16:02:06 +01:00
Jason2866 40be97e6d9
SD Card support for >1MB tasmota (#17916) 2023-02-08 12:38:10 +01:00
Theo Arends 9673cca8b0 Extent ESP8266 virtual switch support 2023-02-06 11:45:28 +01:00
Theo Arends c699131103 Add Shelly Pro 4PM to lvgl binary 2023-02-05 16:22:18 +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
Fabrizio Amodio 2c9f1fef0d
Biopdu-v1.1.0 (#17857)
* BioPDU language labels

* xnrg_33 BioPDU 625x12 driver

* missing enums

* Rename energy driver from 33 to 24

* Removed driver 33
2023-02-02 19:09:24 +01:00
Norbert 813233906b
Fix spelling (#17853) 2023-02-02 08:57:01 +01:00
Barbudor 949f3fdc32
enfore TLS for sml decryption (#17852) 2023-02-01 21:40:04 +01:00
Theo Arends db581b15c7 Add SetOption150
Add SetOption150 - (Energy) Force no voltage/frequency common allowing individual voltage channel calibration.
2023-01-31 22:30:50 +01:00
Theo Arends db3fdc5118 Add ESP32 support for eigth energy phases/channels
- 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)
2023-01-29 16:09:13 +01:00
Tyeth Gundry 2ed602057c
Add SEN5X to I2C devices (#17736) 2023-01-29 08:06:25 +01:00
Theo Arends 78fe958d89 Fix energy dummy supporting 8 channels 2023-01-28 13:47:37 +01:00
Theo Arends f064250d9a Update change logs
Version bump to v12.3.1.5
2023-01-27 16:59:54 +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
Theo Arends 82b6d1ee91 Bump version to v12.3.1.4 2023-01-15 17:45:59 +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 f9177dfa3a Revert CSE7766 8N1 support - not needed 2023-01-10 09:48:49 +01:00
Theo Arends a4fe1b88f9 Add HLW8032 8N1 2023-01-09 11:04:52 +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 2e7496a052 Keep webserver enabled on command ``upload`` 2023-01-07 15:37:52 +01:00
Theo Arends 404589c860 Enable USE_WE517 in tasmota32.bin 2023-01-02 11:38:08 +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
Theo Arends 20a50ffc2e Revert Tuya rewrite
- Update changelogs
2022-12-31 16:08:59 +01:00
Theo Arends 3555d88bee Bump version v12.3.1.2
- Fix shutter default motorstop set to 0 (#17403)
2022-12-21 15:20:33 +01:00