Commit Graph

227 Commits

Author SHA1 Message Date
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