Commit Graph

511 Commits

Author SHA1 Message Date
Theo Arends
10885fe60d Refactored rules `Subscribe` using LList allowing full message size and enabled by default 2024-01-22 16:57:59 +01:00
Theo Arends
1ffbbc914d Refactor backlog from LinkedList to TasmotaLList 2024-01-21 22:07:49 +01:00
Theo Arends
95f76d623f Changed command `TimedPower` refactored from String to LList 2024-01-21 14:29:44 +01:00
Theo Arends
9608b7513a Refactor backlog by removing some str copies 2024-01-20 22:45:24 +01:00
Theo Arends
05014d48cf Refactor backlog from String to char 2024-01-20 17:18:03 +01:00
Theo Arends
c9d0106007 Removed max number of 30 backlog entries 2024-01-18 16:32:28 +01:00
Theo Arends
0f541a963b Fix TimedPower blink off 2024-01-18 10:38:22 +01:00
Theo Arends
2832ed914b Change command `TimedPower`
Change command ``TimedPower`` from erasing all timers to showing remaining timers
2024-01-17 15:55:25 +01:00
Theo Arends
9d00897cb4 Fix TimedPower using state names 2024-01-16 15:07:23 +01:00
Theo Arends
2c5508ee96 Add TimedPower update before end 2024-01-16 12:40:35 +01:00
Theo Arends
77d54985d0 Tune TimedPower 2024-01-16 11:02:24 +01:00
Theo Arends
789fd1e055 Add command `TimedPower`
Add command ``TimedPower<index> <milliseconds>[,ON|OFF|TOGGLE|BLINK]`` executes ``Power<index> [ON|OFF|TOGGLE|BLINK] `` and after <millisecond> executes ``Power<index> [OFF|ON|TOGGLE|OFF]``
2024-01-15 23:58:33 +01:00
s-hadinger
9045a7da83
IP stack compatible with new Core3 IPv6 implementation (#20509)
* IP stack compatible with new Core3 IPv6 implementation

* Fix compilation

* Forece CI
2024-01-15 21:05:40 +01:00
Theo Arends
c2d6bbf2c1 Code admin 2024-01-10 11:13:19 +01:00
Theo Arends
0d300aebff Update GPIOViewer
- Add ESP8266 PWM state logging
- Add ADC state functions
2024-01-07 15:10:19 +01:00
Theo Arends
13a9c3b5b2 Add delays to wifi init code
Add delays to wifi init code to fix some edge power cases.
2023-12-27 17:29:03 +01:00
Theo Arends
e5abd47c86 More syslog explaining 2023-12-21 14:49:37 +01:00
Theo Arends
2f824b1976 Document different syslog layouts 2023-12-21 14:30:49 +01:00
Theo Arends
a445c7f23a Fix syslog server warning
Fix syslog server warning caused by lack of <PRI> field and hostname starting with 'z' (#14689)
2023-12-20 16:00:27 +01:00
Theo Arends
b81eaf5bc8 Support syslog updates every sleep
Support syslog updates every sleep or every second if `#define SYSLOG_UPDATE_SECOND` (#20260)
2023-12-19 12:45:13 +01:00
budulinek
23b4cd08d4
Realtime syslog (#20260)
* Realtime Syslog

* Update tasmota.ino

---------

Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2023-12-19 12:29:39 +01:00
stefanbode
f19d15654c
Restart 9 support deepsleep with TIMER based wakeup (#20165)
* Allow restart 9 to use TIMERS for wakeup

* support for restart 9

allow restart 9 to use any defined TIMER to restart a a specific time.
2023-12-05 13:47:53 +01:00
Theo Arends
728f91b602 Update changelogs 2023-12-05 10:07:02 +01:00
Theo Arends
14793c2594 Shorten code and add more comments 2023-12-04 11:44:59 +01:00
Theo Arends
7a6cca6d20 Add command `WebCanvas`
Add command ``WebCanvas linear-gradient(#FF0018 7%,#FFA52C,#FFFF41,#008018,#0000F9,#86007D 93%)`` to set GUI canvas
2023-12-03 15:52:44 +01:00
Theo Arends
28c8f8cf47 Fix PowerOnState on ESP32 (#20144) 2023-12-02 17:49:02 +01:00
Theo Arends
b7819bcfac ESP32 show LHBT background if `WebColor2` bit0 is not set. Bit0 is default set using #252525 2023-12-02 16:59:04 +01:00
Theo Arends
ad831418e5 Fix SO51 2023-11-24 11:36:20 +01:00
s-hadinger
1c60527099
Berry scale_int, equivalent of scale_uint for signed integers (#20090) 2023-11-23 11:31:26 +01:00
s-hadinger
1cd13d7f66
Fixed changeUIntScale for linearity when expanding range (#20089) 2023-11-23 10:57:47 +01:00
Theo Arends
74aa056650 Final fix ESP32C3 relay toggle
Final fix ESP32C3 relay toggle on restart (#20030)
2023-11-17 16:17:29 +01:00
Theo Arends
5297bab041 Revert "Final fix ESP32C3 relay toggle"
This reverts commit 4489dba8dd.
2023-11-17 16:06:45 +01:00
Theo Arends
4489dba8dd Final fix ESP32C3 relay toggle
Final fix ESP32C3 relay toggle on restart (#20030)
2023-11-17 15:43:42 +01:00
Theo Arends
b02a66a1b6 Fix ESP32C3 relay toggle on restart
Fix ESP32C3 relay toggle on restart (#20030)
2023-11-17 13:02:19 +01:00
Theo Arends
f0162377e2 Fix ESP32-C3 gpio hold
Fix ESP32-C3 gpio hold on non-relay gpios (#20030)
2023-11-16 10:26:21 +01:00
Theo Arends
c1fa07dd51 Fix ESP32C3 ledlink 2023-11-13 10:54:25 +01:00
Theo Arends
098e29d7e0 Update support_esp32.ino 2023-11-10 12:42:13 +01:00
Theo Arends
ede5e398a6 Refactor hardware specific code 2023-11-10 12:24:20 +01:00
Theo Arends
7febc11b8c Fix C2/C6 exception 2023-11-10 11:20:41 +01:00
Theo Arends
211da12342 Update feature list 2023-11-09 15:32:43 +01:00
Theo Arends
c6ca0ff10f Squeeze some bytes out of it 2023-11-09 14:59:31 +01:00
Theo Arends
9b5945a117 Add feature10 bitmap 2023-11-09 14:25:24 +01:00
Jason2866
361c15d63b
Delete homekit.c (#19923) 2023-11-04 13:05:48 +01:00
s-hadinger
46df036b51
Cosmetic changes (#19920) 2023-11-04 11:46:25 +01:00
Theo Arends
63297ec5c9 Start using constexpr in featurelist
Saves 128 bytes.
2023-11-02 17:44:29 +01:00
Theo Arends
6410e72b6c Add max size 2023-10-30 21:52:58 +01:00
Theo Arends
09f473b734 A future proof solution ;-) 2023-10-30 21:47:49 +01:00
Theo Arends
444f4fcd62 Fix ESP32 32MB program flash size 2023-10-30 15:29:01 +01:00
Theo Arends
0ae793a8d4 Save some bytes 2023-10-21 17:37:31 +02:00
Theo Arends
57860b692d Fix GpioRead (#19810) 2023-10-21 17:20:55 +02:00
s-hadinger
356de1a16a
Add command `GpioRead` (#19814)
* Add command ``GpioRead``

* change output
2023-10-21 15:56:40 +02:00
Theo Arends
b6811b2f4e Prep ESP32 I2C bus2 support 2023-10-19 16:59:53 +02:00
Theo Arends
0984c01828 Update changelogs 2023-10-13 14:50:51 +02:00
Theo Arends
d96ed15e95 Bump version v3.1.0.4 2023-10-04 13:52:08 +02:00
Theo Arends
99df8edc2d Fix ESP32 chip version number 2023-10-04 12:47:58 +02:00
Barbudor
335e18e8cb
Allow webbutton up to 32 (#19580)
* Allow webbutton up to 32

* use named const
2023-09-29 09:56:52 +02:00
Christoph Friese
5d97a73ddf
Add ENS16x (air quality) and ENS210 (temp & RH) sensors (#19479)
* Add files via upload

Added ENS16x library enabling read-out of ENS160 and ENS161 sensor component (follow-up of CCS811 and iAQcore)
Added ENS210 library to read out ENS210 temperature & humidity sensor

* Add files via upload

Add air quality sensor readout for ENS160 and ENS161 checking two possible I2C addresses (follow up sensor for CCS811 and iAQcore)
Add temperature and humidity sensor readout checking two possible I2C addresses

* Update BUILDS.md

Add USE_ENS16x and USE_ENS210

* Update decode-status.py

Add USE_ENS16x and ENS210

* Update I2CDEVICES.md

Add USE_ENS16x and USE_ENS210

* Update my_user_config.h

Add USE_ENS16x and USE_ENS210

* Update support_features.ino

Add USE_ENS16x and USE_ENS210

* Update tasmota_configurations.h

Add USE_ENS16x and ENS210

* Update tasmota_configurations_ESP32.h

Add USE_ENS16x and USE_ENS210

* Update xsns_111_ens16x.ino

Corrected I2X number

* Update xsns_112_ens210.ino

Corrected I2C number

* Disable USE_ENS16x and USE_ENS210 by default

* Added code size information

* cut down in libs

* optimize tasmota side

* fix ens16x web display

* final fix on alternate addresses

* update code & RAM usage

---------

Co-authored-by: Barbudor <barbudor@barbudor.net>
2023-09-24 18:30:15 +02:00
Theo Arends
ffd09da89a Fix DS18B20 for ESP32 with over 33 gpios 2023-09-19 15:20:10 +02:00
Theo Arends
81fc4e336b Fix Arduino3 compilation 2023-09-14 14:17:51 +02:00
Theo Arends
2682d82628 Fix ESP32C3 relay click on restart 2023-09-13 23:16:38 +02:00
Theo Arends
16aab339e7 Clean up support command code 2023-09-11 11:45:27 +02:00
Theo Arends
597c3655b0 Fix MAX17043 invalid JSON (#19495) 2023-09-11 11:35:26 +02:00
s-hadinger
f4bc7c34c6
Support for IPv6 link-local zones for esp-idf 5.1 (#19469) 2023-09-06 14:48:12 +02:00
s-hadinger
a781ba3fc2
Fix compilation on Arduino 3 (#19447)
* Fix compilation on Arduino 3

* Fix compilation
2023-09-03 19:02:44 +02:00
s-hadinger
f7c4c16a9c
Support for HDMI CEC protocol (#19434) 2023-09-01 21:46:18 +02:00
stefanbode
2bae1f4368
sorry... (#19429) 2023-08-31 10:50:29 +02:00
stefanbode
3301875983
Added compiler option for doubleclick window (#19428) 2023-08-31 08:09:25 +02:00
Theo Arends
ff17a377cc Allow display of revision v0.0 2023-08-30 16:03:03 +02:00
Theo Arends
62c36a49b3 Add ESP32-C6 GPIO26/28 in template
Add ESP32-C6 GPIO26/28 in template as Red pins used by flash (QIO) but optionally free if DIO/DOUT
2023-08-30 15:14:46 +02:00
Theo Arends
7f24d2027f Fix rotary edge cases (#19164) 2023-08-25 17:06:27 +02:00
Theo Arends
03c72501a5 Finally add ESP32-P4 ;-) 2023-08-25 13:11:00 +02:00
Theo Arends
d5b12c8718 Consolidate esp32 hardware info 2023-08-25 12:48:35 +02:00
Theo Arends
b1fba92e87 Fix idf chip revision 2023-08-25 10:55:20 +02:00
Theo Arends
d340c91cd7 Revert "Fix idf chip revision"
This reverts commit e5cb367581.
2023-08-24 20:52:36 +02:00
Theo Arends
e5cb367581 Fix idf chip revision 2023-08-24 17:48:41 +02:00
Theo Arends
701d33f645 Phase 2 support C2/C6 2023-08-23 13:02:13 +02:00
Theo Arends
0c3b559630 Phase 1 support C2/C6 2023-08-21 16:00:20 +02:00
Theo Arends
2eaa0fcb67 Update switch comments 2023-08-17 23:28:27 +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
Christian Baars
7544d2f23c
fix IRAM_ATTR specified both in function declaration and definition (#19286) 2023-08-10 12:19:18 +02:00
s-hadinger
0b3d6fd146
Prepare for Arduino v3 / esp-idf v5 2nd batch (#19265) 2023-08-05 20:34:24 +02:00
s-hadinger
5c8c7cdfca
Prepare for Arduino v3 / esp-idf v5 (#19264) 2023-08-05 15:11:10 +02:00
Christian Baars
732e4106b8
add wifitest3 (#19259) 2023-08-04 20:17:36 +02:00
Theo Arends
978a21240c Update changelogs 2023-07-24 15:30:48 +02:00
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
Theo Arends
d9be488885 Update comments 2022-12-29 16:10:41 +01:00
Theo Arends
4ee6aee35e Fix ESP8266 relay power on spikes
Fix ESP8266 set GPIO's to input on power on fixing relay spikes (#17531)
2022-12-29 14:46:34 +01:00
Theo Arends
ff3d90c36d Fix teleperiod PUSH_IGNORE_INV
Fix teleperiod PUSH_IGNORE_INV (#17028)
2022-12-29 14:02:48 +01:00
s-hadinger
ef4138bdaa
Support for IPv6 only networks on Ethernet (not yet Wifi) (#17527) 2022-12-27 21:59:34 +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
gemu
1cdd5c3f08
Udisplay support for rgb displays (#17414)
* add gt911

* add rgb display mode

* add gt911

* add gt911

* add gt911

* add sunton descriptor

* fix divide by zero crash with sunton
2022-12-18 14:06:04 +01:00
s-hadinger
5048777e06
Fix IPV6 compilation on ESP8266 (#17429) 2022-12-17 22:41:21 +01:00
s-hadinger
9abe7b1af9
Support for IPv6 DNS records (AAAA) and IPv6 `Ping` for ESP32 and ESP8266 (#17417) 2022-12-17 10:08:35 +01:00
Mathias
fc8039d960
Adding support for ME007-ULS narrow FoV ultrasonic distance sensor (#17376)
* Squashed commit of the following:

commit 1441459a47cff0a43aa61ce47510585ee03649f3
Merge: a9fcbd342 7e27945e5
Author: Mathias Buder <mathias_buder@bose.com>
Date:   Tue Dec 13 09:00:06 2022 +0100

    Merge branch 'development' into me007-narrow-fov-ultrasonic-sensor

commit a9fcbd3428445eb914816f608e064568d16b41e9
Merge: 7bb1049f5 d83119897
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Dec 12 10:33:06 2022 +0100

    Merge branch 'development' into me007-narrow-fov-ultrasonic-sensor

commit 7bb1049f51da8d064462b9499ed479a7675b368e
Merge: 83a5afa7a eee86f01a
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Fri Dec 9 09:30:29 2022 +0100

    Merge remote-tracking branch 'github/development' into me007-narrow-fov-ultrasonic-sensor

commit 83a5afa7ad27fcde1e67008e41a9bfd9c680cccd
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 8 14:47:13 2022 +0100

    [ME007] Added driver version number to MQTT message, small delay between consecutive measurement

commit 9b8667843154f02a23020e655d806ed76ae2e530
Merge: 39180f345 de408921e
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 8 10:12:45 2022 +0100

    Merge branch 'development' into me007-narrow-fov-ultrasonic-sensor

commit 39180f3451fce5f06504195faea0124d73dac1ee
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Wed Dec 7 16:41:26 2022 +0100

    [ME007] Added median filter

commit 01b68e0e6ca147ac03b63b8c71d035563e3bf13b
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Dec 5 23:08:57 2022 +0100

    [ME007] Simplified state maschine within me007_measure()

commit 1c74c6ed3e4097f09792a48420b2016c92e10353
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Dec 5 22:21:16 2022 +0100

    [ME007] Fixed issues from previous pull-request

commit 25b667120fd8d70fcfed36de44f1b7a17d0686be
Merge: 01e0b1809 e7d40b8d1
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Dec 5 10:46:25 2022 +0100

    Merge branch 'development' into me007-narrow-fov-ultrasonic-sensor

    # Conflicts:
    #	tasmota/include/tasmota_template.h

commit 01e0b18096bfffc67673e25152114694caaf110a
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Sun Dec 4 20:53:39 2022 +0100

    [ME007] Minor changes

commit ec00c9b85d223b78586c464bb92d1c7894357a40
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Fri Dec 2 13:08:06 2022 +0100

    [ME007] Added some measurement error statistics

commit c5cf65f82c42195752a88fd1553c74ab68c39cb2
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 1 22:38:07 2022 +0100

    [ME007] Fixed MQTT message

commit ae07d8dd77db47e20578f655ec057a63b30e65ce
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 1 21:56:20 2022 +0100

    [ME007] Minor code refactoring

commit d2b43ca70c716e1b637b9efd3b536506233e5365
Merge: 292f5f6c8 816fd78fb
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 1 16:48:38 2022 +0100

    Merge branch 'development' into me007-narrow-fov-ultrasonic-sensor

commit 292f5f6c81f1659eb225271cdd025eb77da02c6f
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 1 16:47:03 2022 +0100

    [ME007] Added logic to detect sensor at boot and during runtime

commit f17af404fee76bf63b30ed3c9d2175c4e01c03ca
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 1 12:32:19 2022 +0100

    [ME007] Added missing define into language files

commit 7a271abeca36139a43ef96bd461d46ba0c662901
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 1 12:19:23 2022 +0100

    [ME007] Improved snesor measuremnt function

commit fe42ebd1124e2246e4d7afd63c905c251e084b27
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Thu Dec 1 00:43:13 2022 +0100

    [ME007] Updated state maschine to trigger and receive sensor measurements

commit d137e6dec5104b4716428849d99c68bbf407ab42
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Wed Nov 30 20:35:31 2022 +0100

    [ME007] Added initial state maschine to trigger and receive sensor measurements

commit fc3da7b36849df162d9d5496a763ab2beb096aff
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Tue Nov 29 21:28:28 2022 +0100

    [ME007] Updated pin name

commit e9fa9fb771cf15dcd9ed8b63b9194154543ef10e
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Nov 28 22:02:34 2022 +0100

    [ME007] Fixed issue that sensor GPIOs not shown in drop-down list

commit a13e42660183eb4ab91007ca0ea6bf1544687556
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Nov 28 15:06:34 2022 +0100

    [ME007] Added sensor into supported feature list

commit dec17b59ce2905124386f8c90d81656bf104c844
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Nov 28 15:01:58 2022 +0100

    [ME007] Removed log message in Xsns23()

commit 11f479d2ec9d3f4e7552c2f78cdc83914c5b8b94
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Mon Nov 28 10:47:55 2022 +0100

    [ME007] Added GPIOs to tasmota_template_legacy.h and berry

commit 23aec8e5ff4e9fb8ef7d3b01a707641accc1e01e
Author: Mathias Buder <mathias.buder@gmail.com>
Date:   Sun Nov 27 20:10:53 2022 +0100

    [ME007] Initial ME007 driver API setup

* [ME007] Reverted change in .gitignore and platform.ini

* [ME007] Removed dependency to stdlib.h

* [ME007] Adjusted unit to cm

* [ME007] Reverted change in tasmota_template_legacy.h

* [ME007] Changed sensor message tag to three characters

* [ME007] Disabled sensor in my_user_config.h

* [ME007] Added driver code size into commente

Co-authored-by: Mathias Buder <mathias_buder@bose.com>
2022-12-14 11:52:26 +01:00
s-hadinger
f429d41a32
Fix IPv6 compilation for ESP8266 (#17374) 2022-12-13 09:31:43 +01:00
Stephan Hadinger
bde58105d0 More universal way to force IPv4 2022-12-11 16:31:14 +01:00
Stephan Hadinger
1bdb542e50 Fix IPv4 DNS resolution when IPv6 is enabled 2022-12-11 16:24:14 +01:00
Theo Arends
4f70f4d33e
Merge pull request #17342 from stefanbode/shutterdev
Code optimizatons
2022-12-11 10:49:04 +01:00
stefanbode
c20d789fde
Update support.ino 2022-12-10 23:54:09 +01:00
Stephan Hadinger
4a32623a51 IPv6 improvements 2022-12-10 13:44:16 +01:00
Stephan Hadinger
2f1b2ec5fd IPv6 support for Ethernet (ESP32) 2022-12-08 19:06:51 +01:00