Compare commits

...

4288 Commits

Author SHA1 Message Date
Theo Arends
015fa1da89 Add command JsonPP <command>|backlog <command>;... to enable JSON PP only once 2025-04-19 16:56:15 +02:00
Theo Arends
a11e269ca0 Fix Xmodem send over serial 2025-04-19 12:54:53 +02:00
Theo Arends
2831bbfd18 Update changelogs 2025-04-18 10:36:42 +02:00
bovirus
92b3f7d37c
Italian language update (#23309) 2025-04-18 10:26:10 +02:00
s-hadinger
a2d1915692
Base64 split implementation in separate file (#23313) 2025-04-17 22:38:04 +02:00
s-hadinger
082170374c
Berry string literals containing NULL are truncated (#23312) 2025-04-17 22:12:35 +02:00
s-hadinger
c2628c95f3
Berry 'bytes().asstring()' now truncates a string if buffer contains NULL (#23311) 2025-04-17 21:51:03 +02:00
Theo Arends
2bc5f682b0 Add command JsonPP 0..7 to enable (>0) JSON Pretty Print on user interfaces and set number of indents 2025-04-17 15:55:05 +02:00
Theo Arends
cea46bb660 Bump version v14.6.0.1 2025-04-16 14:02:56 +02:00
Theo Arends
b67231483a Update TEMPLATES.md 2025-04-16 11:46:06 +02:00
Theo Arends
e6918d8b9c Fix ESP8266 IPv6 compilation 2025-04-16 11:35:06 +02:00
s-hadinger
7ea95ec6b2
Show network interface priority in 'Status 5' debug logging (#23302) 2025-04-15 13:21:14 +02:00
Theo Arends
8921a42f79 Add filesystem command `UfsList[2]` 2025-04-15 12:35:55 +02:00
Theo Arends
c8181e3290 Fix PZEM GUI address display 2025-04-14 16:13:59 +02:00
Theo Arends
117e503aaa Add PZEM_AC device address in JSON and GUI (#23268) 2025-04-14 15:24:02 +02:00
Theo Arends
3baa110f9d Add support for XMODEM over serial and telnet if enabled with #define USE_XYZMODEM 2025-04-14 13:54:05 +02:00
Theo Arends
a4096ab049 Update changelogs 2025-04-14 10:54:53 +02:00
Theo Arends
83118b9e05 Update changelogs 2025-04-14 10:52:54 +02:00
protectivedad
3a28938b91
HLK-LD2402 Update for firmware 3.3.5+ (#23281)
* Many changes for the newest firmware 3.3.5

added comments and debug lines
added new autogain function (fw 3.3.5+)
changed variables for consistency
ended configuration mode on error
fixed improper JSON response messages
changed timings for new firmware
consolidated post configuration processsing

* code size reduction
updated size extimates

* reworked to reduce code and memory usage

---------

Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2025-04-14 10:44:00 +02:00
s-hadinger
68f019cf43
HASPmota default theme is now Tasmota-style (#23288) 2025-04-13 23:23:51 +02:00
s-hadinger
4707cc068f
HASPmota added 'y2_min' and 'y2_max' to control the second series of 'chart' (#23287) 2025-04-13 21:54:43 +02:00
valentin richard
0604fac3bc
fix(zigbee): fix convertTuyaSpecificCluster datapoint parser -> support multiple data points in the same payload. (#23247)
Co-authored-by: valentin <email@example.com>
2025-04-12 19:12:32 +02:00
gemu
c12974366b
Sml update (#23267)
* rename nthll 64

* fix nthll 64
2025-04-11 15:16:05 +02:00
sfromis
cced48d824
Update uDisplay.h (#23273)
RGB565 value for pink was same as magenta. This is obviously wrong, hence correcting to the "pink" value from the docs.

While I'm far from certain about the "right" shading of color nuances, the correction does "reasonably pink" in my eyes (on a ST7789), and assuming that the value from the docs was sourced from something relevant to the small displays used with Tasmota, I consider the change to be at least a move in the right direction.

Still, the corrected value (FF80C0 in RGB888) does have the name "tea rose" when using HTML color codes as a reference, but "some people" may have more interest in long discussions like what pink "really" is.
2025-04-11 15:15:35 +02:00
Theo Arends
1a8903578f Update changelogs 2025-04-11 15:11:38 +02:00
Jason2866
230ce2c539
Platform 2025.04.30 Tasmota Arduino Core 3.1.3.250411 based on IDF 5.3.2.250403 (#23280) 2025-04-11 13:06:26 +02:00
Norbert
6b7606c958
Fix spelling (#23278) 2025-04-11 08:54:44 +02:00
jetpax
cfe1cee4d3
Replace brotli compressed file serving with gzip (#23274)
* Replace brotli compressed file serving with gzip as it is better supported

* Add HTTP_POST support
2025-04-10 23:12:37 +02:00
s-hadinger
2999eed8b9
Berry 'readline' when a line is exactly 98 characters (#23276) 2025-04-10 22:57:03 +02:00
Theo Arends
3f82228905 Fix MIEL_HVAC temperature saving 9k code size in addition (#23271) 2025-04-10 11:32:43 +02:00
s-hadinger
7ddf8abf90
Ensure AlpineJS is in PROGMEM (#23264) 2025-04-07 19:49:19 +02:00
Theo Arends
215b37bf69 Add Alpine.js 2.8.2 support (#23259) 2025-04-07 14:42:35 +02:00
Theo Arends
342bb2cb7b Update changelogs 2025-04-07 10:28:55 +02:00
s-hadinger
2096411be6
Fix esp_idf_http to make strings 'weak' (#23256) 2025-04-06 22:51:38 +02:00
jetpax
929582b1af
Expose esp_http_server to Berry (#23206)
* Expose esp_http_server to Berry

* Fix conditional build defines

* Fix Berry returns, dangling pointer

* Use correct Berry returns

* Remove debug code

* cleanup

* add BERRY to conditionals to avoid confusion
2025-04-06 22:27:48 +02:00
Thomas Büngener
4ed48feaa2
SML: CRC for binary SML (#23205)
* SML: CRC for binary SML parsing

* switch algos

* improve errormessage on buffer overflow

* move crc variable to their own struct

* Use Flag bit to disable CRC, auto-detect algorithm,
data in own struct
debug log

* configure and enable/disable via special option "=soC,bufsz,mode", mode 16 autodetect.

* fix 15 vs 0xF

* remove benchmark code

* fix typo in comment

* Byteflip for CRC
2025-04-05 11:22:22 +02:00
Theo Arends
c121dbcd4a Update changelogs 2025-04-05 11:21:03 +02:00
s-hadinger
e8baea464f
TLS increase timeout and fix crash (#23249) 2025-04-05 00:04:36 +02:00
Theo Arends
2bf67b96a6 Prep XYZModem support on Serial/USB and telnet 2025-04-01 23:15:28 +02:00
s-hadinger
0cb6a8ba24
Fix typo (#23232) 2025-04-01 23:10:30 +02:00
Theo Arends
39494f1287 Update changelogs 2025-04-01 23:10:08 +02:00
Qowy
90c690e67a
fix DIMMER ! to use correct dim value (#23196) 2025-04-01 22:57:58 +02:00
s-hadinger
08f20b9404
Smoothen light gamma curve when using Fade (#23230) 2025-04-01 22:51:56 +02:00
Theo Arends
dfabe8cc0f Update change logs 2025-03-31 11:49:57 +02:00
protectivedad
b43d360d37
fixes for ina226 driver (#23197)
adjust current/voltage timing to be consistent
fix missing comma in json

Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2025-03-31 11:45:59 +02:00
Theo Arends
2f7793ddcf Fix Zigbee XModem wait loop 2025-03-29 16:37:48 +01:00
Theo Arends
3c70b728ac Fix ESP32 compile without webserver 2025-03-28 13:58:22 +01:00
Theo Arends
289120ee92 Fix telnet buffer overrun detection 2025-03-28 12:16:32 +01:00
s-hadinger
b77b622fbe
Berry bytes add 3 (#23200)
* Berry bytes add with 3 bytes

* add changelog
2025-03-27 22:55:42 +01:00
s-hadinger
a47e6f1496
Berry avoid bootloop when Berry is disabled (#23199) 2025-03-27 21:08:32 +01:00
Theo Arends
74757ee7da Fix telnet response if seriallog is 0 2025-03-27 17:27:48 +01:00
Qowy
ea2baee3b8
fix fadeGammaReverse is applied to the time variable (#23194) 2025-03-27 10:17:43 +01:00
s-hadinger
f4bb9d98b6
HASPmota improve parsing (#23192) 2025-03-26 22:34:12 +01:00
Theo Arends
87b95f798a Extend command GPIO with different display options and allowing updating of module GPIO's in one go 2025-03-26 16:43:13 +01:00
Theo Arends
da4dc56b16 Bump version v14.5.0.3 2025-03-25 17:04:44 +01:00
Theo Arends
714ad233e0 Changed output of commands GPIO and GPIOs swapped 2025-03-25 16:53:26 +01:00
protectivedad
2da631e442
missing edits for last commit (#23185)
Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2025-03-25 15:22:27 +01:00
Theo Arends
6f47f23f7a Add terminate telnet session with command exit or quit 2025-03-25 13:47:41 +01:00
Theo Arends
69fca99ac1 Add telnet compile options 2025-03-25 11:19:53 +01:00
Theo Arends
a3b564f4f3 Keep telnet output while serial logging was disabled 2025-03-24 12:16:35 +01:00
Theo Arends
52f3306f15 Disable telnet output colors on command TelnetColor 0 2025-03-24 12:04:01 +01:00
Theo Arends
9d6640a42e Change command TelnetColor 0 to disable color codes from output 2025-03-24 10:57:48 +01:00
Theo Arends
307e1d9c29 Fix telnet line length regression 2025-03-23 22:36:42 +01:00
Theo Arends
f71ca3e0a2 Fix ESP32 telnet response 2025-03-23 17:34:44 +01:00
Theo Arends
a3d86eebf0 Telnet more functional bling bling 2025-03-23 13:23:03 +01:00
s-hadinger
f331a64ac3
HASPmota autostart when pages.jsonl exists (#23181) 2025-03-22 23:23:57 +01:00
Theo Arends
caac9f1257 Reduce telnet stack usage fixing ESP8266 exceptions 2025-03-22 17:33:27 +01:00
Theo Arends
b47a1bc1e2 Fix telnet async input 2025-03-22 12:04:02 +01:00
Qowy
9e3ad52356
fix wrong comment in xdrv_79_esp32_ble.ino (#23171) 2025-03-22 10:30:20 +01:00
protectivedad
38ceafe789
upgrades and fixes for HLK-LD2402 driver (#23164)
Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2025-03-22 10:28:15 +01:00
Theo Arends
ddc1439edf Fix webcam updatestats 2025-03-22 10:23:15 +01:00
DavidPletcher
3827bca3cc
remove malformed clutter from webcam status0 JSON response (#23177)
A regression was added in commit 01154e949, which prepends
clutter to the status0 JSON status message.

Example:
```
$ curl 'http://webcam/cm?cmnd=Status0' -u admin:password ; echo
{s}Webcam Frame rate{m}0 FPS{e}{"Status":{"Module":0,"DeviceName":"...
```

The response is not properly formatted JSON and breaks client software.

The problem occurs because a new case statement was added for the
purpose of injecting webcam stats into the JSON status message, but
a break statement is missing and execution falls through to the
following case, which prepends garbage to the output buffer.

With this one-line fix in place, the output is properly formatted:
```
$ curl 'http://tahoe-front-door-cam/cm?cmnd=Status0' -u admin:password ; echo
{"Status":{"Module":0,"DeviceName":"
```

Note that the prior case for FUNC_EVERY_SECOND is also missing a break
statement. That looks wrong to me but it's unrelated to fixing this
issue and I'm inclined to punt that concern to others who are more
familiar with this code.
2025-03-22 08:18:01 +01:00
Theo Arends
8183a9ed3b Add telnet bling bling 2025-03-21 23:41:01 +01:00
Theo Arends
00e2d1d430 Fix filelog and save some bytes 2025-03-21 17:29:04 +01:00
Theo Arends
863c6d1214 Fix telnet regression 2025-03-21 16:49:25 +01:00
Theo Arends
73cace5274 Add telnet graceful close 2025-03-21 16:38:26 +01:00
aronk
1ada6da6b8
[MI BLE] added support for alternative version of LYWSD02MMC (#23169)
* [MI BLE] added support for alternative version of LYWSD02MMC

* Bumped MI32_VERSION to 0.9.2.5
2025-03-21 14:30:17 +01:00
Theo Arends
fbb752d8c2 Add Telnet server using command Telnet <0|1|port>[,<IP filter>] 2025-03-20 23:11:30 +01:00
Theo Arends
fb6640b91f Fix ESP32 receive incomplete serial data over 128 bytes (#23156) 2025-03-18 15:12:30 +01:00
s-hadinger
c0d15de965
Berry 're.dump()' (#23162) 2025-03-17 21:34:59 +01:00
Theo Arends
3764e88ed2 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2025-03-17 14:06:02 +01:00
Theo Arends
0ea1f8e632 Change RCSwitch RCSWITCH_SEPARATION_LIMIT from 4100 to 3600 2025-03-17 14:05:38 +01:00
Jason2866
234c5ea170
check fw size against partition (#23160) 2025-03-17 13:59:25 +01:00
s-hadinger
ce92723c41
Berry update from upstream (#23159) 2025-03-17 08:27:03 +01:00
s-hadinger
e1f7ee26fa
Matter prepare for ICD cluster (#23158) 2025-03-16 22:38:36 +01:00
s-hadinger
a97d306a16
Berry include changes in 're' to HASPmota (#23153) 2025-03-15 18:58:21 +01:00
Theo Arends
508992258f Update changelogs 2025-03-14 11:39:59 +01:00
s-hadinger
1b51aef911
Berry now accepts 'bytes()' as precompiled patterns, added 're.compilebytes()' (#23149) 2025-03-13 23:38:55 +01:00
s-hadinger
6486ba3b26
Fix typo of be_set_ctype_func_hanlder (#23147) 2025-03-13 17:49:28 +01:00
Bartosz Nitka
9b4eb64caa
Fix unused ret_code2 in xdrv_52_9_berry (#23146) 2025-03-13 17:22:21 +01:00
bovirus
6d376a079e
Italian language update (#23144) 2025-03-12 19:00:50 +01:00
protectivedad
69c3863b14
HLK-LD2402 fix for missing '|' (#23142)
Signed-off-by: Anthony Sepa <protectivedad@gmail.com>
Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2025-03-12 15:26:02 +01:00
Theo Arends
ac8236abe1 Update changelogs 2025-03-12 11:31:00 +01:00
s-hadinger
16e9d105ba
Update flasher for Sonoff ZBBridge Pro (#23136) 2025-03-11 23:04:51 +01:00
protectivedad
f3ae3bec4b
Added support for hlk-ld2402 tasmota_xsns_sensor (#23133)
This is based on the xsns_102_ld2410s.ino.

* Available commands:
* LD2402_Status 0|1|2 - showing parameters|sensor readings|firmware info
* LD2402_ReRead - reread common, motion and micro threshold parameters from device
* LD2402_SetCommon 7-100,0-65535 - set common: maximum distance, disappearance delay
* LD2402_SetMotion n,n1..n16 - set motion threshold values (16)
* LD2402_SetMicro n,n1..n16 - set micro threshold values (16)
* LD2402_Mode 0/1 - set device output mode 0-normal, 1-engineering
* LD2402_AutoUpdate 3.0,2.0,3.0 - start autoupdate trigger,keep,micro magnification factor
* LD2402_Follow 0/n - reports every n seconds

Signed-off-by: Anthony Sepa <protectivedad@gmail.com>
Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2025-03-11 17:03:54 +01:00
Theo Arends
cae4551762 Fix ESP32 compilation V9240 2025-03-11 15:12:02 +01:00
Theo Arends
007608914c Support Vango Technologies V924x ultralow power, single-phase, power measurement (#23127) 2025-03-11 14:57:11 +01:00
Ivan Chopa
758ba17dde
Added V9240 energy metering chip driver (#23127)
* Add V9240 driver

* Addendum to previous commit

* Add driver code similar to the prototype

* they are talking to each other

* Added implementation of calibration commands

* continued work of calibration

* Maybe it works.

* Post-merger control

* Change driver number 34 to 25

* Correction of other comments

* Removed  duplicate code

* Adjusting the calibration procedure according to the behavior stated here. To the extent possible.
https://tasmota.github.io/docs/Power-Monitoring-Calibration/#calibration-procedure

* Removed added trailing whitespaces

* Fixing several small issues.
2025-03-11 14:28:07 +01:00
Giuliano
08fae4bcd6
typo fix (#23122) 2025-03-11 11:32:00 +01:00
s-hadinger
f305113d6d
Removed USE_WEBCLIENT and default USE_WEBCLIENT_HTTPS (#23132) 2025-03-10 22:37:27 +01:00
Marius Bezuidenhout
7b8d2fe93d
BMS additional features (#23125)
* Added more data from BMS

* Updated mcp2515 code
2025-03-09 16:27:10 +01:00
Giuliano
714435be1c
Remove misleading comment (#23124) 2025-03-09 13:42:44 +01:00
Theo Arends
e3eb47078f Fix ESP32 intermittent exception on WiFi AP cannot be reached (#23115) 2025-03-08 15:19:45 +01:00
Jason2866
a0c8ac4f80
enable FTP for all esp8266 >= 4MB (not only for 4MB variant) (#23120) 2025-03-08 13:07:58 +01:00
Jason2866
c926b4b3a6
enable wifi sleep for c3 (#23117) 2025-03-07 14:43:31 +01:00
s-hadinger
3f93d2deee
Berry remove 'Leds.create_matrix' from the standard library waiting for reimplementation (#23114) 2025-03-06 23:11:16 +01:00
s-hadinger
06aa356bc3
Berry load files in '/.extensions/' then in '/' (#23113) 2025-03-06 21:15:59 +01:00
Theo Arends
58632d67db Update changelogs 2025-03-06 16:17:54 +01:00
s-hadinger
e26a2cdac9
Berry prevent 'import' from hiding a solidified class (#23112) 2025-03-06 14:45:34 +01:00
Jason2866
72535db185
prep Hybrid: add Hybrid compile examples (#22474) 2025-03-05 14:27:47 +01:00
Theo Arends
f2bf8b96e7 Increase rcswitch H/L changes to 64 bits 2025-03-05 12:32:07 +01:00
Theo Arends
549ca6e32f ESP32 enable webcam version 2 (#18732) 2025-03-04 10:16:13 +01:00
Theo Arends
72520e0743 Bump version v14.5.0.2 2025-03-02 16:17:07 +01:00
Jason2866
aed82dc8b2
Platform 20250330 (#23088)
* Platform 2025.03.30 Tasmota Arduino Core 3.1.3.250302 based on IDF 5.3.2.250228

* Arduino core 3.1.3.250302
2025-03-02 16:04:56 +01:00
gemu
2e35a2ab93
some fixes and formatting (#23084) 2025-03-01 15:11:35 +01:00
Jason2866
3c171c1ed8
Compile lib NeopixelBus only for esp8266 (#23077)
* force mode strict for pixels lib
* Use lib NeoPixelBus only for esp8266
2025-02-27 12:15:20 +01:00
Theo Arends
481f2cd8e1 Update changelogs 2025-02-26 17:22:13 +01:00
s-hadinger
9a98db9773
Berry 'global.undef()' to undefine a global variable (#23073) 2025-02-26 15:30:04 +01:00
s-hadinger
e92e411040
Berry minor fixes to remove warnings (#23071) 2025-02-25 22:28:13 +01:00
s-hadinger
aecba92da4
Update be_mapping_utils.c, add final newline to avoid compilation warning 2025-02-25 21:14:09 +01:00
zzdovydas
4ee4b5908f
Fix LT Language (#22971) (#23064) 2025-02-25 11:19:43 +01:00
Theo Arends
3f74bc83e5 Update changelogs / gpioviewer / wizmote 2025-02-24 15:23:59 +01:00
Theo Arends
fd0501035d Update changelogs 2025-02-24 14:51:29 +01:00
s-hadinger
670fab7ead
Berry 'introspect.solidified()' to know if a Berry object is solidified in Flash or in RAM (#23063)
* Berry 'introspect.isconst()' to know if a Berry object is solidified or in RAM

* change to solidified

* fix typo
2025-02-24 14:05:58 +01:00
s-hadinger
375864b23b
Berry 'tasmota.when_network_up()' and simplified Matter using it (#23057) 2025-02-23 19:19:42 +01:00
Jason2866
788ac574ac
remove tagging gemu2015 for every opened bug report 2025-02-23 14:27:42 +01:00
Theo Arends
5aa7d08c91 Fix too many zeros in RCSwitch received data regression from v14.4.1.4 (#23050) 2025-02-23 13:54:39 +01:00
Theo Arends
b4c61325cb Add optional WizMote commission 2025-02-22 18:12:36 +01:00
Theo Arends
d10eafc500 Update changelogs 2025-02-22 15:22:20 +01:00
Theo Arends
90ebff552d Update changelogs 2025-02-22 15:01:37 +01:00
s-hadinger
0c26698ba6
Leds Panel add checkbox to enable/disable the feature (#23048) 2025-02-22 12:33:34 +01:00
s-hadinger
1db796c40f
LVGL Mirroring add checkbox to enable/disable the feature (#23047) 2025-02-22 12:00:36 +01:00
s-hadinger
b8459eb685
LVGL Berry fix lvgl_berry_fix_lv_style_prop_arr (#23042) 2025-02-21 09:15:03 +01:00
Giuliano Zaro
b1f3d6268d
Allow acl in mqtt when client certificate is in use (#22998)
* Allow acl in mqtt

Acl in mqtt needs user name if 'use_identity_as_username' is not true. It also seems that login in mqtt don't accept an user with an empty password, then reenabled both

* Add new define for mosquitto

Keep compatibility with AWS_IOT

* Better approach to custom client certificate

Don't duplicate defined check. Let USE_MQTT_AWS_IOT automatically set USE_MQTT_CLIENT_CERT and use latter in all code

* with mosquitto user and password may be empty

When mosquitto 'use_identity_as_username' option is enabled password and user are not used
2025-02-20 22:51:52 +01:00
s-hadinger
7a4d8a5fb1
LVGL experimental mirroring of display on Web UI (#23041) 2025-02-20 21:45:45 +01:00
s-hadinger
0ab5548615
LVGL, prepare for HASPmota theme, change: no-grow when clicked, DPI set to 160 (#23040) 2025-02-20 21:13:35 +01:00
s-hadinger
1af1057e66
Berry experimental driver for AXP2101 for M5Core2v1.1 (#23039) 2025-02-20 20:40:53 +01:00
Jason2866
039960153a
typo C3 not C2 2025-02-20 15:01:37 +01:00
Theo Arends
b4c1cd654f Bump version v14.5.0.1 2025-02-18 16:14:27 +01:00
Theo Arends
c6b975561f Update changelogs 2025-02-18 12:16:49 +01:00
s-hadinger
4306823ba6
HASPmota exception when clicking on a checkbox (#23022) 2025-02-17 23:04:04 +01:00
s-hadinger
9b258cadcf
Wrong RMT channels for ESP32S3, now depends on 'soc_caps.h' (#23021) 2025-02-17 22:24:50 +01:00
Theo Arends
871723b6f7 Update changelogs regarding ESP32 Webcam resolution changes since v14.4.0 (#22901) 2025-02-17 14:16:52 +01:00
Theo Arends
3c66ace01b Update templates 2025-02-17 10:04:07 +01:00
Theo Arends
41af475cdb Update changelogs 2025-02-16 15:04:57 +01:00
Theo Arends
3c5f22b31f Update changelogs 2025-02-16 14:57:38 +01:00
Jason2866
cb333a5a38
wifi begin is needed to get MAC address (#23011) 2025-02-16 12:42:14 +01:00
Giuliano Zaro
c39a7d924a
Fix typo (#22996)
Found while trying to upload custom files on esp FS
2025-02-16 12:41:58 +01:00
s-hadinger
f07af885a9
Berry Leds Panel remove unused JS code (#23010) 2025-02-15 22:58:31 +01:00
s-hadinger
f1be1b8ba9
HASPmota optimize sort (#23009) 2025-02-15 22:58:24 +01:00
s-hadinger
cfc11b5e83
Fix memory corruption in bytes().appendb64() 2025-02-15 22:08:00 +01:00
s-hadinger
a939b4973e
Remove unwanted tab 2025-02-15 21:41:44 +01:00
s-hadinger
d805cef66e
Berry bytes add appendb64 (#23008)
* Berry Leds_panel minor fix

* Fix

* Berry add 'bytes().appendb64()'

* fix lib
2025-02-15 21:09:40 +01:00
s-hadinger
64ec55db4e
Leds panel fixed port (#23007)
* Berry Leds_panel minor fix

* Fix
2025-02-14 18:41:05 +01:00
Theo Arends
a2af12c969 Add support for WiZMote with WiFi disabled 2025-02-14 12:55:58 +01:00
Theo Arends
f383c877c6 Fix unwanted WiZMote restart 2025-02-13 21:32:34 +01:00
Theo Arends
cc14f721f9 Remove near future bitly advertising 2025-02-13 17:52:11 +01:00
Theo Arends
ccf8902515 Update changelogs 2025-02-13 10:01:29 +01:00
s-hadinger
f3dc35e9ca Solidified Code updated 2025-02-12 21:38:27 +00:00
s-hadinger
0b3be314e7
Berry fixed parser error in rare case (#22997) 2025-02-12 22:37:48 +01:00
Jason2866
a9150dc703
revert accidentally change of rgb order 2025-02-12 18:36:26 +01:00
Theo Arends
c076331fad Add support for Wiz Smart Remote using #define USE_WIZMOTE and command SetOption164 1 2025-02-12 17:45:06 +01:00
s-hadinger
8621b9adf4
Add missing comma 2025-02-12 16:58:26 +01:00
s-hadinger
bc7a1f5dbc
'MqttTLS' field in 'Status 6' to indicate if the MQTT connection is encrypted (#22995) 2025-02-12 14:56:47 +01:00
Giuliano Zaro
3ef9fe9f6e
Fix typo (#22991) 2025-02-12 10:04:46 +01:00
Jason2866
1910aba79f
Update sdkconfig.defaults to actual
used from Tasmota Arduino Lib Builder
2025-02-11 21:55:30 +01:00
Jason2866
dbcfe486af
no issues for scripter problems 2025-02-11 13:56:33 +01:00
Jason2866
214b392839
add esp32-c6 to objdump pio script 2025-02-11 11:58:32 +01:00
Theo Arends
b9bc3580f4 Add support for Lithuanian language translations by zzdovydas (#22971) 2025-02-10 11:32:55 +01:00
Thomas Reitmayr
b07bd68046
Utilize ESP-IDF's LCD driver for pushing pixels to RGB displays with ESP32-S3 (#22970)
This commit is an optimization of code and possibly performance for pushing
pixel data to an RGB display with an ESP32-S3. It uses ESP-IDF's LCD driver
for doing so and replaces multiple code paths in the previous implementation.
No code for other ESP32 variants has been changed.

Also see the discussion arendst/Tasmota#22553
2025-02-09 21:58:50 +01:00
s-hadinger
7a97a8fa98
Berry compile typo in Partition_Wizard (#22978) 2025-02-09 18:40:15 +01:00
s-hadinger
1b2fc5eccc
Berry make HASPmota and Matter use 'tasmota.defer()' (#22977) 2025-02-09 18:39:32 +01:00
Giuliano Zaro
e7f5ecc2d0
Typo fix (#22973)
Address #22957
2025-02-09 18:32:53 +01:00
s-hadinger
ff5b4956c8
Berry 'tasmota.defer()' (#22976) 2025-02-09 17:56:38 +01:00
zzdovydas
5a6b219971
Add Lithuanian language to Tasmota (#22971)
* create_lt_LT_file

* half_done

* add_150_lt_translations

* remove_duplicates

* finish_lt_translations

* change_translation_description

* add_lang_lt_to_config_files
2025-02-09 17:03:08 +01:00
Theo Arends
99cbdf687d Add berry control over TWAI rx queue size 2025-02-09 16:12:38 +01:00
Jason2866
57e4d18d26
Refactor Berry solidified artifact upload 2025-02-05 12:51:02 +01:00
Jason2866
d4a8952c34
refactor Berry artifact download and push 2025-02-05 11:53:06 +01:00
Jason2866
28b22de7e4
Last try for today 2025-02-04 20:11:34 +01:00
Jason2866
f65646ba80
Delete lib/libesp32_lvgl/lv_haspmota/src/solidify/berry_haspmota directory 2025-02-04 20:04:11 +01:00
Jason2866
f014299adc
Delete lib/libesp32_lvgl/lv_binding_berry/src/solidify/berry_lvgl directory 2025-02-04 20:03:52 +01:00
Jason2866
af4ec3e0d0
Delete lib/libesp32/berry_tasmota/src/solidify/berry_tasmota directory 2025-02-04 20:03:15 +01:00
Jason2866
f1e5b576ba
Delete lib/libesp32/berry_matter/src/solidify/berry_matter directory 2025-02-04 20:02:53 +01:00
Jason2866
c4dd9839c9
Delete lib/libesp32/berry_animate/src/solidify/berry_animate directory 2025-02-04 20:02:29 +01:00
Jason2866
db96993e50
Update Tasmota_build_devel.yml 2025-02-04 20:01:47 +01:00
Jason2866
35a27d4541
oh my, what a endless story mess 2025-02-04 19:12:20 +01:00
Jason2866
f727013373 Solidified Code updated 2025-02-04 18:10:24 +00:00
Jason2866
d54dfa6bc4
Let's try if solidified code is back at correct place! 2025-02-04 19:07:30 +01:00
Jason2866
a07973e866
so ugly with new GH Actions up / download artifact 2025-02-04 19:02:39 +01:00
Jason2866
23ae0db9a8
Delete lib/libesp32/berry_tasmota/src/berry_tasmota directory 2025-02-04 18:29:49 +01:00
Jason2866
89b1df6a81
Delete lib/libesp32/berry_matter/src/berry_matter directory 2025-02-04 18:29:12 +01:00
Jason2866
117c1f68b7
Delete lib/libesp32/berry_animate/src/berry_animate directory 2025-02-04 18:28:23 +01:00
Jason2866
1988cd620d
Delete lib/libesp32/berry/berry_header directory 2025-02-04 18:27:55 +01:00
Jason2866
470065e36b
Delete lib/libesp32_lvgl/lv_haspmota/src/berry_haspmota directory 2025-02-04 18:26:57 +01:00
Jason2866
d94e680b51
Delete lib/libesp32_lvgl/lv_binding_berry/src/berry_lvgl directory 2025-02-04 18:26:20 +01:00
Jason2866
c7d4a2a104
switch off Berry solidified code pushing
until found the solution to push in correct folder
2025-02-04 18:25:56 +01:00
Jason2866
8bf10f0b9a Solidified Code updated 2025-02-04 17:22:01 +00:00
Jason2866
ed52e711a9
Delete lib/libesp32_lvgl/lv_haspmota/src/berry_haspmota directory 2025-02-04 18:21:03 +01:00
Jason2866
6ffb783321 Solidified Code updated 2025-02-04 17:20:53 +00:00
Jason2866
c4d2f010ef
Delete lib/libesp32_lvgl/lv_binding_berry/src/berry_lvgl directory 2025-02-04 18:20:16 +01:00
Jason2866
1c0327e2c1 Solidified Code updated 2025-02-04 17:16:32 +00:00
Jason2866
63845ad3e8
Delete lib/libesp32_lvgl/lv_haspmota/src/solidify/berry_haspmota directory 2025-02-04 18:15:48 +01:00
Jason2866
268a7267ac
Delete lib/libesp32_lvgl/lv_haspmota/src/berry_haspmota directory 2025-02-04 18:15:37 +01:00
Jason2866
a9c39fe098
Delete lib/libesp32_lvgl/lv_binding_berry/src/solidify/berry_lvgl directory 2025-02-04 18:15:09 +01:00
Jason2866
ea584f60c8
Delete lib/libesp32_lvgl/lv_binding_berry/src/berry_lvgl directory 2025-02-04 18:14:38 +01:00
Jason2866
2c0172d7d5 Solidified Code updated 2025-02-04 17:14:14 +00:00
Jason2866
94e2a91bbd
Delete lib/libesp32/berry_animate/src/berry_animate directory 2025-02-04 18:13:35 +01:00
Jason2866
dcc407889a
Delete lib/libesp32/berry_matter/src/berry_matter directory 2025-02-04 18:12:59 +01:00
Jason2866
97cf0a4baa
Delete lib/libesp32/berry_tasmota/src/berry_tasmota directory 2025-02-04 18:12:18 +01:00
Jason2866
6421d6b1ab
Delete lib/libesp32/berry_tasmota/src/solidify/berry_tasmota directory 2025-02-04 18:08:45 +01:00
Jason2866
b02ac268ad Solidified Code updated 2025-02-04 17:08:36 +00:00
Jason2866
2ac886a7f8
Delete lib/libesp32/berry_matter/src/solidify/berry_matter directory 2025-02-04 18:07:50 +01:00
Jason2866
8f641238b6
Delete lib/libesp32/berry_animate/src/solidify/berry_animate directory 2025-02-04 18:07:03 +01:00
Jason2866
2c8c5ae6b9
Update Tasmota_build_devel.yml 2025-02-04 18:06:20 +01:00
Jason2866
892e29f599
adopt the release workflow to the changed GH actions 2025-02-04 15:27:38 +01:00
arendst
a9996ecc40 Solidified Code updated 2025-02-04 14:14:42 +00:00
Christian Baars
9be9bb8af3
faster 8266 builds, ignore audio libs (#22942) 2025-02-04 15:12:51 +01:00
arendst
518df07ba1 Solidified Code updated 2025-02-04 14:07:48 +00:00
Theo Arends
c9cd6aae1d Bump version v14.4.1.4
- Formatter `%_U` for `ext_snprintf_P()` to print uint64_t variable as decimal equivalent to `%llu`
- Support for RC-switch decoding of 64-bit received data
2025-02-04 15:07:03 +01:00
Jason2866
ab9ad562cb Solidified Code updated 2025-02-04 13:39:19 +00:00
Jason2866
0b95779947
Move safeboot files in folder "firmware/firmware" 2025-02-04 14:37:41 +01:00
Jason2866
0ba224bf9a Solidified Code updated 2025-02-04 11:22:34 +00:00
Jason2866
427db230fc
Platform 2025.02.30 Tasmota Arduino Core 3.1.1.250203 based on IDF 5.3.2.250120 (#22943) 2025-02-04 12:21:45 +01:00
Jason2866
670d7bd8eb Solidified Code updated 2025-02-03 15:43:23 +00:00
Jason2866
cba8723c59
Gh: * fix download berry artifacts 2025-02-03 16:41:54 +01:00
Jason2866
c773a95ff7
* fix language image artifact upload 2025-02-03 16:29:21 +01:00
Jason2866
35e2d43191
Next try to fix GH actions syntax 2025-02-03 16:19:16 +01:00
Jason2866
8a0e2d0604
* fix yml action syntax 2025-02-03 16:08:21 +01:00
Jason2866
66a1f04414
fix compile 2025-02-03 14:29:20 +01:00
Jason2866
0c898b8d75
Gh fix part 2 (#22928)
* fix language artifact upload
2025-02-03 13:51:04 +01:00
Jason2866
299f983610
GH actions changes part 1 (#22927) 2025-02-03 13:40:58 +01:00
Christian Baars
aaa49f84ab
fix 8266 builds, add missing guards (#22924) 2025-02-03 11:23:11 +01:00
Christian Baars
def7ede895
add opus/webm encoding (#22923) 2025-02-02 21:49:11 +01:00
Theo Arends
e8ca96008f Add #define FIX_JSON_HEXADECIMAL to change JSON hexadecimal value "FF5F78" into "0xFF5F78" (#22919) 2025-02-02 16:08:50 +01:00
Theo Arends
943a0b1e6c Update changelogs 2025-02-01 17:45:10 +01:00
s-hadinger
0bc319acb5
Berry 'tasmota.settings' entries for PixelType (#22912) 2025-01-31 22:07:44 +01:00
s-hadinger
d72ec454c0
LVGL add 'lv.set_paint_cb()' to register a callback when screen is refreshed (#22909) 2025-01-31 12:55:58 +01:00
s-hadinger
0288157fdb
Berry callback now passes 5 arguments instead of 4 (in line with documentation) (#22908) 2025-01-31 12:20:52 +01:00
bovirus
7dd6b999ca
Italian language update (#22907) 2025-01-31 10:54:55 +01:00
Jeroen Vermeulen
34b173e953
Added C8-CO2-5K CO2 Sensor (#22905)
* Added the C8-CO2-5K CO2 sensor.

* Small improvements

* Renamed one var with incorrect name.
2025-01-31 09:34:55 +01:00
Theo Arends
9d963ce599 Update heatfan.be 2025-01-30 15:09:33 +01:00
Theo Arends
f4bc628940 Add Berry example for HeatFan WiFi Controller 2025-01-30 13:56:05 +01:00
s-hadinger
0dcd38186f
Berry 'tasmota.add_rule_once' and auto-remove rules with same pattern and id (#22900) 2025-01-29 22:48:44 +01:00
s-hadinger
9bb7b7913a
Berry driver for PN532 NFC/Mifare reader (#22899) 2025-01-29 21:48:30 +01:00
s-hadinger
60570dec76
HASPmota support for 'buttonmatrix' events (#22898) 2025-01-29 21:34:56 +01:00
Theo Arends
95e93b8f33 Add berry heatfan 2025-01-29 16:25:38 +01:00
Norbert
9613004bb4
Fix typo (#22890) 2025-01-27 15:54:03 +01:00
Theo Arends
b167955e87 Change GPIOViewer from v1.6.0 to v1.6.1 (No functional change) 2025-01-26 15:48:44 +01:00
Theo Arends
18d99daa72 Update xdrv_73_8_lorawan_bridge.ino 2025-01-26 15:31:26 +01:00
Theo Arends
4d9dd0aa3f Fix LoraWan manufacturer decoding (#22880) 2025-01-26 15:26:20 +01:00
Theo Arends
53dee5b002 Add GPS driver select baudrate using GPIO GPS_RX1 (9600bps), GPS_RX2 (19200bps) or GPS_RX3 (38400bps) (#22869) 2025-01-25 14:15:11 +01:00
s-hadinger
1065db5831
LVLG/HASPmota add color names from OpenHASP (#22879) 2025-01-25 13:59:26 +01:00
s-hadinger
0471f0f3c5
Berry driver for AXP2102 and M5CoreS3 (#22878) 2025-01-25 11:17:43 +01:00
s-hadinger
beb967ccd4
Command 'PixelType' to change the WS2812 color order and channel number (#22876) 2025-01-24 21:21:35 +01:00
Theo Arends
a91771e0cf Change Berry gpio.pin_mode frees PWM on pin 2025-01-24 16:33:12 +01:00
Theo Arends
5cbe5fe9e4 update changelogs 2025-01-23 10:35:54 +01:00
s-hadinger
b253b344c2
Berry tasmota.global.tele_period and tasmota.settings.tele_period (#22865) 2025-01-22 18:13:48 +01:00
Theo Arends
fa4f2123cf Refresh analog.ino 2025-01-22 17:24:43 +01:00
Theo Arends
9f3f234ac9 Update changelogs 2025-01-22 15:26:37 +01:00
s-hadinger
4b69d30a5f
Display template for Waveshare ESP32C6 LCD 1.47 (#22863) 2025-01-22 11:23:20 +01:00
Giuliano Zaro
cd0743c6ed
Remove user ca headers (#22850)
Since local CA files are user made files add them to gitignore (as already done for user_config_override.h)
2025-01-19 20:48:49 +01:00
Theo Arends
ed1c6e2d9e Update changelogs 2025-01-18 16:30:40 +01:00
s-hadinger
a7ee6054b5
Berry 'serial.read()' read only 'n' bytes (#22835) 2025-01-17 22:26:46 +01:00
Jason2866
a49e924b53
Platform 2025.01.31 Tasmota Arduino Core 3.1.1.250109 based on IDF 5.3.2.250106 (#22832) 2025-01-17 17:19:32 +01:00
TheHexaMaster
ebbef97cde
DS3231 bus2 support (#22824)
* DS3231 bus2 support

Added BUS2 suport for DS3231. Tested on ESP32 S3

* Update xdrv_56_rtc_chips.ino

Typo mistake
2025-01-17 11:07:37 +01:00
Theo Arends
3068a48d90 GPIOViewer from v1.5.9 to v1.6.0 (No functional change) 2025-01-16 16:47:16 +01:00
anishsane
5ac1fdb8fe
Added "cam":1 in the discovery message, so that we can create a home assistant camera (#22818)
* Added "cam":1 in the discovery message, so that we can create a home assistant camera.

* Update tasmota/tasmota_xdrv_driver/xdrv_12_discovery.ino

Co-authored-by: Erik Kunze <eku@users.noreply.github.com>

* Rearrange the newly added field by size, for better packing.

---------

Co-authored-by: Erik Kunze <eku@users.noreply.github.com>
2025-01-16 16:40:37 +01:00
Theo Arends
866ffc8967 Fixed Sonoff SPM PowerOnState overrules SSPMPowerOnState in mixed 4Relay setup with 4Relay version 1.0.0 2025-01-16 16:36:20 +01:00
Theo Arends
3efdfae845 TWAI reduce log message size 2025-01-16 15:22:51 +01:00
Theo Arends
6d7aab4662 Add command FileLog 10..14 to enable logging to filesystem using up to 16 log files of 100kB 2025-01-16 15:07:49 +01:00
s-hadinger
ec8cf6e2f0
Revert "Berry now removes any existing rule with same pattern and same id (o…" (#22823)
This reverts commit d176a1d65ba5dcd7d484915d8f9e09a2d26d218c.
2025-01-15 20:27:46 +01:00
s-hadinger
d176a1d65b
Berry now removes any existing rule with same pattern and same id (only if id is not nil) (#22822) 2025-01-15 19:19:43 +01:00
Theo Arends
ddcdc85520 Allow negative values for AdcParam/AdcGpio INPUT, TEMP and RANGE parameters (#22809) 2025-01-14 10:44:33 +01:00
Theo Arends
fc8485d91b Update changelogs 2025-01-13 16:38:55 +01:00
Theo Arends
e5e4c336b5 Add failsafe to FileLog 2025-01-13 16:19:59 +01:00
lryb
6b3719bd9e
Fix missing val and text on change event (#22808) 2025-01-12 19:31:24 +01:00
s-hadinger
d0ef026bb9
Reamove readline when compiling Berry 2025-01-12 18:37:43 +01:00
Christian Baars
03e8497211
I2S: add command i2sloop (#22807)
* revert upstream change of the library, fix memory leak by using stack again

* add i2sloop command
2025-01-12 17:16:20 +01:00
lengross
cf739e9522
Update xsns_60_GPS.ino (#22804)
Using FLOATSZ instead of 12 or 13 in lat/lon calls to dtostrfd
2025-01-12 08:31:38 +01:00
bovirus
e299035266
Italian language update (#22796) 2025-01-10 12:31:38 +01:00
Theo Arends
83b09f4de1 Bump version v14.4.1.3
- Update changelogs
2025-01-10 12:29:51 +01:00
Theo Arends
3365fd0d0b Add file logging 2025-01-10 12:15:24 +01:00
Christian Baars
ed21cfd487
add opus stream and file support for opus/aac (#22795) 2025-01-10 09:02:41 +01:00
s-hadinger
f42cb555c3
'Pixels' has backwards compatible arguments fixing #22755 (#22791)
* 'Pixels' has backwards compatible arguments fixing #22755

* Fix fallback height
2025-01-09 19:16:49 +01:00
Jason2866
e57b3e8b05
prepare for IDF 5.4 based Arduino (#22793) 2025-01-09 18:55:57 +01:00
Jason2866
76fb95b166
Platform 2025.01.30 Tasmota Arduino Core 3.1.1.250109 based on IDF 5.3.2.250106 (#22792) 2025-01-09 18:18:41 +01:00
Theo Arends
d6ce776c98 Update GPIO viewer 2025-01-09 12:01:01 +01:00
Theo Arends
dce79fd0c3 Update changelogs 2025-01-09 11:56:31 +01:00
s-hadinger
d3da193e39
WS2812 real-time Leds panel as Berry app (#22788) 2025-01-08 22:53:31 +01:00
Christian Baars
b73f50be6b
I2S: AAC support for web radio (#22787)
* I2S: AAC decoding support for web radio

* optimize AAC-lib for size
2025-01-08 21:35:42 +01:00
nikito7
1fc6f5c707
Allow to change INFLUXDB_INITIAL (#22783) 2025-01-07 22:00:39 +01:00
Theo Arends
fe2f4d031f Add timeout handling for RG15 (#22768) 2025-01-06 16:14:47 +01:00
mrkev-gh
b472e821cf
Use 75% of the buffer for speeds higher than 115200 (#22774)
Higher speeds need larger buffer. Processing takes longer, so let's put the threshold at
75% of the buffer size to have some headroom. E.g. for 1Mbit with 2.5KB buffer 2048 characters
would be roughly still around 20ms, and reserve additional 512 chars / 5ms to handle the
buffer after the threshold is reached

Co-authored-by: mrkev-gh <mrkev-gh@users.noreply.github.com>
2025-01-06 11:34:06 +01:00
Christian Baars
17ab5a5e83
fix missing button when turning on BLE (#22770) 2025-01-05 19:14:59 +01:00
Theo Arends
2263305bee Add berry TWAI example 2025-01-05 15:17:43 +01:00
Theo Arends
0d0b9de474 Update changelogs 2025-01-05 13:47:29 +01:00
s-hadinger
77d98868bf
Berry add 'bytes().appendhex()' (#22767) 2025-01-05 13:12:39 +01:00
s-hadinger
a5610eea09
Berry async_webserver improvement (#22766) 2025-01-04 19:17:13 +01:00
s-hadinger
bd7e47139c
Berry add light_pixels values to 'tasmota.settings' (#22762)
* Berry add light_pixels values to 'tasmota.settings'

* fix compilation
2025-01-04 12:24:38 +01:00
s-hadinger
c084719b0e
Berry allow 'bytes().append(nil)' (#22758) 2025-01-03 15:14:29 +01:00
Theo Arends
124f55ca70 Update changelogs 2025-01-03 10:37:18 +01:00
s-hadinger
50f0f8a651
Expand 'Pixels' with reverse, height and alternate (#22755) 2025-01-03 08:24:49 +01:00
s-hadinger
64a2fe8aee
TasmotaLED change dynamically the number of pixels (#22754)
* TasmotaLED change dynamically the number of pixels

* fix compilation
2025-01-02 22:30:19 +01:00
Norbert
ed7b58291a
Fix rule example as part of the comment. (#22753)
Update xsns_90_hrg15.ino
2025-01-02 20:51:52 +01:00
Theo Arends
aafe528682 Enable ESP32 TWAI in default binary 2025-01-02 12:44:49 +01:00
Theo Arends
d5d757fd3d Fix shutter discovery message regression from v14.4.1 (#22730) 2025-01-02 12:13:06 +01:00
s-hadinger
b5c326d772
Berry Leds update comments (#22748) 2025-01-02 10:44:39 +01:00
Theo Arends
884e795dff Fix TWAI extended identifier support 2025-01-01 15:48:02 +01:00
Theo Arends
8fa33ff4da Update changelogs 2025-01-01 14:33:05 +01:00
Mark Ruys
a2752bf500
Support S88 sensor (#22733)
* Support S88 sensor

Also:
- More stable model detection
- More robust against errors
- Better logging

* Support S88
2025-01-01 14:26:29 +01:00
anishsane
01154e9497
Add Webcam stats as sensors. (Can be used in home assistant.) (#22744) 2025-01-01 14:21:48 +01:00
Theo Arends
1a482364bc Add support for ESP32 Two-Wire Automotive Interface (TWAI) or Controller Area Network (CAN) busses
- Bump version V14.4.1.2
2025-01-01 14:14:23 +01:00
Ryan Castellucci
5f95b33220
reduce false positive chirp sensor detection (#22736) 2024-12-30 10:21:11 +01:00
Ryan Castellucci
dc531de02b
auto compress updated html (#22738) 2024-12-29 22:27:10 +01:00
Ryan Castellucci
a1aef6b39f
improved zopfli compression (#22737) 2024-12-29 20:47:12 +01:00
Theo Arends
02225ea7c4 Refactor TWAI driver 2024-12-29 17:07:05 +01:00
Theo Arends
2d2c732e2e Create xdrv_91_esp32_twai.ino 2024-12-28 17:46:15 +01:00
Theo Arends
9fb8065fac Update changelogs 2024-12-28 14:37:20 +01:00
TheHexaMaster
1ad89ccb3e
PCF85063 RTC Chip Support (#22727)
* Create ST7701_480x480_WS_4inch.ini

Display driver for 4inch display with ST7701 driver and GT911 touch driver including correct pinout and correct init process trought SPI. Used in WaveShare ESP32-S3-4inch display board.

* Update xdrv_56_rtc_chips.ino

Added support for PCF85063 RTC Chip.

* Update my_user_config.h

Added PCF85063 RTC support

* Update I2CDEVICES.md

Added PCF85063 RTC support
2024-12-28 14:30:16 +01:00
s-hadinger
de3a7f3909 Solidified Code updated 2024-12-27 17:10:34 +00:00
s-hadinger
17924392fa
Berry leds improve reuse of buffer (#22726) 2024-12-27 18:00:25 +01:00
s-hadinger
f4d0606d06
Berry fix typo (#22725) 2024-12-27 17:56:39 +01:00
Theo Arends
6d5a33772c Update changelogs 2024-12-27 16:09:03 +01:00
s-hadinger
d1a7d70ca0
Berry driver for M5Stack 8encoder (#22724) 2024-12-27 15:36:18 +01:00
s-hadinger
7f8f61423a
Berry 'tasmota.int(v, min, max)' function fix behavior (#22723)
* Berry 'tasmota.int(v, min, max)' function fix behavior

* fix compilation
2024-12-27 14:34:51 +01:00
s-hadinger
b729886a16
Berry 'tasmota.int(v, min, max)' function (#22721) 2024-12-27 11:33:52 +01:00
bovirus
4d3a780eb1
Update Italian language (#22717) 2024-12-26 16:20:49 +01:00
s-hadinger
64f0acb0c5 Solidified Code updated 2024-12-26 13:34:21 +00:00
s-hadinger
2143082aa4
Berry rename axp drivers (#22718)
* Berry rename axp drivers

* fix compilation
2024-12-26 14:33:47 +01:00
Theo Arends
1d244fcd28 Update changelogs 2024-12-25 14:05:18 +01:00
s-hadinger
02ae53cec5
Berry add unicode encoding to string parsing (#22713) 2024-12-24 18:03:21 +01:00
Theo Arends
94f3744235 Prep TWAI support 2024-12-24 12:06:50 +01:00
Theo Arends
8a37df10c6 Update changelogs 2024-12-24 11:43:46 +01:00
s-hadinger
2024bf88ac
Berry bit-shift operators to 'int64' (#22709) 2024-12-24 09:08:10 +01:00
s-hadinger
fc3ad45836
Matter fix air quality (#22708)
* HASPmota support for

* Matter fix Air Quality
2024-12-23 18:48:54 +01:00
s-hadinger
4fd3d9465c
HASPmota support for (#22707) 2024-12-23 12:35:06 +01:00
Theo Arends
3412761881 Postpone save_data during light animation when fade is Off 2024-12-22 15:29:30 +01:00
s-hadinger
3457d66d1e
LVGL updated (#22699) 2024-12-22 10:58:53 +01:00
s-hadinger
3b48a1c16a
HASPmota add 'tag' attribute for free-form JSON (#22698) 2024-12-21 23:16:26 +01:00
s-hadinger
27e85809b5
HASPmota use 'roboto.ttf' for automatic sizing of default font (#22697) 2024-12-21 22:19:17 +01:00
Christian Baars
f3fcbea6d1
no assertion when adc_config fails (#22696) 2024-12-21 18:38:06 +01:00
s-hadinger
f59c1675eb Solidified Code updated 2024-12-21 17:37:36 +00:00
Christian Baars
6745bc1b48
add scroll to Leds_matrix (#22693) 2024-12-21 18:36:43 +01:00
s-hadinger
9f3c7859d7
LVGL use smaller robotocondensed TTF font (#22694)
* LVGL use smaller robotocondensed TTF font

* update license
2024-12-21 14:26:54 +01:00
Theo Arends
52d4e84b39 Change GPIOViewer from v1.5.6 to v1.5.8
- No code change
2024-12-21 13:04:57 +01:00
Theo Arends
8311bff7ee Fix Webcam compilation with define USE_WEBCAM but without define ENABLE_RTSPSERVER (#22686) 2024-12-20 11:07:52 +01:00
s-hadinger
fde529fac4
Berry fix walrus operator (#22685) 2024-12-19 21:46:16 +01:00
Theo Arends
af724a6149 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-12-19 17:57:51 +01:00
Theo Arends
0d9ce6de12 Update changelogs 2024-12-19 17:57:39 +01:00
s-hadinger
df79533611 Solidified Code updated 2024-12-19 16:55:11 +00:00
s-hadinger
e4ff66192f
Berry Zigbee fix attributes (#22684) 2024-12-19 17:48:35 +01:00
md5sum-as
9b6dc1f0f1
my_user_config add info for HLK-LD2410 HLK-LD2410S and remove trailing spaces (#22670)
* my_user_config add info for HLK-LD2410 HLK-LD2410S

* Update tasmota/my_user_config.h

Co-authored-by: Erik Kunze <eku@users.noreply.github.com>

---------

Co-authored-by: a.spirenkov@vk.team <a.spirenkov@vk.team>
Co-authored-by: Erik Kunze <eku@users.noreply.github.com>
2024-12-19 16:41:42 +01:00
TheChatty
2d3a049e59
display.ini for ideaspark ESP32 module with 170x320 diplay (#22678) 2024-12-19 12:18:19 +01:00
s-hadinger
b7da75da30 Solidified Code updated 2024-12-18 21:50:00 +00:00
s-hadinger
db29cb7152
Berry animate.crenel primitive (#22673) 2024-12-18 22:43:08 +01:00
s-hadinger
97b375fd57
TLS fix ecdsa fingerprint 2024-12-16 22:31:01 +01:00
Theo Arends
2c3785c1c6 Add comments and some default defines 2024-12-16 14:57:16 +01:00
s-hadinger
69d3fc1003
TLS disable ECDSA for MQTT to ensure we don't break fingerprints after #22649 (#22656) 2024-12-15 19:43:51 +01:00
Theo Arends
90e0595b7f Change ESP32 disable PSRAM check (and on restart some relay toggles) with #define DISABLE_PSRAMCHECK (#21266) 2024-12-15 17:36:37 +01:00
Theo Arends
fba6a806ac Add command `SetOption163 1` to disable display of Device name in GUI header 2024-12-15 16:23:44 +01:00
Theo Arends
ef7b2404d4 Add command `SetOption163 1` to disable display of Device name in GUI header 2024-12-15 16:21:17 +01:00
Theo Arends
6468b6edcd Add command `SetOption163 1` to disable display of Device name in GUI header 2024-12-15 16:18:45 +01:00
Theo Arends
c40b707b76 Remove obsolete display stubs 2024-12-15 15:52:46 +01:00
Theo Arends
af3bb96a2a Bump version v14.4.1.1 2024-12-15 15:14:37 +01:00
Theo Arends
da7473e07c save a few bytes 2024-12-15 14:10:06 +01:00
Theo Arends
b0c505d171 Fix display model 2024-12-15 12:38:26 +01:00
Theo Arends
6fbf8c58f7 Fix GUI timing related divide by zero exception 2024-12-15 12:33:43 +01:00
Theo Arends
b3b9699782 Display related fixes
- CHange Display removed PWM control of backlight GPIO for universal display regression from v14.1.0
- Fix Display DisplayMode adds a display device while not configured
- Fix GUI intermittent exception on screen updates due to flash access
2024-12-15 00:32:51 +01:00
s-hadinger
615c6763f6
Tls ecdsa (#22649)
* TLS add support for ECDSA on ESP32

* Reduce size for ESP8266
2024-12-14 22:39:45 +01:00
Theo Arends
7cd0908c89 Update changelogs 2024-12-14 16:39:15 +01:00
Theo Arends
bd6e7d220d Add MCP23xxx ODR control over interrupt type 2024-12-14 15:41:59 +01:00
Ryan Castellucci
8d1b4094db
clean up remnents of old fingerprint algo (#22645) 2024-12-14 15:35:14 +01:00
s-hadinger
67ae7c2fe1
Berry make Leds animate calls reentrant (#22643) 2024-12-14 15:21:30 +01:00
Theo Arends
5294b99ba7 Fix MCP23xxx, PCF8574 and Shift595 power control when a display is configured regression from v14.3.0.7 2024-12-14 14:31:16 +01:00
Theo Arends
53e2fab34c Fix MCP23XXX driver open-drain interrupt 2024-12-13 17:20:36 +01:00
Theo Arends
ab5208d216 Refactor GUI 2024-12-13 15:06:14 +01:00
Theo Arends
f135f46990 Fix more GUI issues 2024-12-13 11:55:45 +01:00
Theo Arends
9650d0f1ef Fix GUI display power button regression from v14.3.0.5 (#15788) 2024-12-13 00:17:25 +01:00
s-hadinger
7834dbf6b6
Berry Leds fix and cleaning (#22640) 2024-12-12 20:55:29 +01:00
TheHexaMaster
1099babb16
Create ST7701_480x480_WS_4inch.ini (#22638)
Display driver for 4inch display with ST7701 driver and GT911 touch driver including correct pinout and correct init process trought SPI. Used in WaveShare ESP32-S3-4inch display board.
2024-12-12 18:37:23 +01:00
sfromis
3e3b568aeb
Update my_user_config.h WebColor (#22639)
Aligned comments for WebColor with the standard themes on the WebUI docs page, and replaced tabs by spaces for consistent formatting.
2024-12-12 18:28:12 +01:00
Theo Arends
620fade73c Fix ESP32 rules operation priority regression from v13.3.0.4 (#22636) 2024-12-12 15:34:43 +01:00
Christian Baars
6268066bac
make regex more flexible for different quotation marks (#22629) 2024-12-12 11:21:47 +01:00
Theo Arends
dc7cb05cab Add MCP23XXX_DRV control register IOCON in template (#22622) 2024-12-11 17:43:56 +01:00
Theo Arends
d08aafd3fb Update version 2024-12-11 11:11:20 +01:00
Theo Arends
ee3fbdf4e0 Bump version v14.4.0.1 2024-12-11 11:10:37 +01:00
Theo Arends
4008a4e5e6 Move debug message to debug_more 2024-12-10 16:36:22 +01:00
Theo Arends
3c51793d5c Reduce stack usage 2024-12-10 11:39:37 +01:00
s-hadinger
bdf880cf84
Improved auto-selection of LED hardware support (RMT, SPI) (#22618) 2024-12-09 23:22:52 +01:00
s-hadinger
c1834bd898
WS2812 remove waits for RMT and SPI (#22617) 2024-12-09 22:45:23 +01:00
s-hadinger
a12c934a4b
Rename Matter configuration menu (#22615) 2024-12-09 21:12:02 +01:00
Theo Arends
71dfae2d9d Fix ESP8266 Device Group exception due to lack of stack space (#22271) 2024-12-09 15:16:30 +01:00
Theo Arends
23e5a4dec2 Change RG-15 sensor name from RG-15 to RG15 (#22612) 2024-12-09 11:17:04 +01:00
SteWers
09f0b89ab0
Language improvements (#22607)
Some language improvements
2024-12-08 21:19:01 +01:00
Theo Arends
d6c1617fc5 Skip code not needed on single phase 2024-12-08 14:43:48 +01:00
s-hadinger
2969ee91a4 Solidified Code updated 2024-12-08 09:30:29 +00:00
s-hadinger
364fa21fc4
Haspmota fix chart color series 2024-12-08 10:29:45 +01:00
Theo Arends
ed520140a1 Add support for Sonoff POWCT Energy Export Active (#22596) 2024-12-07 22:44:45 +01:00
SteWers
523f803b06
Fix DE language (#22603)
* Fix DE language

* Update de_DE.h
2024-12-07 19:50:56 +01:00
Theo Arends
aeb965435e Fix ESP32 energy export calculation 2024-12-07 18:01:33 +01:00
Theo Arends
7df2c703a1 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-12-07 15:09:11 +01:00
Theo Arends
54d28c9d35 Update changelogs 2024-12-07 15:08:57 +01:00
arendst
dd555a0641 Solidified Code updated 2024-12-07 13:58:23 +00:00
bovirus
0a2fa4ec41
Update Italian language (#22601) 2024-12-07 14:57:31 +01:00
Theo Arends
6e6305f5e9 Rename button Auto-configuration to Auto-Conf 2024-12-07 14:57:13 +01:00
Jason2866
57fc179709
Platform 2024.12.30 Tasmota Arduino Core 3.1.0.241206 based on IDF 5.3.2 (#22600)
* core 3.1.0.241206
* Enterprise support is now conditional in core
2024-12-07 14:30:04 +01:00
Theo Arends
3a62cc6050 Add udp.flush() to KNX receiver (#22242) 2024-12-07 12:38:14 +01:00
Theo Arends
789bbb8b97 Extent command Knx_Enabled with KNX restart functionality (#22242) 2024-12-06 17:40:05 +01:00
Theo Arends
4ffc53b465 Shorten menus and add submenu headers (#22592) 2024-12-06 17:02:44 +01:00
Jason2866
f341f8d35a
language (DE): shorten (Menü) Texts (#22594)
* language (DE): shorten (Menü) Texts

* KNX: einmalig -> eindeutig
2024-12-06 15:48:05 +01:00
gemu
9317e02f25
recode powerwall (#22589) 2024-12-05 15:42:20 +01:00
Theo Arends
b80cc6a3e6 Fix select list and possible input buffer overflow (#22405) 2024-12-05 13:31:14 +01:00
stefanbode
ccd76b26ed
Re-enable shutter report on teleperiod (#22586)
* Reactivate shutter report on teleperiod

* Reactivate shutter report on teleperiod
2024-12-04 11:43:51 +01:00
Theo Arends
f72769252e Fix KNX Scenes index change regression from v14.2.0.4 (#22405) 2024-12-04 10:52:00 +01:00
Theo Arends
6b753cff44 Fix ESP32 Shift595 relay click on restart 2024-12-03 17:15:14 +01:00
Theo Arends
570e2052d3 Fix compilation 2024-12-03 11:37:39 +01:00
Theo Arends
62e4bf1acd Add command SetOption162 1 to disable adding export energy to energy today (#22578) 2024-12-03 11:34:48 +01:00
Theo Arends
4046cd8ec0 Add show Active Power Total with any multi-phase energy monitoring (#22579) 2024-12-03 10:28:38 +01:00
Theo Arends
62d6a03335 Fix non-sequential shutter GUI display 2024-12-02 16:12:53 +01:00
Theo Arends
341cc87527 Update changelog 2024-12-02 12:15:46 +01:00
Felix Laevsky
ebff2d2d38
Explanation for BLEMinRssiLevel command added in the comments (#22550) 2024-12-02 12:11:05 +01:00
Christian Baars
baeaad7558
fix LED, C2 has no i2s (#22575) 2024-12-02 12:10:28 +01:00
Theo Arends
e2bae09ded Update changelogs 2024-12-01 15:41:11 +01:00
SteWers
0ea8889997
[SolaxX1] Energy calculation (#22568) 2024-12-01 13:54:11 +01:00
Theo Arends
e1fc36361e Update changelogs 2024-12-01 13:07:37 +01:00
Christian Baars
bed14174bc
add lp_core to Berry ULP module (#22567) 2024-11-30 19:01:12 +01:00
Theo Arends
fbb2c84f29 Template for Shelly 1PM Gen3 2024-11-30 16:52:57 +01:00
Theo Arends
a838ec09f8 Minor changes 2024-11-30 13:51:47 +01:00
Theo Arends
038e62b72c Small shutter refactors 2024-11-29 17:00:31 +01:00
Theo Arends
f176ede65d Update changelogs 2024-11-29 16:16:32 +01:00
SteWers
3316bc5e70
[Shutter] Fix PowerON (#22548)
* [Shutter] Fix PowerON

* [Shutter] Fix 2 PowerON

* [Shutter] Fix 3 PowerON

Integrate only when USE_SHUTTER is defined

* @SteWers [Shutter] Fix 4 PowerON

Fix compile error
2024-11-29 09:59:18 +01:00
s-hadinger
db0287e566
Replace NeoPixelBus with TasmotaLED on ESP32x (#22556)
* Replace NeoPixelBus with TasmotaLED on ESP32x

* update changelog
2024-11-27 22:11:57 +01:00
Theo Arends
8cb9345a97 Fix compilation 2024-11-27 15:05:43 +01:00
Theo Arends
e8d5e442bf Update xdrv_60_shift595.ino 2024-11-27 14:01:23 +01:00
Theo Arends
5a32df5e81 Fix Shift595 output offsets and restart relay toggles 2024-11-27 13:48:30 +01:00
Theo Arends
5dd132bb5f Update changelogs 2024-11-26 14:05:01 +01:00
Andy Knight
2322646773
Prevent active BLE operations with unencrypted MI-format beacons (#22453) 2024-11-26 11:28:55 +01:00
Barbudor
155dea98cd
Issue#22535 applying masking window to any power change (#22539)
* apply masking to any power change

* stupid typo

* rephrase
2024-11-25 10:56:35 +01:00
Jacek Ziółkowski
3ab87273e6
Shitf595 dynamic device count (#22543)
* Make max Shift595 device count dynamic

* Update xdrv_60_shift595.ino
2024-11-25 10:38:43 +01:00
Theo Arends
e397c11e70 Revert wifi delay 2024-11-25 10:33:34 +01:00
s-hadinger
2402f7cbd1
Berry simplify DAC support (#22546) 2024-11-24 23:30:24 +01:00
Felix Laevsky
3448e17317
Added 2 new filters: BLE filter by name and minimum RSSI (#22530) 2024-11-24 18:44:18 +01:00
Theo Arends
25f13e434f TasmotaClient discard GET_JSON timeout 2024-11-24 16:07:36 +01:00
Jason2866
b9414008df
Hybrid compile: take custom boards settings in account (#22542) 2024-11-23 17:23:10 +01:00
SteWers
3c703ac4d4
[Shutter] Fix UI inverted mode (#22538)
Fix UI for shutter in inverted mode
2024-11-23 16:05:55 +01:00
SteWers
f255233f90
[Energy] Fix for New Year's Day (#22536)
Fix rollover on New Year's Day
2024-11-23 16:05:15 +01:00
Emmanuel Ferdman
fb0666e6c8
Update CHANGELOG.md reference (#22534)
Signed-off-by: Emmanuel Ferdman <emmanuelferdman@gmail.com>
2024-11-23 08:46:25 +01:00
Theo Arends
4925e9c9a8 Fix IoTTimer power off in DisplayModes 1 and up 2024-11-22 22:17:26 +01:00
SteWers
16b6d353f4
[Energy] Fix hardware sensor and restore (#22528)
- Fix handling, when using hardware sensor for EnergytTotal (SO72)
- Fix restore values, when device is off over midnight and power supply is unstable while powering on at the next day
2024-11-22 21:01:31 +01:00
Theo Arends
bf872defab Fix use HTML escape on File System Edit File load (#22492) 2024-11-21 16:58:45 +01:00
Theo Arends
1e9c5ad40e Fix intermittent ESP32 serial lost on restart 2024-11-21 16:30:27 +01:00
Theo Arends
3c5cbade63 Restore iFan state text 2024-11-21 14:07:53 +01:00
Theo Arends
6d0467489a Add command SetOption161 1 to disable display of state text (#22515) 2024-11-21 12:13:14 +01:00
Theo Arends
fe658424b8 Fix date/time rotation without seconds 2024-11-20 14:49:15 +01:00
Theo Arends
ae7cba2f13 Add support for TM1640 based IoTTimer by Stefan Oskamp (#21376) 2024-11-20 14:31:21 +01:00
Theo Arends
3778f22d7b Fix wrong GUI Module and Template drop down list indexes regression 2024-11-18 22:53:07 +01:00
Theo Arends
320ad0e1d3 Fix ESP32 upgrade by file upload response based on file size (#22500) 2024-11-18 17:09:23 +01:00
Theo Arends
3114c75a1d Update changelogs 2024-11-18 16:05:42 +01:00
Christian Baars
873bd3f211
fix compilation with BLE 5 (#22506) 2024-11-17 20:50:45 +01:00
Jason2866
7615b3c8f7
Platform 2024.11.31 Tasmota Arduino Core 3.1.0.241117 based on IDF 5.3.1.241024 (#22504)
* Platform 2024.11.31
* add `ttls_phase2_type`
2024-11-17 18:36:54 +01:00
Theo Arends
f3bf8998ae Fax MCP23xxx and PCF8574 last device 2024-11-17 18:02:23 +01:00
Theo Arends
4e40bbf3b6 Bump version v14.3.0.7 - again
- ESP32 max number of supported switches/buttons/relays from 28 to 32
- ESP32 max number of interlocks from 14 to 16
2024-11-17 14:03:04 +01:00
Jason2866
099c68678a
prepare WPA Enterprise compile (#22497)
* prep for WPA eap
2024-11-17 13:15:36 +01:00
Theo Arends
6821293819 Revert "Bump version v14.3.0.7"
This reverts commit 14c0a42203d9664bd4aa4054ace500755d240e99.
2024-11-17 11:30:55 +01:00
Theo Arends
14c0a42203 Bump version v14.3.0.7
- ESP32 max number of supported switches/buttons/relays from 28 to 32
- ESP32 max number of interlocks from 14 to 16
2024-11-16 17:47:18 +01:00
Theo Arends
5de16c1cca Add settingsminimum 2024-11-16 15:02:01 +01:00
Theo Arends
de45fda781 Add minimum defaults in case of error 2024-11-16 14:44:18 +01:00
Jason2866
09c43fa729
fix compile when no core_version exists (#22494) 2024-11-15 20:44:16 +01:00
bovirus
d3df759514
Italian language update (#22493) 2024-11-15 20:32:33 +01:00
Grzegorz
0947860c83
Update pl_PL.h (#22491)
* Update pl_PL.h

Fix typo and gramma

* Update pl_PL.h
2024-11-15 17:57:22 +01:00
Theo Arends
996ea17fb6 prep support TM1640 2024-11-15 16:12:17 +01:00
Grzegorz
ef7cd80ed8
Update pl_PL.h (#22490)
* Update pl_PL.h

More PL translations

* Update pl_PL.h
2024-11-15 15:27:46 +01:00
Ville Skyttä
aeceace546
Add emulation radio and hidden file checkbox labels (#22432) 2024-11-15 15:23:57 +01:00
Theo Arends
1dff29f367 Update changelogs 2024-11-14 09:56:49 +01:00
Grzegorz
0dcfa74ef3
Update pl_PL.h (#22483) 2024-11-14 09:51:30 +01:00
s-hadinger
dd99642cf7
Prevent crashing when display.ini is missing end # (#22471) 2024-11-14 08:24:20 +01:00
Jason2866
b195bcd88d
use sdkconfig define CONFIG_ETH_ENABLED to check Ethernet availability (#22481) 2024-11-13 22:38:22 +01:00
vtHydroponics
551c919ae2
MS5837 pressure offset persistent between resets (#22476)
* Finalized gain/integration adjustment trees

* Fixed the bugs

* works but polishing code

* need to debug pressure in bmp

* updated temp to change via setoption8 command from tasmota

* sensor table working, value reporting working, need to update dependency on sensor duality

* working

* updated file name for ms5837 xsns file

* final working with renamed for current updates (128->116)

* resolved PR comments for extra spaces, xi2c_96

* removed extra spaces, added unit for inches across languages

* removed inches as a unit from language files

* pressure offset retained between resets
2024-11-13 16:23:45 +01:00
Jason2866
50b6f74295
Better check for existing Ethernet support in Arduino libs (#22473)
* use IDF var for eth check
2024-11-12 21:49:36 +01:00
Theo Arends
88810fc92c Increase OTA delays to allow GUI console updates 2024-11-12 16:57:41 +01:00
Theo Arends
0fb39b9bac Update changelogs 2024-11-12 16:40:59 +01:00
s-hadinger
77f9fb0783
Matter provisioning with matter.js controller (#22470) 2024-11-12 16:35:53 +01:00
Theo Arends
7dd1e2a028 Minor changes webserver and dali 2024-11-12 15:32:10 +01:00
Theo Arends
cf94ccf59c Bump version v14.3.0.6
- Add command ``WebColor20`` to control color of Button when Off
2024-11-11 22:44:18 +01:00
Jason2866
b903c6a843
enable Ethernet in all safeboot firmware (except c2) (#21983)
* enable Ethernet in all safeboot firmware (except c2)

* undef SPI for C2 in variant minimal
2024-11-11 18:18:19 +01:00
Theo Arends
5c3d450195 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-11-11 17:33:02 +01:00
Theo Arends
331fd14268 Add Settings->ms5837_pressure_offset (#22466) 2024-11-11 17:32:50 +01:00
SteWers
bdc7e0a65b
[Solax X1] Increase receive buffer (#22467)
Increase receive buffer, because it was too small, when using Software Serial.
2024-11-11 17:27:37 +01:00
vtHydroponics
caa63f437c
MS5837 console calibration options and code cleanup (#22466)
* Finalized gain/integration adjustment trees

* Fixed the bugs

* works but polishing code

* need to debug pressure in bmp

* updated temp to change via setoption8 command from tasmota

* sensor table working, value reporting working, need to update dependency on sensor duality

* working

* updated file name for ms5837 xsns file

* final working with renamed for current updates (128->116)

* resolved PR comments for extra spaces, xi2c_96

* removed extra spaces, added unit for inches across languages

* removed inches as a unit from language files

* removed extra code, commented debug lines

* rebased with dev branch, fixed sensor116 command
2024-11-11 17:24:18 +01:00
Theo Arends
a766947724 Fix compilation 2024-11-11 17:22:38 +01:00
Theo Arends
043d80809b Fix shutter slider user control 2024-11-11 17:09:07 +01:00
Theo Arends
6c4e314adc Gui tuning 2024-11-11 16:26:07 +01:00
Theo Arends
a013c7e36d Fix compile warning 2024-11-11 16:05:03 +01:00
Theo Arends
08f99de2a5 Save 8k from ESP32 safeboot 2024-11-11 15:44:26 +01:00
Theo Arends
1b9d206dd8 save 28k for ESP32 safeboot 2024-11-11 15:23:21 +01:00
Theo Arends
0744bf7f2b Save 6k code from ESP32 safeboot 2024-11-11 15:17:22 +01:00
Theo Arends
0536cc87a0 Update changelogs 2024-11-11 13:39:50 +01:00
Theo Arends
c86f74d456 Bump version v14.3.0.5
- Redesign GUI adding feedback to buttons, shutters and lights
2024-11-11 13:34:09 +01:00
Theo Arends
b40e2ec8e9 Merge branch 'dev_gui_feedback' into development 2024-11-11 13:20:47 +01:00
s-hadinger
343d9b9758
Remove logging from safeboot (#22464)
* Remove logging from safeboot

* Remove logs from Status 5
2024-11-11 10:39:18 +01:00
Christian Baars
448ca1c109
MI32 legacy: add config operations (#22458) 2024-11-10 23:23:37 +01:00
Theo Arends
5f9912665a Clean Tuya code 2024-11-10 17:40:03 +01:00
Theo Arends
fd7554d96e Reduce minimal by 1k 2024-11-10 16:28:25 +01:00
Theo Arends
a97aeeedb7 Add Tuya support 2024-11-10 12:46:56 +01:00
Theo Arends
7e3f093dc9 Change GUI ajax updating buttons/sliders/shutters 2024-11-10 11:46:52 +01:00
Theo Arends
669c6e49ea Update changelogs 2024-11-10 11:18:18 +01:00
s-hadinger
a5c33eba5e
Berry drivers for PCA9535 (generic and in SenseCAP D1) (#22451) 2024-11-09 19:29:29 +01:00
Theo Arends
3bc90175db Fix ESP32, ESP32-S2 and ESP32-S3 re-enable touch buttons (#22446) 2024-11-09 15:24:40 +01:00
Theo Arends
a836e841ad Re-enable shuttershow regression from last PR 2024-11-08 23:53:29 +01:00
Theo Arends
c2091d7082 Fix FUNC_COMMAND linked list command buffer corruption by shutter driver 2024-11-08 23:26:46 +01:00
s-hadinger
7c82d3a7ae
Berry add I2C read16/write16 supporting Little Endian (#22448) 2024-11-08 20:22:53 +01:00
Theo Arends
df293dad82 Add support MS5837 2024-11-08 18:16:26 +01:00
vtHydroponics
a35bb5a5c9
MS5837 functionality with BMP280 optional dependency (#22376)
* Finalized gain/integration adjustment trees

* Fixed the bugs

* works but polishing code

* need to debug pressure in bmp

* updated temp to change via setoption8 command from tasmota

* sensor table working, value reporting working, need to update dependency on sensor duality

* working

* updated file name for ms5837 xsns file

* final working with renamed for current updates (128->116)

* resolved PR comments for extra spaces, xi2c_96

* removed extra spaces, added unit for inches across languages

* added "Water depth" for languages

* removed inches as a unit from language files

* switched to centimeter units for SI consistency in Tasmota

* all variables showing in console and table; need to adjust offsets

* cm conversion properly reporting

* Sensor116 in console calibrates the sensor's pressure_offset variable

* removed pressure offset debugging lines

* removed unecessary commented items from old code
2024-11-08 17:45:37 +01:00
Theo Arends
19e15e21aa Update changelogs 2024-11-08 17:38:31 +01:00
AIexBV
feff388f03
Enable deep sleep (standby) for VL53L0X (#22441)
* Enable deep sleep (standby) for VL53L0X

* Some renamings
2024-11-08 17:21:05 +01:00
Ville Skyttä
2f3808adc9
Use standard var spelling for reactive power unit (#22435)
- https://en.wikipedia.org/wiki/Volt-ampere#Volt-ampere_reactive
- https://engineering.electrical-equipment.org/energy-efficiency-kvar/kvar-or-kvar.html
2024-11-08 17:15:03 +01:00
SteWers
5fac24a5f6
[Solax X1] Optimize serial receive (#22440)
Serial receive: More stable, more simple and less code
2024-11-08 17:04:27 +01:00
Ville Skyttä
245da3918a
Fix display dump option in script version response (#22434) 2024-11-08 16:57:47 +01:00
Grzegorz
ff0d003a24
Fix Standby Stage for MiElHVAC (#22430)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes

* New feature Outdoor Temperature for MiElHVAC

* Add Outdoor Temperature

* New feature Compressor Frequency for MiElHVAC

* Added Outdoor Temperature
* Renamed internal properties due typo operating and oprating to operation

* New feature Auto Clear Remote Temp for MiElHVAC

* This PR add auto clear remote temperature function
* This funcion is call on first run and after 10 sec the remote temperature stop refresh its value
* Send manually Clear command is also available

* change function name, small corrections

* added auto clear time configurable using cmnd

* Improvements to remote temp, auto clear time for MiElHVAC

* Added min = 1000ms and max 600000ms limit to remotetemp auto clear time function
* Changed function name to use sam format as other
* Added RemoteTemperatureSensor to the sensor

* more improvements to auto clear time

* Changed RemoteTemperatureSensor to RemoteTemperatureSensorState
* Added RemoteTemperatureSensorAutoClearTime to the sensor output

* New feature Timers for MiElHVAC

* Added Timers to the sensor output:
  * TimerMode - none, on, off, on_and_off
  * TimerOn - display time to ON
  * TimerOnRemaining - display remaining time to ON
  * TimerOff - display time to OFF
    * TimerOffRemaining - display remaining time to OFF

* New feature for Stage and more for MiElHVAC

* Added to sensor output:
  * Added PrerunStage - on/off, report compressor prepare stage before start working
  * FanStage - off, quiet, 1, 2, 3 ,4 ,5, report current fan stage
  * ModeStage - manual(heat, dry, cool, fan_only, heat_isee, dry_isee, cool_isee), auto_fan, auto_heat, auto_cool, report current mode
  * Renamed Bytes to Settings for raw data

* Renamed const UPDATE to SETTINGS
* Moved SETTINGS const from miel_hvac_msg_settings to miel_hvac_data_settings
* Renamed some functions name to get better code readable

* Removed some empty lines
* Refactor some structure of code to make more clean and better readable

* remove duplicate settings request

* New features for MiElHVAC

* Changed PrerunStage to OperationStage
* Updated map for OperationStage
* Updated map for ModeStage
* Changed map fan_only to fan
* Cleanup

* Fix Standby Stage for MiElHVAC
2024-11-08 16:52:04 +01:00
gemu
4f90c3764a
allow knx for scripts (#22429) 2024-11-08 16:51:39 +01:00
Theo Arends
98cf7f33f7 Update changelogs 2024-11-08 16:50:04 +01:00
s-hadinger
2fd1c0b7fb
Support for I2C over Serial (#22444) 2024-11-07 21:54:16 +01:00
s-hadinger
a571ca1db5
SCD40 ready for virtual I2C (#22443) 2024-11-07 21:21:01 +01:00
s-hadinger
94c45689a6
Prepare for virtual I2C (#22427) 2024-11-04 22:31:50 +01:00
s-hadinger
57d8bea761
ESP32S3 UART output mode for Tx (#22426) 2024-11-04 22:23:46 +01:00
Norbert
490c48eefe
Add #ifndef for MCP23XXX_ADDR_START and MCP23XXX_ADDR_END (#22424)
As discussed in #22410.
2024-11-04 08:50:20 +01:00
Grzegorz
56243ef720
New features for MiElHVAC (#22423)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes

* New feature Outdoor Temperature for MiElHVAC

* Add Outdoor Temperature

* New feature Compressor Frequency for MiElHVAC

* Added Outdoor Temperature
* Renamed internal properties due typo operating and oprating to operation

* New feature Auto Clear Remote Temp for MiElHVAC

* This PR add auto clear remote temperature function
* This funcion is call on first run and after 10 sec the remote temperature stop refresh its value
* Send manually Clear command is also available

* change function name, small corrections

* added auto clear time configurable using cmnd

* Improvements to remote temp, auto clear time for MiElHVAC

* Added min = 1000ms and max 600000ms limit to remotetemp auto clear time function
* Changed function name to use sam format as other
* Added RemoteTemperatureSensor to the sensor

* more improvements to auto clear time

* Changed RemoteTemperatureSensor to RemoteTemperatureSensorState
* Added RemoteTemperatureSensorAutoClearTime to the sensor output

* New feature Timers for MiElHVAC

* Added Timers to the sensor output:
  * TimerMode - none, on, off, on_and_off
  * TimerOn - display time to ON
  * TimerOnRemaining - display remaining time to ON
  * TimerOff - display time to OFF
    * TimerOffRemaining - display remaining time to OFF

* New feature for Stage and more for MiElHVAC

* Added to sensor output:
  * Added PrerunStage - on/off, report compressor prepare stage before start working
  * FanStage - off, quiet, 1, 2, 3 ,4 ,5, report current fan stage
  * ModeStage - manual(heat, dry, cool, fan_only, heat_isee, dry_isee, cool_isee), auto_fan, auto_heat, auto_cool, report current mode
  * Renamed Bytes to Settings for raw data

* Renamed const UPDATE to SETTINGS
* Moved SETTINGS const from miel_hvac_msg_settings to miel_hvac_data_settings
* Renamed some functions name to get better code readable

* Removed some empty lines
* Refactor some structure of code to make more clean and better readable

* remove duplicate settings request

* New features for MiElHVAC

* Changed PrerunStage to OperationStage
* Updated map for OperationStage
* Updated map for ModeStage
* Changed map fan_only to fan
* Cleanup
2024-11-03 21:31:35 +01:00
SteWers
133cca3fd5
[Solax X1] Finetuning (#22421) 2024-11-03 17:33:51 +01:00
Grzegorz
5aaeecdbe8
New features for MiElHVAC (#22395)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes

* New feature Outdoor Temperature for MiElHVAC

* Add Outdoor Temperature

* New feature Compressor Frequency for MiElHVAC

* Added Outdoor Temperature
* Renamed internal properties due typo operating and oprating to operation

* New feature Auto Clear Remote Temp for MiElHVAC

* This PR add auto clear remote temperature function
* This funcion is call on first run and after 10 sec the remote temperature stop refresh its value
* Send manually Clear command is also available

* change function name, small corrections

* added auto clear time configurable using cmnd

* Improvements to remote temp, auto clear time for MiElHVAC

* Added min = 1000ms and max 600000ms limit to remotetemp auto clear time function
* Changed function name to use sam format as other
* Added RemoteTemperatureSensor to the sensor

* more improvements to auto clear time

* Changed RemoteTemperatureSensor to RemoteTemperatureSensorState
* Added RemoteTemperatureSensorAutoClearTime to the sensor output

* New feature Timers for MiElHVAC

* Added Timers to the sensor output:
  * TimerMode - none, on, off, on_and_off
  * TimerOn - display time to ON
  * TimerOnRemaining - display remaining time to ON
  * TimerOff - display time to OFF
    * TimerOffRemaining - display remaining time to OFF

* New feature for Stage and more for MiElHVAC

* Added to sensor output:
  * Added PrerunStage - on/off, report compressor prepare stage before start working
  * FanStage - off, quiet, 1, 2, 3 ,4 ,5, report current fan stage
  * ModeStage - manual(heat, dry, cool, fan_only, heat_isee, dry_isee, cool_isee), auto_fan, auto_heat, auto_cool, report current mode
  * Renamed Bytes to Settings for raw data

* Renamed const UPDATE to SETTINGS
* Moved SETTINGS const from miel_hvac_msg_settings to miel_hvac_data_settings
* Renamed some functions name to get better code readable

* Removed some empty lines
* Refactor some structure of code to make more clean and better readable

* remove duplicate settings request
2024-11-03 10:40:46 +01:00
Theo Arends
8e34864ead Minor update HTML javascript and style 2024-11-02 15:42:54 +01:00
Theo Arends
2dc5c6e234 Enable DALI light control if other Tasmota light is enabled 2024-11-01 11:23:55 +01:00
Jason2866
66d69e09c9
add ESPmDNS to safeboot lib_ignore 2024-10-31 22:33:40 +01:00
bovirus
a463761090
Update Italian language (#22397) 2024-10-31 21:26:18 +01:00
Theo Arends
49d706f54c Add DALI command DaliGroupSliders 0..16 to show GUI group sliders with feedback disabling DaliLight 2024-10-31 17:01:36 +01:00
Theo Arends
deca4d9e06 Update changelogs 2024-10-31 10:49:21 +01:00
Theo Arends
789c990c19 Fix ESP8266 I2C 2024-10-31 10:41:18 +01:00
s-hadinger
5892fef63d
I2C over Serial, preliminary stub (#22388)
* I2C over Serial, preliminary stub

* Imporve initializer
2024-10-31 09:18:37 +01:00
s-hadinger
b89909991c
i2c_enabled refactored as array (#22387) 2024-10-30 22:23:13 +01:00
smcgann99
e30d88e013
Update antiburn.be (#22386)
Currently anitburn doesn't cover other objects if they are on lv.layer_top, moving it to lv.layer_sys fixes this issue.
2024-10-30 22:05:57 +01:00
s-hadinger
0ba0b8dada
ESP32 LVGL library from v9.2.0 to v9.2.2 (#22385) 2024-10-30 19:50:43 +01:00
Theo Arends
3f4b2331ee Bump version v14.3.0.3
- Change ESP32 Platform from 2024.10.30 to 2024.11.30, Framework (Arduino Core) from v3.1.0.241023 to v3.1.0.241030 and IDF to 5.3.1.241024 (#22384)
- Fix ESP32 Arduino Core IPv6 zones used by Matter (#22378)
2024-10-30 15:30:31 +01:00
Jason2866
79a7c71145
Tasmota Platform 2024.11.30 / Arduino 3.1.0.241030 / IDF 5.3.1.241024 (#22384)
* Platform 2024.11.30

* Update PULL_REQUEST_TEMPLATE.md
2024-10-30 13:31:56 +01:00
Theo Arends
ccfbdd50e0 Update changelogs 2024-10-29 17:27:14 +01:00
s-hadinger
2669cd35cf
Alexa Hue with multiple devices (#22383) 2024-10-29 17:21:35 +01:00
Theo Arends
2925836a9c Add command `SetOption161 1` to disable web page slider updates by commands
A long standing wish is fullfilled; GUI sliders can now be updated by commands and background runs.
2024-10-29 17:09:39 +01:00
Grzegorz
18bfda50ab
Improvements to remote temp, auto clear time for MiElHVAC (#22379)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes

* New feature Outdoor Temperature for MiElHVAC

* Add Outdoor Temperature

* New feature Compressor Frequency for MiElHVAC

* Added Outdoor Temperature
* Renamed internal properties due typo operating and oprating to operation

* New feature Auto Clear Remote Temp for MiElHVAC

* This PR add auto clear remote temperature function
* This funcion is call on first run and after 10 sec the remote temperature stop refresh its value
* Send manually Clear command is also available

* change function name, small corrections

* added auto clear time configurable using cmnd

* Improvements to remote temp, auto clear time for MiElHVAC

* Added min = 1000ms and max 600000ms limit to remotetemp auto clear time function
* Changed function name to use sam format as other
* Added RemoteTemperatureSensor to the sensor

* more improvements to auto clear time

* Changed RemoteTemperatureSensor to RemoteTemperatureSensorState
* Added RemoteTemperatureSensorAutoClearTime to the sensor output
2024-10-29 08:25:44 +01:00
Theo Arends
fc0dc5dfec Update changelogs 2024-10-28 14:12:44 +01:00
Grzegorz
27db263493
New feature Auto Clear Remote Temp for MiElHVAC (#22370)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes

* New feature Outdoor Temperature for MiElHVAC

* Add Outdoor Temperature

* New feature Compressor Frequency for MiElHVAC

* Added Outdoor Temperature
* Renamed internal properties due typo operating and oprating to operation

* New feature Auto Clear Remote Temp for MiElHVAC

* This PR add auto clear remote temperature function
* This funcion is call on first run and after 10 sec the remote temperature stop refresh its value
* Send manually Clear command is also available

* change function name, small corrections

* added auto clear time configurable using cmnd
2024-10-28 14:04:17 +01:00
Jason2866
ef3c061ecf
fix github actions copy error
in some cases the folder already exists. Do not abort copy.
2024-10-28 14:00:00 +01:00
Jason2866
104fec83fb
add hybrid compile variant (#22374) 2024-10-28 13:23:48 +01:00
Theo Arends
e14f014c96 Final fix. 2024-10-28 12:18:42 +01:00
Theo Arends
e731738385 Fix safeboot compilation (#22367) 2024-10-28 12:03:27 +01:00
Theo Arends
4f2c1f3499 Fix Ethernet on -DFRAMEWORK_ARDUINO_ITEAD framework regression from v14.3.0 (#22367) 2024-10-28 11:51:27 +01:00
Theo Arends
37f42b474f Fix DALI init sequence (#22371) 2024-10-28 10:13:43 +01:00
Theo Arends
faf6e66e32 Fix map_double compile error 2024-10-27 17:31:31 +01:00
Theo Arends
19fcaf8866 Add command IfxFeed 2024-10-27 15:54:39 +01:00
Theo Arends
bca4211500 Fix ESP32 energy margins reporting when powered off 2024-10-27 15:32:40 +01:00
Theo Arends
227e5f24b6 Enable DALI in ESP32 Tasmota 2024-10-27 11:00:17 +01:00
bovirus
98b04f5029
Update Italian language (#22362) 2024-10-26 11:06:37 +02:00
Christian Baars
b5a487a595
widget support for Berry/MI32 dashboard (#22359) 2024-10-25 19:25:49 +02:00
Theo Arends
0f2b3b1898 Update changelogs 2024-10-25 17:27:39 +02:00
md5sum-as
41442a54ce
add xsns_102_ld2410s.ino (#22253)
Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2024-10-25 17:09:05 +02:00
md5sum-as
33e1da84e7
Xsns 102 ld2410 (#21880)
* xsns_102_ld2410.ino add commands

* fix

* Add attension about supported devices

* Fix lang files
2024-10-25 16:45:26 +02:00
Theo Arends
73cd5cee25 Add support for US AQI and EPA AQI in PMS5003x sensors (#22294) 2024-10-25 14:44:42 +02:00
Theo Arends
16a145f809 Fix ESP32(C3) DALI transmit stability by disabling interrupts 2024-10-25 12:39:36 +02:00
s-hadinger
0fd16f8725
HASPmota haspmota.get_pages() to get the sorted list of pages (#22358) 2024-10-25 11:39:14 +02:00
Theo Arends
886221a1d6 Add experimental support for Shelly DALI Dimmer Gen3 (See template in file xdrv_75_dali.ino) 2024-10-24 23:03:14 +02:00
Theo Arends
80686a8c52 Update changelogs 2024-10-24 11:05:07 +02:00
SteWers
bbba5b9196
[SolaxX1] Add meter mode (#22330) 2024-10-24 10:08:00 +02:00
Grzegorz
e4f431dc7b
New feature Compressor Frequency for MiElHVAC (#22347)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes

* New feature Outdoor Temperature for MiElHVAC

* Add Outdoor Temperature

* New feature Compressor Frequency for MiElHVAC

* Added Outdoor Temperature
* Renamed internal properties due typo operating and oprating to operation
2024-10-24 10:06:48 +02:00
stefanbode
fd37801d53
Optimized behavior to publish shutter data with sensor request (#22353)
* avoid shutter sensor data published ever

* avoid shutter data report on sensor trigger
2024-10-24 10:06:04 +02:00
Jason2866
73897ef755
Back to three esp32x frameworks... (#22351)
* add special frameworks
* Update PULL_REQUEST_TEMPLATE.md
2024-10-23 20:44:25 +02:00
Theo Arends
7f6dbfbeac Update changelogs 2024-10-23 16:12:20 +02:00
Grzegorz
5200aca185
New feature Outdoor Temperature for MiElHVAC (#22345)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes

* New feature Outdoor Temperature for MiElHVAC

* Add Outdoor Temperature
2024-10-23 16:07:30 +02:00
Jacek Ziółkowski
02972ad3ea
Create Panlee_ZX4D30NE01S-UR_SC-02_no_touch.display.ini (#22344) 2024-10-22 16:35:16 +02:00
Grzegorz
6b094ede16
New feature operation time for MiElHVAC (#22334)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud

* New feature for MiElHVAC

* Add device operation time in minutes
2024-10-22 13:59:04 +02:00
Theo Arends
2b6acff4f4 Bump version to v14.3.0.2
- DALI command `DaliGear` to set max found gear to speed up scan response
- DALI command `DaliGroup` to add gear to groups
- DALI command `DaliTarget` to set light control broadcast, group number or gear number
- DALI renamed commands `DaliCommission` to `DaliScan` and `DaliWeb` to `DaliLight`
- DALI set Tasmota light control as default
2024-10-22 12:38:56 +02:00
bovirus
4dfa016855
Update Italian language (#22340) 2024-10-22 11:16:58 +02:00
SteWers
f6699b529c
Translate BLE (#22331) 2024-10-20 17:37:29 +02:00
Theo Arends
bd88ddc56d Update changelogs 2024-10-20 14:09:58 +02:00
btsimonh
7ea96eb005
EQ3 TRV firmware version 1.46 fails if the default true is used in ->subscribe on the notify characteristic. (#22328)
So pass false always - then it works with both new and old EQ3 firmware.
2024-10-20 12:13:07 +02:00
Jason2866
923ed91c9c
optimize env tasmota32-zbbrdgpro (#22323)
* remove IR Remote from zigbee bridgg
* remove shutters support
* add lib ignores to zigbee bridge env
* remove ENERGY_SENSOR from zigbee bridge 32 env
2024-10-19 14:06:42 +02:00
Jason2866
9c24258530
disable ir (#22321) 2024-10-19 13:09:35 +02:00
s-hadinger
148f8350b6
HASPmota fix current page parsing (#22320) 2024-10-19 11:30:58 +02:00
s-hadinger
04c0aa13ea
HASPmota support for page delete and object updates (improved) (#22319) 2024-10-18 23:42:52 +02:00
Theo Arends
91604b9f2a Update changelogs 2024-10-18 23:06:26 +02:00
Jason2866
f320ca2982
Phase out of Tasmota espressif32 frameworks solo1 and ITEAD (#22315)
* Step 1 of phase out of special frameworks solo1 and ITEAD
2024-10-18 19:18:10 +02:00
Jason2866
813dc27360
Revert "dedicated special framework "ITEAD" not needed anymore (#22303)" (#22314)
This reverts commit 66213c88c11430ff12127018623e3f840a17922b.
2024-10-18 15:34:36 +02:00
Jason2866
66213c88c1
dedicated special framework "ITEAD" not needed anymore (#22303) 2024-10-18 15:23:10 +02:00
Jason2866
92a56a80b4
try to fix if condition 2024-10-17 22:14:21 +02:00
s-hadinger
73f755dda2
HASPmota support for page delet and object updates (#22311) 2024-10-17 22:14:16 +02:00
Jason2866
ad65448e09
try to fix if condition 2024-10-17 22:12:58 +02:00
Jason2866
58e3297b07
No midi since esp32 compiler bug 2024-10-17 22:04:00 +02:00
Jason2866
7c3f83215a
switch off midi for esp32 -> esp32 Compiler bug 2024-10-17 21:58:48 +02:00
Jason2866
fa7e0f938e
only disable midi for esp32 no code update
Disable since esp32 compiler bug
2024-10-17 21:48:55 +02:00
Jason2866
5a204aea48
Disabling midi for esp32 -> Compiler BUG 2024-10-17 21:29:37 +02:00
Jason2866
a35b7a9f82
change MI32 env to latest needs of NimBLE lib 2024-10-17 20:18:32 +02:00
Theo Arends
4948b70acd Update changelogs
Add DALI short address and group support
2024-10-17 17:44:05 +02:00
Christian Baars
e39f1cc83f
track BLE devices with RPA (#22300) 2024-10-16 18:14:00 +02:00
Jason2866
0f84211898
remove LTO settings in build flags (#22302)
since LTO is now standard in Tasmota Arduino framework
2024-10-16 13:55:15 +02:00
Jason2866
aed98a6b64
Platform 2024.10.30 (Arduino core 3.1.0.241015 / IDF 5.3.1+) (#22299)
* Platform 2024.10.30 (Arduino core 3.1.0.241015 / IDF 5.3.1+)

Platform new option custom Arduino IDF libs

* Tasmota core ESP32 V.3.1.0.241015
2024-10-16 11:24:29 +02:00
Theo Arends
69f7f155dd Bump version v14.3.0.1 2024-10-15 11:03:45 +02:00
Theo Arends
3569a22dab Fix DALI inverted signal collision detection 2024-10-14 23:33:46 +02:00
Theo Arends
763cc8319d Update changelogs 2024-10-14 23:15:00 +02:00
Grzegorz
6a7f8b11ed
New feature for MiElHVAC (#22290)
* Add prohibit function for MiElHVAC

Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify

* Fixed Compressor and Operation for MiElHVAC

Changed Widevane position name from ISEE to AUTO sam as in MELCLoud

* Revert "Fixed Compressor and Operation for MiElHVAC"

This reverts commit f0973c84d4915e776f715c0749a593efc6f55953.

* New feature for MiElHVAC

* Added Compressor map
* Added Operation Power in Watts
* Added Operation Energy in kWh
* Changed Widevane position name from ISEE to AUTO, displays sam as in
* Changed all map value to lover case MELCloud
2024-10-14 23:09:47 +02:00
Theo Arends
8a9bf94e58 Fix received light command loop
- Fix received light command loop
- Add send collision detection
2024-10-14 22:58:45 +02:00
s-hadinger
76d8836e6e
Berry animate demo remove left overs (#22295) 2024-10-14 22:39:50 +02:00
Theo Arends
150d0e6220 Update docs 2024-10-14 16:02:48 +02:00
Theo Arends
fa82a48789 Fix Sonoff WTS01 temperature sensor shows incorrect negative temperature (#19373) 2024-10-14 15:28:33 +02:00
Theo Arends
3969c80242 Add DALI commands (#22214)
- Add command ``DaliSend <address>|<address+256>,<command>`` to send command (address+256 is repeat) on DALI bus
- Add command ``DaliQuery <address>|<address+256>,<command>`` to send command (address+256 is repeat) on DALI bus and wait up to DALI_TIMEOUT ms for response
2024-10-14 12:27:01 +02:00
s-hadinger
314fcd0dbc
Berry Serial config to change parity on-the-fly for RS-485 (#22285) 2024-10-13 22:15:47 +02:00
Theo Arends
0c7e8c67f3 Update changelogs 2024-10-13 12:03:31 +02:00
sfromis
c07b8a59c0
Fixing build error xdrv_13_display.ino with JPEG_PICTS (#22265)
On ESP32, with `#define JPEG_PICTS` without the scripter, build fails due to the function `Draw_jpeg` being defined after use. Order swapped to satisfy the compiler.

Change tested to compile without errors, but not being 100% sure of when/how it is supposed to work, no verification of this.
2024-10-13 11:10:27 +02:00
Grzegorz
63d44c8b30
Add prohibit function for MiElHVAC (#22269)
Add Prohibit functions:
* Power
* Temperature
* Mode
 and all combinations of this functions
Updated VaneV names for better identify
2024-10-13 11:09:51 +02:00
Theo Arends
4b06cb27b0 Adhere to DALI naming 2024-10-11 17:27:12 +02:00
Theo Arends
b53ac4a14e Fix next core I2C2 compilation 2024-10-11 14:11:00 +02:00
Theo Arends
154f478b5c Fix Berry I2C2 compilation 2024-10-11 12:44:05 +02:00
Theo Arends
f9ee4198e1 Fix compile error when wire1 is unavailable 2024-10-11 12:38:04 +02:00
Theo Arends
8ea4c7887f Move I2C2 test up front 2024-10-11 12:25:34 +02:00
Theo Arends
a839144491 Update changelogs 2024-10-11 11:54:08 +02:00
Jason2866
f2c61c4496
Fix uDisplay compile error (#22266)
* only esp32
2024-10-11 00:19:29 +02:00
s-hadinger
d6a15aa5dc
Temporarily disable SPI DMA for uDisplay (broken since esp-idf 5.3) (#22264) 2024-10-10 23:20:07 +02:00
s-hadinger
cc6ec3648f
Berry Zigbee removed test code (#22263) 2024-10-10 19:50:57 +02:00
Theo Arends
db47b92bc1 Dali add power control 2024-10-10 18:16:32 +02:00
Theo Arends
c7845f1864 Dali add dimmer control 2024-10-10 18:04:27 +02:00
Theo Arends
04f3df8bf6 Add command `DaliWeb 1` to enable light control for broadcast address
- Change DaliDimmer range from 0..254 to 0..100
2024-10-10 17:49:11 +02:00
Theo Arends
50ccaede60 Fix correct second I2C bus 2024-10-10 17:10:01 +02:00
Theo Arends
1ab53aabc8 Update TEMPLATES.md 2024-10-10 12:49:27 +02:00
Theo Arends
8e7c7c3af6 Final fix ethernet malfunction on idf5.3 2024-10-10 12:30:51 +02:00
Theo Arends
f8fbe15300 Fix ESP32 Ethernet using EthClockMode 3 (#22248) 2024-10-09 17:31:33 +02:00
Theo Arends
1a5e6db02d Dali add better receive error detection 2024-10-08 17:54:17 +02:00
Theo Arends
6bc2e50d9c Update changelog 2024-10-08 10:22:28 +02:00
s-hadinger
0468b0e3f1
HASPmota make delete() backwards compatible (#22254) 2024-10-08 08:29:43 +02:00
Jason2866
c1f535207f
Prepare IDF Libs compile (#22250)
* Prepare IDF Libs compile
2024-10-07 18:36:46 +02:00
Theo Arends
d986f7f7c7 Extend Dali driver 2024-10-07 18:08:58 +02:00
Theo Arends
3e0d36af9d Extend Dali driver 2024-10-07 18:03:20 +02:00
Grzegorz
abc6e46354
Add Air Direction control for MiElHVAC (#22241)
* Update xdrv_44_miel_hvac.ino

Code structure cleanup,
Add Power, SetTemperature, Mode, SwingV, SwingH, FanSpeed to JSON StatusSNS MiElHVAC

* Update xdrv_44_miel_hvac.ino

* clesnup

* Revert "Update xdrv_44_miel_hvac.ino"

This reverts commit 45f813d32c6d69b925770ac073827c77373505bd.

* revert styling and format

* make operation and compressor indyvidual and remove unnecessary sep

* Update xdrv_44_miel_hvac.ino

* Update xdrv_44_miel_hvac.ino

* Use uppercase

* Update xdrv_44_miel_hvac.ino

* Added AirDirection control modes (even, indirect, direct)
* Added to WIDEWANE MAP - ISEE position (if AirDirection is used)
* Update WIDEWANE position values

* fix data size
2024-10-07 08:54:23 +02:00
Theo Arends
4196f753c8 Update changelogs 2024-10-06 22:40:28 +02:00
s-hadinger
efce07086c
Berry improve persist dirty data handling (#22246) 2024-10-06 22:09:18 +02:00
Theo Arends
0240da2bf7 Fix Dali received data decoding
- Add support for DALI 1 on ESP8266
2024-10-06 21:57:59 +02:00
s-hadinger
b5b11d6227
HASPmota delete instead of delete() (#22245) 2024-10-06 21:09:19 +02:00
s-hadinger
d9f246f0f0
LVGL port colorwheel from LVGL 8, HASPmota cpicker and msgbox (#22244) 2024-10-06 18:53:06 +02:00
Grzegorz
ba687deaf5
Bridge Mitsubishi AC devices to Homebridge/Homekit locally (#22236)
* Update xdrv_44_miel_hvac.ino

Code structure cleanup,
Add Power, SetTemperature, Mode, SwingV, SwingH, FanSpeed to JSON StatusSNS MiElHVAC

* Update xdrv_44_miel_hvac.ino

* clesnup

* Revert "Update xdrv_44_miel_hvac.ino"

This reverts commit 45f813d32c6d69b925770ac073827c77373505bd.

* revert styling and format

* make operation and compressor indyvidual and remove unnecessary sep

* Update xdrv_44_miel_hvac.ino

* Update xdrv_44_miel_hvac.ino

* Use uppercase
2024-10-05 23:13:56 +02:00
Barbudor
b09b3560b9
recreate 16044 (#22232) 2024-10-03 09:21:55 +02:00
Damian Wrobel
bf0f7316b9
Avoid sending more then one Modbus TCP response (#22223)
Prevent from sending more then one Modbus TCP response
for a single request.

This might happen in the following scenario where,
shortly after the first response has been sent (4),
the second one will be send (8) (note the same
'TransactionId') triggered by the response to the
'ModbusSend' request issued by Berry (5).

The log excerpt from such a situation:

(1) 21:13:20.510 MBS: MBRTCP to Modbus TransactionId:520, deviceAddress:4, functionCode:3, startAddress:8193, count:1, recvCount:1, recvBytes:2
(2) 21:13:20.523 MBS: Serial Send: 04 03 20 01 00 01 DE 5F
(3) 21:13:20.647 MBS: Serial Received: 04 03 02 0A 28 72 FA
(4) 21:13:20.652 MBS: MBRTCP from Modbus TransactionId:520, deviceAddress:4, writing:11 bytes to client (error:0)
(5) 21:13:20.724 CMD: Grp 0, Cmd 'MODBUSSEND', Idx 1, Len 89, Pld -99, Data '{"deviceAddress":4, "functionCode":6, "startAddress":8192, "type":"uint16", "Values":[6]}'
(6) 21:13:20.743 MBS: Serial Send: 04 06 20 00 00 06 02 5D
(7) 21:13:21.009 MBS: Serial Received: 04 06 20 00 00 06 02 5D
(8) 21:13:21.014 MBS: MBRTCP from Modbus TransactionId:520, deviceAddress:4, writing:12 bytes to client (error:0)

Use 'tcp_transaction_id' field to denote that we already
sent a response.

Signed-off-by: Damian Wrobel <dwrobel@ertelnet.rybnik.pl>
2024-10-02 21:34:48 +02:00
Theo Arends
4cbb1b1c58 Update changelogs 2024-10-02 14:18:08 +02:00
Grzegorz
6fa38e4b83
Add heat/dry/cool isee operation mode to xdrv_44_miel_hvac.ino (#22216)
* Add heat/dry/cool isee operation mode to xdrv_44_miel_hvac.ino

This add heat, dry, and cool isle operation mode to support new AC devices. Closes also #10937

* remove duplicated wide vane mode
2024-09-30 11:21:12 +02:00
Theo Arends
69c19d95ae Update changelogs 2024-09-30 11:12:14 +02:00
Theo Arends
2d80f87fc9 Attempt 2 to fix Dali core 3 compilation (#22214) 2024-09-30 09:50:15 +02:00
s-hadinger
59c8d39724
uDisplay force cache writes to RGB display on ESP32S3 (#22222) 2024-09-29 23:04:24 +02:00
s-hadinger
75001a024d
HASPmota error when page '1' is not defined (#22220) 2024-09-29 21:58:24 +02:00
Theo Arends
5d4230d39b Attempt to fix Dali core 3 compilation (#22214) 2024-09-29 17:11:13 +02:00
Theo Arends
19d3984d6e Fix BL906 name (#22167) 2024-09-29 14:30:54 +02:00
Theo Arends
b2b839fa83 Add support for Sonoff SPM v1.3.0 (#13447) 2024-09-28 17:57:31 +02:00
pharaocurt
5909eec188
fix compile error with core 3.0.0 for Range Extender driver xdrv_58_range_extender.ino (#22205)
* final ported range_extender

* removed #define USE_WIFI_RANGE_EXTENDER_PORTADD, because new framework-arduinoespressif32 @ 3.1.0+sha.22a3b096 is available with CONFIG_LWIP_IPV4_NAPT_PORTMAP=y
2024-09-27 20:16:28 +02:00
Theo Arends
452031fbbd Add Energy Export Active support to BL0906 (Athom EM2/EM6) 2024-09-27 18:08:22 +02:00
Theo Arends
692a0ca4b1 Bump version 14.2.0.6 2024-09-26 17:38:49 +02:00
Jason2866
1248bd138c
Tasmota Platform espressif32 2024.09.30 - Arduino Core 3.1.0.240926 (#22203)
* Update PULL_REQUEST_TEMPLATE.md

* Tasmota Platform espressif32 2024.09.30 - Arduino Core 3.1.0.240926
2024-09-26 17:25:48 +02:00
Theo Arends
d716a275bf Tune BL0906 driver 2024-09-26 17:20:34 +02:00
Theo Arends
08d75a5fe3 Add Support for BL0906 up to 6 channel energy monitor as used in Athom EM2/EM6 (#22167) 2024-09-25 18:11:07 +02:00
Theo Arends
27a4ea0f70 Add Support for BL0906 up to 6 channel energy monitor as used in Athom EM2/EM6 (#22167) 2024-09-25 18:05:16 +02:00
Theo Arends
61aeea9132 Add ESP8266 support for one-wire M1601 temperature sensor on DS18x20 GPIO (#21376) 2024-09-25 15:01:19 +02:00
Theo Arends
622b8b10c0 SSPM show only if powered ON 2024-09-25 11:06:51 +02:00
s-hadinger
a306d77a5e
Berry fix compilation error with some compiler options (#22200) 2024-09-24 22:58:49 +02:00
Theo Arends
e3c47851b7 First fix SPM v1.3.0 report values (#13447) 2024-09-24 22:36:02 +02:00
s-hadinger
ef1cbeae21
fix be_byteslib.c 2024-09-24 22:00:57 +02:00
Theo Arends
64de5497f4 Bump version v14.2.0.5
- Add ESP8266 support for I2C CLK on GPIO16 (#22199)
2024-09-24 17:44:15 +02:00
Jason2866
a6075b2855
Platform 2024.09.00 for esp8266 (#22199)
* Platform 2024.09.00 for esp8266

Core 2.7.8

* esp8266 core 2.7.8
2024-09-24 17:25:28 +02:00
s-hadinger
17cc9e18b4
HASPmota broken changed event (#22194)
* HASPmota broken `changed` event

* Avoid breaking compatibility
2024-09-23 23:09:31 +02:00
s-hadinger
2d5545997e
Berry fix index accessor for rean only bytes (#22193) 2024-09-23 22:43:33 +02:00
Theo Arends
f3aed72f97 Update changelogs 2024-09-23 15:53:35 +02:00
s-hadinger
330cfe8b4d
LVGL compilation of lv_menu (#22188) 2024-09-23 10:26:23 +02:00
gemu
3707d4b239
Sml update (#22185)
* some refactoring

* refactoring, save some ram
2024-09-22 12:20:02 +02:00
s-hadinger
7ef93b20fd
Add commented #define BE_LV_WIDGET_MENU 2024-09-22 11:52:00 +02:00
Jason2866
6bb046726e
arduino idf compile prepare 2024-09-21 23:36:37 +02:00
Theo Arends
03b57179ac Final fix unknown/error 2024-09-21 13:23:14 +02:00
Theo Arends
8d7a27df76 Fix ESP8266 Exception 3 on tasmota-minimal caused by unaligned PROGMEM (#22169) 2024-09-20 18:20:09 +02:00
Theo Arends
bf4d0d0890 Revert "Fix ESP8266 Exception 3 on tasmota-minimal caused by unaligned PROGMEM (#22169)"
This reverts commit b00d7fd0ac71d03ea93c9c5278c4e5dc5751d72a.
2024-09-20 18:14:53 +02:00
Theo Arends
b00d7fd0ac Fix ESP8266 Exception 3 on tasmota-minimal caused by unaligned PROGMEM (#22169) 2024-09-20 18:13:38 +02:00
Theo Arends
d5289e8ba9 Update changelogs 2024-09-20 12:09:34 +02:00
Tim Connors
694691e34a
Refactor and fix PID sensor (PID_USE_LOCAL_SENSOR) read race condition (#22162)
* Refactor and fix PID sensor (PID_USE_LOCAL_SENSOR) read race condition

Refactor PID since it was calling pid.tick willy-nilly upon demand
from MQTT and the web instead of on a periodic basis (and was being
called with time interval of 0 when those times lined up!).  Refactor
web/mqtt display because there was shared code (that code turned out
to be misguided and belonged in Every_Second loop, but now we are also
similar to 39 thermostat)

Logging revealed that the vast majority of the time the sensor JSON
was parsed to obtain current sensor data when using PID local sensor,
it was failing to parse (and it would typically only work for a second
around TELE_PERIOD, but even then, not reliably).  This bug almost
certainly affects xdrv_39_thermostat too, but using
xsns_75_prometheus.ino as a template, we are able to update PV once
per second, which allows us to be a lot more responsive.  There is no
danger of being "too responsive" because that's the point of PID, and
the PID loop already scales feedback by interval between ticks.

* Reduce logging of PID now that query side-effects removed

* Comment out all new logging, but leave present for next debugger
2024-09-20 12:06:41 +02:00
Theo Arends
83eb8aeaa7 Update changelogs 2024-09-20 12:01:15 +02:00
s-hadinger
be46b95d62
MQTT add warning if trying to connect without TLS on a port that normally uses TLS (#22175) 2024-09-19 23:12:46 +02:00
s-hadinger
f43d23e59a
Berry update Win binary (#22174) 2024-09-19 22:35:27 +02:00
s-hadinger
a5b4490ba0
Matter small UI fixes (#22173) 2024-09-19 22:26:21 +02:00
s-hadinger
3f56ab68ad
Berry improve int64 constructor (#22172) 2024-09-19 21:35:52 +02:00
Jason2866
5d0cc8144a
no exception when metrics not found (#22170) 2024-09-19 18:31:47 +02:00
Theo Arends
3b28542d9c Fix BMP second bus 2024-09-19 17:21:08 +02:00
Theo Arends
9238ee73d6 Add ESP8266 experimental support for second I2C bus 2024-09-19 14:47:18 +02:00
Theo Arends
a9f0623769 SCD30 Lowered I2C clock from 100k to 50k (#15438) 2024-09-19 11:15:04 +02:00
Theo Arends
d0d075a1b4 Refactored I2C drivers SHT3x and iAQ 2024-09-19 11:11:08 +02:00
Theo Arends
a30f47a901 Fix bad define ESP82666 2024-09-19 11:07:16 +02:00
Theo Arends
0dfab3684c Update changelogs 2024-09-19 09:58:36 +02:00
Jason2866
27611a1698
Tasmota Platform 2024.09.10 - Arduino core 3.0.5 (#22163)
* Tasmota Platform espressif32 2024.09.10 - Arduino Core 3.0.5
2024-09-18 19:04:34 +02:00
s-hadinger
717bc01df8
Autoconf prevent 'init.bat' from stopping on empty lines (#22158) 2024-09-17 21:46:40 +02:00
Theo Arends
a5730a76f9 Add command entered to command error and command unknown message 2024-09-17 16:24:45 +02:00
Theo Arends
4f2b24f53d Add entered command to MQTT command unknown message (bis) 2024-09-17 10:19:00 +02:00
Theo Arends
fd7d2fc0a4 Add entered command to MQTT command unknown message 2024-09-17 10:00:47 +02:00
Theo Arends
97970974fc Refactored I2C drivers HTU21, BH1750 and HYT 2024-09-16 16:27:30 +02:00
Theo Arends
c61dd0fd2c Minor refactor I2C 2024-09-15 15:16:18 +02:00
Theo Arends
a3892ecbc4 Update change logs 2024-09-14 16:13:14 +02:00
s-hadinger
1bfbe02a29
Berry I2C to prepare M5Stack I2C STM32 based devices (#22143) 2024-09-14 12:25:23 +02:00
Theo Arends
1dff0b4b27 Add support for RX8010 RTC as used in IOTTIMER (#21376) 2024-09-13 13:53:01 +02:00
s-hadinger
6e4517de02
Berry virtual Energy driver (#22134) 2024-09-12 19:38:04 +02:00
Theo Arends
7b8308c36a Add support for I2C M5Unit (Mini)Scales using HX711 driver 2024-09-12 12:14:32 +02:00
s-hadinger
9d012f64c8
Add internal I2C argument to send stop while reading (#22127) 2024-09-11 16:41:35 +02:00
Pavel Sheremetev
1edc4b57b7
allow define calibration parametrs for bl09xx (#22030)
Co-authored-by: PavelSheremetev <spd@aira.life>
2024-09-11 08:55:43 +02:00
Theo Arends
d8f01ed4c0 Refactor HX711 memory use 2024-09-10 15:59:25 +02:00
Theo Arends
07eb51764a Update changelogs 2024-09-10 14:54:32 +02:00
Theo Arends
f0da077e78 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-09-10 14:50:07 +02:00
stefanbode
05e59b048e
Fix remaining issues on shutterinvert (#22120)
found another place where the invert was not reported correctly
2024-09-10 14:48:51 +02:00
gemu
1c730aab86
fix trx pin error (#22119) 2024-09-10 14:48:38 +02:00
Theo Arends
5675f00d70 Update changelogs 2024-09-10 14:12:31 +02:00
s-hadinger
2d522485c4
Zigbee fix flashing CC2562P with latest firmware (#22117) 2024-09-09 21:56:18 +02:00
s-hadinger
7247cd6c44
Fixed Berry energy missing attributes (#22116) 2024-09-09 21:50:06 +02:00
Theo Arends
a75a58d591 Update changelogs 2024-09-09 16:39:27 +02:00
Damian Wrobel
6650dee578
Fix ModbusBridge request/response logic (#22075)
- Fix cases where the subsequent Modbus packet
  can be send to the serial port (triggered either by
  'ModbusSend' command or request from TCP bridge)
  before an answer was received to the previous packet.

  This can happen in a setup where simultaneously:
  - two (or more) modbus TCP clients are sending requests
    through the modbus-proxy [1] to Tasmota,
  - ModbusSend commands are executed (e.g. using Berry).

  Log excerpt (from build with TASMOTAMODBUSDEBUG enabled):
  14:51:18.940 MBS: Serial Send: 04 03 01 00 00 09 84 65
  14:51:19.054 MBS: Serial Send: 04 03 10 0A 00 05 A1 5E
  14:51:19.136 MBS: Serial Received: 04 03 0A 00 00 00 D0 00 00 01 AB 00 00 89 62

  Fix adds 'waitingForAnswerFromSerial' flag which is set after
  we send data to the serial port and prevents sending another
  requests before we receive an answer or timeout happened.

  Fix stores temporarily a 'ModbusSend' command data and tries
  to execute it after Modbus response has been received or
  timeout has happened.

- Add 'ModbusSerialTimeout' command which sets timeout in [ms]
  for how long we will be waiting for an answer from the client device.
  Default value is 1000 [ms] and it is not restored after reboot.

- Sends error 11 (0xB) (as TCP response) when no answer was received
  from the serial port within the timeout set by 'ModbusSerialTimeout'
  command.

- Add Modbus 'TransactionId' to the logging.

[1] https://github.com/tiagocoutinho/modbus-proxy

Signed-off-by: Damian Wrobel <dwrobel@ertelnet.rybnik.pl>
2024-09-09 10:26:20 +02:00
pbrinette
28bbf11dbb
Enhance the KNX capabilities of Tasmota to offer more flexibility and features (#22071) 2024-09-09 09:25:11 +02:00
s-hadinger
9ac2a69603
Matter support for Zigbee Occupancy and Light 0/1/2 (OnOff / Dimmer / White Color Temperature) (#22110) 2024-09-08 23:16:19 +02:00
Theo Arends
1bf6a13d7c Bump version v14.2.0.4
- Add HX711 optional calibration precision option on command ``Sensor34 2 <weight in gram> <precision>`` where `<precision>` is 1 to 10 (#13983)
2024-09-08 17:32:35 +02:00
stefanbode
744e50acf7
Fix missing HOLD on shutterbutton (#22108)
#21986
2024-09-08 16:50:37 +02:00
Theo Arends
4717d1986c Update changelogs 2024-09-07 16:32:39 +02:00
Edward Betts
fade4f867d
Correct spelling mistakes (#22080) 2024-09-07 15:35:04 +02:00
gemu
2c5e8749e3
multi trx lines (#22056) 2024-09-07 15:29:27 +02:00
Jason2866
8956b25de4
add forgotten import compress 2024-09-07 14:45:26 +02:00
Jason2866
b5f26e9210
check for working zopfli (#22105) 2024-09-07 14:22:16 +02:00
Jason2866
069f59d13f
remove irritating space (#22095) 2024-09-05 16:51:45 +02:00
s-hadinger
c41e9fe010
Matter Zigbee support for sensors: Temperature, Humidity, Pressure (#22084) 2024-09-03 23:50:53 +02:00
s-hadinger
5f80251414
Berry Zigbee improvements to prepare Matter (#22083) 2024-09-03 23:22:50 +02:00
s-hadinger
4164887412
Zigbee avoid disabling console serial on ESP32 and improved log messages (#22082) 2024-09-03 23:06:07 +02:00
s-hadinger
b6e81c1edd
Zigbee Koenkk firmware 20240710 for Sonoff Zigbee ZBPro (#22076) 2024-09-02 22:20:41 +02:00
Steffen
caa501b1af
add support for nexus protocol to rc-switch library (#21886)
* add support for nexus protocol to RCSwitch library

Nexus protocol is used by temperature and humidity sensor that operate at 433 MHz.
It is used by various brands.

* calc separation limit for RCSwitch library automatically
2024-09-01 16:04:40 +02:00
s-hadinger
d1bd31b341
Berry update Windows exe (#22058) 2024-08-30 14:20:44 +02:00
s-hadinger
428fa95dfd
Berry avoid readbytes() from crashing when file is too large (#22057) 2024-08-30 13:59:52 +02:00
s-hadinger
1ab9bee312
Berry remove reuse of methods for interface-like code reuse #21500 (#22055) 2024-08-29 22:00:20 +02:00
s-hadinger
71f0a06356
Upstream Berry fix removing assert (#22054) 2024-08-29 21:32:28 +02:00
s-hadinger
2292006fe3
Matter fix Waterleak broken after Berry solidification optimisation #21885 (#22052) 2024-08-29 19:33:41 +02:00
s-hadinger
220778a3c0
Matter fail to report Shutter status if no shutter is configured in Tasmota (#22049) 2024-08-29 17:40:12 +02:00
s-hadinger
11ed65560b
LVGL Added OpenHASP icons to font montserrat-28 (#22048) 2024-08-29 16:57:01 +02:00
s-hadinger
e7f120d443
Berry make energy modules changes from #21887 backwards compatible (#22046) 2024-08-29 16:02:14 +02:00
Jacek Ziółkowski
f85a96dd2d
Add python venv to .gitignore (#22045)
* Add python venv to .gitignore

* Update .gitignore
2024-08-29 15:01:52 +02:00
s-hadinger
f62496d164
Crash when calling TasmotaSerial destructor when initialized with incorrect arguments (#22036) 2024-08-28 13:04:56 +02:00
s-hadinger
e8cdeaba6b
ESP32 LVGL library from v9.1.0 to v9.2.0 (#22031) 2024-08-27 23:36:38 +02:00
Theo Arends
a44443f184 update changelogs 2024-08-26 17:29:20 +02:00
Jason2866
888e1d5bb1
Platform 2024.08.11 (espressif32 Arduino core 3.0.4) (#22021) 2024-08-26 17:25:27 +02:00
Theo Arends
a10e3b9bc5 GPIOViewer function shuffle. No functional changes 2024-08-26 16:48:39 +02:00
Theo Arends
969611835c Fix GPIOViewer on ESP32 (needs upcoming core change) 2024-08-26 15:26:36 +02:00
Theo Arends
f0c12b6e9c Remove dash from GUI title 2024-08-26 14:20:51 +02:00
Theo Arends
fefd49c663 Remove dash from GUI title 2024-08-26 14:14:59 +02:00
Theo Arends
1ad4a1377b Update changelogs 2024-08-26 13:56:20 +02:00
pkkrusty
88c9ae3273
Clarify MAX7219 display driver (#21977)
MAX7219 and MAX7219_MATRIX are different displays and require different defines. DisplayModel19 incorrectly listed for MAX7219 instead of MAX7219_MATRIX.
2024-08-26 08:49:48 +02:00
gemu
c35c493809
i2s wav player (#22003)
* i2s wav player

* move framepointer
2024-08-26 08:48:35 +02:00
s-hadinger
5c30d92627
BearSSL panic on ESP8266 in rare conditions (#22017) 2024-08-25 23:10:48 +02:00
s-hadinger
8d6a4bd7be
Matter fix when Rules are disabled (#22016) 2024-08-25 19:33:40 +02:00
s-hadinger
645ce4a1ee
Zigbee reduce serial logging (#22012) 2024-08-24 23:53:42 +02:00
s-hadinger
d084be23db
Zigbee extend timeout for MCU reboot from 5s to 10s (#22009) 2024-08-24 18:32:35 +02:00
s-hadinger
e143438552
Matter fixed UI bug when no endpoints configured (#22008) 2024-08-24 18:04:28 +02:00
Theo Arends
831597e7d9 Version v14.2.0.3
- Add command ``SetOption69 1`` to enable Serial Bridge inverted Receive (#22000)
2024-08-23 11:22:26 +02:00
Theo Arends
4144f5c5ca Change GPIOViewer from v1.5.5 to v1.5.6 2024-08-22 18:03:39 +02:00
Theo Arends
798edc20c2 Version v14.2.0.2
- Changed Energy BL09xx command ``CurrentSet`` input changed from Ampere to milliAmpere
2024-08-21 16:27:43 +02:00
Theo Arends
ba7161fb00 Fix ESP8266 energy cal range chk 2024-08-20 17:30:18 +02:00
Theo Arends
ab2d6c1169 Add Energy command `PowerSet 60,230` to calibrate both Current and Power with known resistive load of 60W at 230V using calibrated Voltage 2024-08-20 13:08:56 +02:00
Theo Arends
c5b92d3ab1 Add Energy Log level 4 message when (Calculated) Apparent Power is less than Active Power indicating wrong calibration (#20653) 2024-08-19 22:31:56 +02:00
Theo Arends
4f62a0deab Refactor to TimeReacged() 2024-08-18 12:46:23 +02:00
Theo Arends
e74142724c Disable 64-bit timing support 2024-08-18 12:13:44 +02:00
Theo Arends
903686f7b5 Add 64-bit timing support 2024-08-16 11:56:07 +02:00
Theo Arends
c0eb28dae9 Harden shutter timeouts 2024-08-16 11:53:58 +02:00
Theo Arends
652b9cef87 Fix PZEM continue energy monitoring when one phase fails (#21968) 2024-08-15 17:32:11 +02:00
Theo Arends
bb0db6d8f8 Update changelogs 2024-08-15 15:12:59 +02:00
stefanbode
6d2647fd5f
fix potential overflow on uptime 2nd try (#21966)
* fix potential overflow

* fix potential overflow

* fix overflow on millis()

* fix overflow on millis()

* Update xdrv_27_shutter.ino

---------

Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2024-08-15 14:28:10 +02:00
Theo Arends
1b24378da5 Free 500 code bytes on ADC/ESP8266 2024-08-15 12:52:12 +02:00
stefanbode
851f11dcdd
fix potential overflow on uptime (#21965)
* fix potential overflow

* fix potential overflow

* fix potential overflow

* fix potential overflow
2024-08-15 10:08:54 +02:00
Theo Arends
30cffa1acc Bump version v14.2.0.1 2024-08-14 15:13:00 +02:00
Theo Arends
43a8e2464f Prep v14.2.0 2024-08-14 14:22:13 +02:00
gemu
d525200a11
BW invert (#21955)
* bw invert option

* invert bw
2024-08-14 13:08:17 +02:00
Theo Arends
102428f768 Needed too 2024-08-13 15:13:04 +02:00
Theo Arends
b93e6cee7b Change GUI name of Analog<x> to ADC<x> 2024-08-13 15:11:51 +02:00
Theo Arends
ff46745252 Fix ADC conversion to v14.1.0.4 2024-08-13 13:57:58 +02:00
Theo Arends
8f75684cd7 Add Rule and Scripter xdrv sensor polling 2024-08-13 12:28:09 +02:00
Theo Arends
5bac2a2331 Revert "Add Rule and Scripter xdrv sensor polling"
This reverts commit cc2ea328d5aec047244b3c2ff5d54fdfbbe53f4c.
2024-08-11 19:29:10 +02:00
Theo Arends
cc2ea328d5 Add Rule and Scripter xdrv sensor polling 2024-08-11 17:47:01 +02:00
Theo Arends
d3f6d7d844 Sync ESP8266 energydriver with ESP32 2024-08-10 17:15:05 +02:00
Theo Arends
85da678132 Fix ADC bad energy jumps 2024-08-10 17:01:14 +02:00
Theo Arends
bcd1a9c986 Fix ADC multiple GPIO parameter storage 2024-08-09 16:11:30 +02:00
f-reiling
de59b036d0
improved read access for SDM630 (#21897)
* improved read access for SDM630

read access improved by reading several registers in one cycle -> higher update rate

* fixed compiler warning

* fix review finding

* added SDM630_HIGH_UPDATE_RATE to select new implementation
2024-08-09 09:23:52 +02:00
Norbert Richter
663fc88373
Update NeoPool comments (#21920) 2024-08-07 16:09:53 +02:00
sfromis
77669f7e20
Update my_user_config.h (#21921)
Adding SetOption references for a few `#define`, to make the relation clear, and in the common searchable format like `[SetOption147]`. Also added that since some time now, this option covers both `SSerialReceived` and `IrReceived`.
2024-08-07 16:08:52 +02:00
Theo Arends
040ffb33e0 Fix restore ADC energytoday on power cycle 2024-08-06 18:07:26 +02:00
Theo Arends
6ffcc69e2d Update changelogs 2024-08-06 17:29:28 +02:00
s-hadinger
f88a635d5d
Zigbee loads device data early before MCU startup (#21917) 2024-08-06 12:43:15 +02:00
Theo Arends
4f035d18f6 Fix invalid ADC energy reset 2024-08-04 18:06:24 +02:00
Theo Arends
3473c3c1b0 Fix scientific notation for 1234.5 (#21131) 2024-08-04 17:42:15 +02:00
Theo Arends
bdec6aed67 Update xsns_02_analog.ino 2024-08-04 16:37:36 +02:00
Theo Arends
469f12abbc Add ADC support for Shelly Plus RGBW PM 2024-08-04 16:35:02 +02:00
Theo Arends
82add09bf9 Fix Core 3.0.4 baudrate detection 2024-08-04 16:11:13 +02:00
Theo Arends
f6c3064890 Fix ADC migration 2024-08-03 18:03:41 +02:00
Theo Arends
c7faff7ac6 Refactored Analog driver to better support multiple channels
- Add command ``AdcGpio<gpio> <parameters>`` to better support ADC configuration
2024-08-03 17:52:47 +02:00
Theo Arends
e5485288eb Update changelogs 2024-08-03 14:18:48 +02:00
Fabrizio Amodio
73357b6cfd
prevent spike on power ON on BioPDU (#21892) 2024-08-03 10:10:11 +02:00
s-hadinger
3c884118ed
Berry zigbee.started() (#21895) 2024-08-02 19:42:11 +02:00
Jason2866
d8cac9c811
Platform 2024.08.10 (#21893)
* Platform 2024.08.10 (espressif32 Arduino core 3.0.4)
2024-08-02 18:14:36 +02:00
s-hadinger
db26f180ec
Fix start_root_basic_commissioning (#21894) 2024-08-02 16:31:02 +02:00
s-hadinger
6b98a320b1
Berry zigbee.find() (#21889) 2024-08-02 15:43:31 +02:00
Theo Arends
8f74a226e7 Update changelogs 2024-08-02 10:02:31 +02:00
s-hadinger
010ca34622
Berry energy module support for 8 phases and move to pseudo-arrays (#21887)
* Berry `energy` module support for 8 phases and move to pseudo-arrays

* add size()
2024-08-01 22:37:37 +02:00
s-hadinger
40ee4cc316
Berry add solidify.nocompact() and reduce size of Matter UI (#21885) 2024-08-01 22:02:27 +02:00
s-hadinger
74551c873f
Berry add file.savecode() (#21884) 2024-08-01 15:38:07 +02:00
s-hadinger
836ce9ef9b
Berry add new type "addr" to ctypes mapping (#21883) 2024-08-01 10:29:49 +02:00
s-hadinger
a3ed99e549
Change Energy power_history arrays to prepare for Berry mapping (#21876) 2024-07-31 14:27:34 +02:00
Theo Arends
67fcb71c6d Update changelogs 2024-07-31 11:03:06 +02:00
gemu
ba596993a0
fix sd mmc free space display (#21869)
* fix sd mmc free space display

* Update xdrv_50_filesystem.ino
2024-07-30 22:24:31 +02:00
Jan-David Förster
4101ad7303
xsns_14_sht3x.ino - data types adjusted, code size reduced (#21868)
* code size, data type improvements

* Change temp calculation to int
2024-07-30 22:23:53 +02:00
s-hadinger
b4a0e27852
Matter refactor autoconf (#21872) 2024-07-30 21:17:21 +02:00
s-hadinger
eb71fcfd2e
Matter refactor commissioning (#21870) 2024-07-30 13:35:06 +02:00
s-hadinger
0c52b40f49
Adjust Matter code size 2024-07-29 09:43:05 +02:00
s-hadinger
b8c5e22e1b
Update CHANGELOG.md 2024-07-28 21:41:20 +02:00
s-hadinger
a9a55b3ccd
Matter improve encoding of attributes to reduce flash size (#21864) 2024-07-28 21:24:39 +02:00
Theo Arends
a98399367b Fix analog reset adcparam 1 2024-07-28 18:58:06 +02:00
Theo Arends
88293d7414 Analog GPIO changes
- Analog GPIO ``ADC Input`` with ``AdcParam<x> 1,<start_range>,<end_range>,<margin>,1`` provide direct light control
- Analog GPIO ``ADC Voltage`` with ``AdcParam<x> 11,<start_range>,<end_range>,<lowest_voltage>,<highest_voltage>`` provide energy monitoring with dc voltage
- Analog GPIO ``ADC Current`` with ``AdcParam<x> 12,<start_range>,<end_range>,<lowest_current>,<highest_current>`` provide energy monitoring with dc voltage
2024-07-28 18:52:38 +02:00
Theo Arends
87ec0cce21 Revert "Analog GPIO extensions"
This reverts commit 7c1cf6a81fe9538324044864c7a79a7fe4380d0e.
2024-07-28 18:47:13 +02:00
Theo Arends
7c1cf6a81f Analog GPIO extensions
- Analog GPIO ``ADC Input`` with ``AdcParam<x> 1,<start_range>,<end_range>,1`` provide direct light control
- Analog GPIO ``ADC Voltage`` with ``AdcParam<x> 11,<start_range>,<end_range>,<lowest_voltage>,<highest_voltage>`` provide energy monitoring with dc voltage
- Analog GPIO ``ADC Current`` with ``AdcParam<x> 12,<start_range>,<end_range>,<lowest_current>,<highest_current>`` provide energy monitoring with dc voltage
2024-07-28 18:33:43 +02:00
s-hadinger
0dda8fc224
Matter fix circular references in WaterLeak and Rain sensors (#21862) 2024-07-28 18:10:25 +02:00
s-hadinger
5b8638b6b8
Berry updated precompiled Windows binary (#21858) 2024-07-28 15:47:52 +02:00
SteWers
068e8e6cbe
Update de_DE.h (#21857) 2024-07-28 14:24:47 +02:00
Theo Arends
a4e592c776 Refactor analog
- Change from double to float where possible
- Fix Voltage/Current energy calculation
2024-07-28 14:15:35 +02:00
bovirus
a9651e1bf1
Update Italian language (#21856) 2024-07-28 09:19:21 +02:00
Theo Arends
d7c6474104 Add Analog Voltage and Current 2024-07-27 17:11:25 +02:00
Theo Arends
9f99633f43 update changelogs 2024-07-27 13:32:01 +02:00
Norbert Richter
5abff54bc6
Add NeoPool NPSetOption<x> command (#21850) 2024-07-27 11:41:06 +02:00
Tarvi Pillessaar
a95e52b375
Neopool relay state detection and reporting fixes (#21841)
* Neopool: remove space in MQTT relay state response

* Neopool: fix detecting some relay states
2024-07-27 11:39:43 +02:00
Theo Arends
d4a63f791e Fix SPI busses 2024-07-26 14:29:51 +02:00
Theo Arends
f1a898c5ca Update changelogs 2024-07-26 14:12:08 +02:00
Theo Arends
e02615827b Fix compilation without SPI 2024-07-26 13:50:15 +02:00
s-hadinger
035daa663b
Berry file.write() raises an exception on failure (ex: disk full) (#21849) 2024-07-26 12:44:25 +02:00
Theo Arends
4cf741e6eb Update xsns_02_analog.ino 2024-07-26 11:02:27 +02:00
Theo Arends
9af25c73d6 Refactor ADC MQ_SAMPLES saving code and RAM 2024-07-26 11:01:09 +02:00
s-hadinger
55cb473e13
Berry webserver_async (#21836)
* Berry `webserver_async`

* Shrink size and include only when USE_BERRY_DEBUG
2024-07-26 09:32:12 +02:00
s-hadinger
1b12656955 Solidified Code updated 2024-07-25 21:15:06 +00:00
s-hadinger
f97c47c511
Avoid random content in bvalue (#21846) 2024-07-25 23:11:14 +02:00
s-hadinger
b8d7b5e2fa Solidified Code updated 2024-07-25 20:53:52 +00:00
s-hadinger
1b887d7202
Berry consolidated constants for solidified classes reduces Flash size (#21845) 2024-07-25 22:53:02 +02:00
Theo Arends
2f33f8e5a8 Fix Non-ESP32 Analog read resolution 2024-07-25 18:04:01 +02:00
Theo Arends
b9fcfa86c9 Update changelogs 2024-07-25 13:33:00 +02:00
s-hadinger
5096a13620 Solidified Code updated 2024-07-24 21:00:42 +00:00
s-hadinger
bf7fbf2cbe
Berry internal: remove class from closure to simplify code (#21839) 2024-07-24 22:59:53 +02:00
s-hadinger
db3e29dd47
Berry fix bytes setters and getters with negative offsets (#21835) 2024-07-24 14:24:11 +02:00
Theo Arends
0784637f4f Update changelogs 2024-07-24 13:41:58 +02:00
gemu
ddcc7d9990
jpeg on bw displays (#21832) 2024-07-24 13:32:03 +02:00
s-hadinger
b62b2d0d93
Matter support for split lights (SetOption68 1 and SetOption37 128) (#21834) 2024-07-24 10:20:25 +02:00
s-hadinger
8a7642f122
Matter fix inspect (#21833) 2024-07-24 08:51:23 +02:00
Theo Arends
895fbb2e8a Add optional USE_SONOFF_IFAN_CONFIG 2024-07-23 15:35:45 +02:00
Theo Arends
401d7b9b41 Fix StrCaseStr_P() 2024-07-23 14:28:36 +02:00
s-hadinger
c84faa79fb
Matter improve internal inspectfor superclasses (#21824) 2024-07-23 12:27:47 +02:00
s-hadinger
e085cfd3ab
Berry fix light.get for separate RGB/CT (#21818) 2024-07-22 20:38:14 +02:00
Theo Arends
f42e44a69d Support for Sonoff iFan04-H using template (#16402)
- Bump version v14.1.0.4
2024-07-22 15:35:20 +02:00
gemu
58485dec2a
fix resistive Touch xpt for 2 spi busses (#21814)
* fix xpt touch for 2 spi busses

* support for 2 utouch spi busses

* Update support.ino
2024-07-22 13:58:50 +02:00
Jan-David Förster
9878a96c0b
Update SHT3X driver to bring it into line with other sensors, e.g., HYT..., and avoid unnecessary I²C reads (#21816)
* Avoid unnecessary I²C reads, bring code in line with other sensors.

* Update xsns_14_sht3x.ino

fix copyright again
2024-07-22 13:58:17 +02:00
s-hadinger
8c9040919d
FIx typo in Parition_Wizard and re-generate tapp file (#21813) 2024-07-21 22:58:28 +02:00
s-hadinger
da169336ee
Berry simplified module persist (#21812) 2024-07-21 22:30:19 +02:00
Theo Arends
990a0e4257 Add Propagating upload to ESP8266 minimal 2024-07-21 15:22:15 +02:00
Theo Arends
e2fdf18625 Fix CalVer to SemVer updates 2024-07-21 12:23:10 +02:00
gemu
00a00a3505
fix pushcolors for displaytext (#21805) 2024-07-20 08:20:19 +02:00
bovirus
ebed3ded37
Update Italian language (#21792) 2024-07-18 08:28:43 +02:00
Theo Arends
a0893c9aae Add EPD update frame (#21788) 2024-07-17 17:52:30 +02:00
Theo Arends
105d18b9b6 Fix universal display slow response 2024-07-17 17:13:24 +02:00
Theo Arends
a448f538aa Revert "Fix universal display slow response"
This reverts commit 98a5bc95a971b24acf9931ab230c036336e02b48.
2024-07-17 16:22:34 +02:00
Theo Arends
98a5bc95a9 Fix universal display slow response 2024-07-17 16:20:28 +02:00
Theo Arends
b23a2f2304 Bump GPIOViewer version to v1.5.5 2024-07-17 14:28:50 +02:00
Theo Arends
85bff67d9b Add support for Wooliis Hall Effect Coulometer or Battery capacity monitor (#21732) 2024-07-17 14:14:44 +02:00
lmelette
9c8f3826b2
Added support for Wooliis LCD Coulometer/Battery Monitor (#21732)
* Added support for Wooliis LCD Coulometer/Battery Monitor

* Adjusted code structures and data types for Wooliis sensor

---------

Co-authored-by: Luca Melette <luca@positive.security>
2024-07-17 12:25:44 +02:00
Theo Arends
69f1ea5627 Move StateText fro MQTT to commands (#21782) 2024-07-16 15:16:18 +02:00
Christian Baars
6673fb906b
prevent crash with unconfigured audio (#21775) 2024-07-14 21:00:24 +02:00
Theo Arends
e9fdbea091 Unify display/touch init messages 2024-07-14 15:18:01 +02:00
Theo Arends
8f6a0b15c3 Update changelogs 2024-07-14 13:54:09 +02:00
Theo Arends
a18be12b77 Fix universal display software spi regression from yesterday 2024-07-14 10:01:34 +02:00
Jason2866
3d34097275
final i2s fix (#21770) 2024-07-13 18:11:33 +02:00
Theo Arends
7e22861090 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-07-13 14:58:30 +02:00
Theo Arends
36329827fc Refactor universal display driver 2024-07-13 14:58:24 +02:00
Jason2866
db3d292cae
Update Tasmota Arduino Core 3.0.2 based on IDF 5.2.2
- i2s fix
2024-07-13 13:45:01 +02:00
Jason2866
d27ca0bc89
Platform 2024.07.11 (#21765)
Fix i2s issues
2024-07-12 23:01:35 +02:00
Theo Arends
279d9e5824 Add I2C display name during startup in universal display driver 2024-07-12 16:36:04 +02:00
Theo Arends
f68ac4377a Fix udisplay positional replacements (#21121) 2024-07-12 14:57:27 +02:00
Theo Arends
59de2fd979 Fix udisplay ESP8266 I2C no asterix in config (#21121) 2024-07-12 12:49:00 +02:00
Christian Baars
13330eb085
Berry: add int8 quantisation to Tensorflow lite driver (#21763)
* add input quantization, minor fixes

* prevent divideByZero
2024-07-11 23:05:47 +02:00
Theo Arends
23de275dbe Fix POWCT default calibration 2024-07-11 20:51:53 +02:00
Jan-David Förster
27083e3664
Bugfix: multiple SHT4x sensors at the same bus, support for SHT40-CD1B (#21755)
* fixes multiple SHT3X sensor type bug

Important when multiple sensors are present at the same bus. Prior to this fix, multiple SHT3X sensor were detected, but not SHTC3 and SHT4X!

* Update xsns_14_sht3x.ino

Extends I²C address range to include SHT40-CD1B sensors with address 0x46.

* Update I2CDEVICES.md

* Show bus when multiple sensors at different busses

* Make bus number less intrusive

Only show bus number if two sensors or more are active at more than one bus.

* variable renamed

* cleanup

* fix typo

* fix another typo

* Harmonization and saving code size for ESP8266

Harmonization with xsns_09_bmp driver, saving code size for ESP8266

* fix string for webserver

* Display address only if more than one sensor present.
2024-07-10 18:55:51 +02:00
s-hadinger
5df51a9365
Matter comment code used only by controler (#21752) 2024-07-09 14:01:45 +02:00
s-hadinger
b56e3c43a8
Berry improve solidification of bytes (#21751) 2024-07-09 13:19:24 +02:00
timehlers
a3048a0b25
add support for 4.2 inch epaper display from WeAct Studio (partial up… (#21717)
* add support for 4.2 inch epaper display from WeAct Studio (partial update)

* make ep_mode=3 decision more clear, reinserted an mistakenly removed comment

---------

Co-authored-by: timehlers <>
2024-07-08 17:25:06 +02:00
Theo Arends
105a08dd20 Skip MQTT response if command is prefixed with underscore (#21740) 2024-07-08 16:57:21 +02:00
Theo Arends
09b2670c45 Add command `Backlog3` to execute commands without response but rule processing (#21740) 2024-07-08 15:53:15 +02:00
Theo Arends
60d0c2208b update changelogs 2024-07-08 13:54:48 +02:00
Christian Baars
7cb8a3f968
Berry: add cam module, img class (#21743)
* cam module, img class
2024-07-07 19:50:33 +02:00
Jason2866
99374ae45b
Tasmota Platform 2024.07.10 (#21745)
* Tasmota Platform 2024.07.10
* Update IDF 5.2.2 based Platform
2024-07-07 18:54:29 +02:00
s-hadinger
2f62c156f9
Matter remove longpress announce (#21742) 2024-07-07 09:54:53 +02:00
Theo Arends
fee5251bd4 Fix universal display power regression (#21726) 2024-07-05 15:30:31 +02:00
Theo Arends
363cd8d79e Update changelogs 2024-07-05 11:59:16 +02:00
s-hadinger
be40830bc0
Matter support for 'Generic Switch' based on Tasmota Buttons (#21731) 2024-07-04 20:47:32 +02:00
s-hadinger
152239c3ac
Matter simplify code (#21729) 2024-07-04 19:41:53 +02:00
s-hadinger
522d7f6ee4
Berry int64 added low32() and high32() methods, used in Matter (#21728) 2024-07-04 19:19:21 +02:00
Theo Arends
dfa5b46494 Update changelogs 2024-07-04 16:18:53 +02:00
Theo Arends
04a6d5513b Prep serial IDF 5.2 support 2024-07-04 16:04:59 +02:00
Norbert Richter
843dd17aec
NeoPool add data validation and statistics (#21721)
Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2024-07-04 09:28:01 +02:00
s-hadinger
243df3f2cf
FUNC_BUTTON_PRESSED now contains press_counter encoded in XdrvMailbox.command_code (#21724) 2024-07-03 22:13:50 +02:00
s-hadinger
a260d334d0
Matter add ack in attribute response (#21722) 2024-07-03 21:07:28 +02:00
Jason2866
b1422ff6b5
make Tasmota compatible for Arduino espressif32 based on IDF 5.2.2 (#21723)
Co-authored-by: Christian Baars <Baars@gmx.de>
2024-07-03 20:27:18 +02:00
Theo Arends
59fc68026b Add Support for Sonoff POWCT Ring (#21131) 2024-07-03 16:31:43 +02:00
Theo Arends
9b537d81e0 Fix energy maxpower retry count (#21695) 2024-07-03 13:52:01 +02:00
Theo Arends
ac011132ee Fix ESP8266 MaxPower edge case 2024-07-03 11:07:59 +02:00
Theo Arends
1fd8de6762 Update energy structure 2024-07-02 18:47:55 +02:00
Theo Arends
640aabe1b3 Fix ESP32 MaxPowerHold edge case (#21695) 2024-07-02 18:07:53 +02:00
Theo Arends
0b54d49181 Refactor TM1621 driver 2024-07-02 17:21:48 +02:00
Theo Arends
0e6e4e8949 Prep support Sonoff Pow CT 2024-07-02 11:38:55 +02:00
Theo Arends
344fdf94f7 Update changelogs 2024-07-02 10:19:59 +02:00
s-hadinger
b6c488a883
Berry bytes.resize() for large sizes (#21716) 2024-07-01 22:53:49 +02:00
Theo Arends
c8e29dafc6 Changed ESP32 TM1621 number overflow from "9999" to "12E3" (#21131) 2024-07-01 12:31:02 +02:00
s-hadinger
2cc785bf20
Berry FUNC_BUTTON_MULTI_PRESSED event and make FUNC_BUTTON_PRESSED called only on state changes and once per second (#21711) 2024-06-30 21:00:14 +02:00
s-hadinger
6842b53425
Berry FUNC_BUTTON_MULTI_PRESSED event and make FUNC_BUTTON_PRESSED called only on state changes (#21709) 2024-06-30 19:14:32 +02:00
Theo Arends
65588b8126 Increase upper limits user entry for energy drivers (#16059) 2024-06-30 17:26:39 +02:00
Theo Arends
33062dc839 Refactor energy drivers 2024-06-30 16:58:37 +02:00
Theo Arends
171d641092 Update changelogs 2024-06-30 15:38:40 +02:00
s-hadinger
8d2d121b6d
Berry FUNC_ANY_KEY event calling any_key() (#21708) 2024-06-29 22:12:34 +02:00
s-hadinger
117eb79953
Berry refactor IM to detect failed subscription heartbeats (#21706) 2024-06-29 12:27:27 +02:00
s-hadinger
c58607a5b5
Berry math.min() and math.max() (#21705) 2024-06-29 10:42:21 +02:00
Theo Arends
8a0493b659 Cleanup esp32 energy 2024-06-28 18:04:50 +02:00
Theo Arends
8364eca708 Refactor esp32 energy margins entry 2024-06-28 17:51:05 +02:00
Theo Arends
271446fd66 Remove obsolete SafePower commands 2024-06-28 14:38:08 +02:00
Theo Arends
96a45a6dde Refactor ESP32 energy 2024-06-28 11:12:28 +02:00
Theo Arends
3371fde11e Update changelogs 2024-06-28 09:56:55 +02:00
s-hadinger
2c03980365
Berry tasmota.rtc("config_time") (#21703) 2024-06-27 23:13:39 +02:00
Theo Arends
621f6f59e1 Fix default power windows 2024-06-27 17:07:08 +02:00
Theo Arends
178d42c286 Change ESP32 support for energy margin checks, like `MaxPower2` per phase (#21695)
- Add ESP32 support for power and energy limit checks, like ``MaxEnergy2`` per phase (#21695)
- Bump version v14.1.0.3
2024-06-27 16:50:45 +02:00
Theo Arends
20d0207890 Update changelogs 2024-06-27 13:30:15 +02:00
s-hadinger
97017017a4
Matter full support of events (#21698) 2024-06-27 00:03:34 +02:00
Theo Arends
33225bfabb Update changelogs 2024-06-25 22:58:46 +02:00
Theo Arends
bf1dace55d Add ESP32 USE_FLOG support (experimental) 2024-06-25 22:52:15 +02:00
Jason2866
a38b885275
esp32 core 3.0.2 2024-06-25 17:33:15 +02:00
Jason2866
0df56eaffa
Tasmota esp32 platform 2024.06.11 (#21694) 2024-06-25 17:00:07 +02:00
Theo Arends
af1fa724af Fix non-webserver compilation 2024-06-25 16:36:28 +02:00
Jason2866
0bddfad14e
No Ethernet support for the C2 (#21691)
* No Ethernet for the C2

* Post process: Disable always Ethernet for C2

* better check for Ethernet available

* typo

* excluse c2 with `ifndef`
2024-06-25 15:13:16 +02:00
Jason2866
aa39e000f7
add C2 as target for BLE (#21685) 2024-06-23 21:44:56 +02:00
Theo Arends
ddf762b7cc Refactor GPS driver 2024-06-23 17:38:54 +02:00
Jason2866
17ea732753
Do not abort compile when safeboot firmware can not be downloaded (#21684)
* Message when dl of safeboot failed
* check for safeboot
2024-06-23 15:01:07 +02:00
Theo Arends
25f17d7141 Update changelogs 2024-06-22 14:22:09 +02:00
Roland Praml
f3dcbdcea9
FIX: Allow use of UART0 with enabled USB_CDC_CONSOLE (#21496)
Co-authored-by: Roland Praml <roland@DESKTOP-MKLGCJR>
2024-06-22 14:17:05 +02:00
Theo Arends
904fb01e75 Update changelogs 2024-06-22 14:12:48 +02:00
Jason2866
b853886cb7
Refactor strip_flags.py and add_c_flags.py (#21677)
* refactor strip-flags.py

* refac more readable

* make failsafe

* move var to top

* align
2024-06-22 13:37:20 +02:00
s-hadinger
c96a48b9e1
Matter refactor reading of multiple attributes to reduce memory pressure (#21675) 2024-06-22 13:07:49 +02:00
Jason2866
0ea245805b
Remove entrys in some boards.json (#21676)
which maybe are wrong, since we don't know if the MCU is connected via CDC or USB-serial chip.
2024-06-22 13:02:58 +02:00
Theo Arends
3701a8cedc Update changelogs 2024-06-22 12:54:08 +02:00
s-hadinger
5decd01299
Matter add copy to Path (#21674) 2024-06-22 10:17:50 +02:00
s-hadinger
40fb8fa7df
Fix Matter resumption final ack (#21673) 2024-06-22 10:15:39 +02:00
s-hadinger
9ac4712527
Matter fix TLV.U8 unsigned encoding (#21672) 2024-06-22 10:10:57 +02:00
gemu
aa380ea190
fix tcp server (#21660) 2024-06-21 16:35:20 +02:00
stefanbode
d18925897a
MQTT fix on inverted shutter (#21663)
* MQTT fix on inverted shutter

* MQTT fix on inverted shutter
2024-06-21 16:35:05 +02:00
Jason2866
3537d18483
Update esp8266 platform to 2024.06.10 (#21668)
* Update esp8266 platform (2024.06.00)

* Update strip-floats.py

* Rename strip-floats.py to strip-flags.py

* rename to `strip_flags.py`

* esp8266 v2.7.7
2024-06-20 23:23:53 +02:00
Jason2866
fe280fe6aa
remove compile flag for risc-v MCUs which is only valid for xtensa MCUs (#21665) 2024-06-20 16:22:49 +02:00
s-hadinger
2115e09839
Matter show event name in logs (#21649)
* Matter show event name in logs

* Optimize logging

* Human readable version
2024-06-16 22:18:50 +02:00
Christian Baars
d15b88f746
improve parser (#21648) 2024-06-16 20:54:59 +02:00
s-hadinger
0d267a546a
Matter prepare events (#21647) 2024-06-16 18:42:23 +02:00
Norbert Richter
2ce513f50c
NeoPool make compiler setting available by user_config_override.h (#21645) 2024-06-16 17:07:51 +02:00
s-hadinger
bdfe3524a9
Matter CASE Sigma1 resumption mode for faster reconnection (#21644) 2024-06-15 23:11:48 +02:00
Theo Arends
d3f8afed29 Fix GPS_VELOCITY (#18035) 2024-06-15 16:52:42 +02:00
bovirus
9499211d7d
Upload Italian language (#21641) 2024-06-15 15:49:06 +02:00
Jason2866
711e283925
allow define wifi credentials in pio (#21640) 2024-06-15 15:48:24 +02:00
Theo Arends
94aded8d5c Update changelogs 2024-06-15 13:59:17 +02:00
s-hadinger
b16b3859e3
Matter add FanSpeed255 (#21638) 2024-06-15 13:34:18 +02:00
s-hadinger
2cf0eda870
Matter add Fan support (virtual only) (#21637)
* Matter add Fan support (virtual only)

* Add MtrReceived event
2024-06-15 12:51:08 +02:00
s-hadinger
767ac60266
Fix Matter interverted attributes 0xFFF9 and 0xFFFB (#21636) 2024-06-15 12:20:52 +02:00
bovirus
342ba2bd44
Update Italian language (#21635) 2024-06-15 11:11:42 +02:00
s-hadinger
2c1f6b24d3
Matter add internal debug option (#21634) 2024-06-15 10:56:48 +02:00
Theo Arends
0c49262d54 Update changelogs 2024-06-14 22:40:27 +02:00
s-hadinger
7cb8c0259d
Matter support for Rain sensor (#21633) 2024-06-14 18:54:27 +02:00
Theo Arends
75c47b6948 Extend command `SetOption147 1` to disable publish of IRReceived MQTT messages (#21574) 2024-06-14 11:23:03 +02:00
Theo Arends
9451f20b43 Update changelogs 2024-06-14 10:46:14 +02:00
gemu
cbff86695f
replace vars in descriptor + line (#21622) 2024-06-14 10:14:44 +02:00
Norbert Richter
95f6032d86
Change NeoPool using temperature as only frequently changing value for NPTeleperiod (#21628) 2024-06-14 10:14:13 +02:00
Jason2866
fe31d84ac6
add lib_ignore for rtsp lib
to env which does not support webcam
2024-06-13 21:29:24 +02:00
Jason2866
4fbe3590be
add TM1638 switches to display build (#21617) 2024-06-12 20:23:43 +02:00
Theo Arends
6e8e3cc740 Update changelogs 2024-06-12 10:54:17 +02:00
Theo Arends
7bde0b89d1 Fix QMP6988 2024-06-12 10:50:29 +02:00
s-hadinger
bd47d99ceb
Berry classof extended to class methods (#21615) 2024-06-12 10:48:38 +02:00
Theo Arends
87148ae0c1 Change SerialBridge command `SSerialSend9 replaced by SSerialMode`
- Bump version v14.1.0.2
2024-06-11 17:27:39 +02:00
Jason2866
7e8bcd896a
include SD_MMC.h only when supported (#21611) 2024-06-11 13:25:47 +02:00
Theo Arends
4858ec0aef Allow receive or send using SerialBridge 2024-06-11 12:41:19 +02:00
Jason2866
a02e3aa651
Update PULL_REQUEST_TEMPLATE.md 2024-06-11 11:25:45 +02:00
Theo Arends
ae9d2a2c85 Refactor display modes1 to 4 2024-06-11 11:07:30 +02:00
Theo Arends
0471ba24c1 Add support for QMP6988 temperature and pressure sensor 2024-06-10 16:05:25 +02:00
Theo Arends
7471d754f7 Update changelogs 2024-06-10 11:54:22 +02:00
Christian Baars
aa217e13b9
refactoring, bugfixes, generic device scanning (#21603) 2024-06-10 10:50:50 +02:00
Theo Arends
d046f9c25f Update changelogs 2024-06-10 10:50:19 +02:00
stefanbode
ae499eb73a
MQTT is not reporting the correct LastChange (#21605)
I assume this is just missing. I got some side effects on shutters where on MQTT commands the source is still the LAST one before the MQTT
2024-06-10 10:42:02 +02:00
s-hadinger
a53e057d54
HASPmota fix float rounding (#21604) 2024-06-09 19:39:15 +02:00
s-hadinger
9546390a1f
Berry add math.round (#21602)
* Berry add `math.round`

* add unit tests

* math.roung() returns real
2024-06-09 19:01:15 +02:00
Theo Arends
e4bf2a5c27 Update changelogs 2024-06-09 18:33:47 +02:00
s-hadinger
c86e4db3a9
Berry automatic rounding of float to int when calling C mapped functions (#21601) 2024-06-09 17:49:29 +02:00
Theo Arends
bdc15960ad Refactor display show sensors 2024-06-09 16:25:04 +02:00
Theo Arends
ea5c9bc9b6 Fix DisplayMode MQTT (Un)Subscribe without restart 2024-06-09 13:46:54 +02:00
Theo Arends
8cfa6f28ea Fix restart on wifimanager timeout 2024-06-09 10:40:01 +02:00
Theo Arends
3cae94d710 Update changelogs 2024-06-09 10:35:03 +02:00
Jason2866
c556c06413
remove dead code (#21595) 2024-06-09 10:25:32 +02:00
s-hadinger
01140d3013
HASPmota rounds to nearest int values passed as 'real' (#21599) 2024-06-08 22:10:43 +02:00
s-hadinger
c909aecd93
Matter support for bridged Air Quality (#21597) 2024-06-08 18:53:10 +02:00
s-hadinger
4c5c6f726f
Matter align names of endpoint classes with hierarchy (#21596) 2024-06-08 18:33:06 +02:00
Theo Arends
1e33b45ea8 Add partial DisplayText features to modes1 to 5 2024-06-08 17:22:19 +02:00
Theo Arends
ff961df336 Change display timing splash screen with display modes 1 to 5 2024-06-08 15:33:44 +02:00
s-hadinger
7c48ab710a
Matter fix Air Quality sensors (#21592) 2024-06-08 09:49:39 +02:00
s-hadinger
02cd72403d
Matter size optimization (#21590) 2024-06-07 20:44:17 +02:00
s-hadinger
5a1ae70549
Matter filter suffix automatically added for sensors (#21589) 2024-06-07 19:48:03 +02:00
s-hadinger
8479da0afb
Remove obsolete comment in my_user_config.h 2024-06-07 13:04:44 +02:00
Theo Arends
9350f68ac5 Replace optional MQTT_TELE_RETAIN to Energy Margins message by `SensorRetain` 2024-06-07 11:48:52 +02:00
s-hadinger
d16a502f36
Berry fix potential crash when solidifying loaded bytecode (#21583) 2024-06-06 22:11:52 +02:00
Theo Arends
a99c6d67bb Add XIAO ESP32S3 Sense camera pins 2024-06-06 18:14:30 +02:00
Theo Arends
c7083629e1 update changelogs 2024-06-06 16:29:20 +02:00
Marius Bezuidenhout
f68e2285e8
Fixed incorrect output size clamping (#21568) 2024-06-06 09:39:23 +02:00
s-hadinger
0bcb981556
Matter refactoring of bridged devices (#21575) 2024-06-05 23:13:48 +02:00
Jason2866
e198ffb22d
Tasmota esp32 platform 2024.06.10 (#21569) 2024-06-05 15:07:38 +02:00
Jason2866
f3fa9dfd9b
Update M5stack_core2_display.ini 2024-06-05 12:53:13 +02:00
s-hadinger
9e168d84d7
Berry input() returns empty string and does not crash (#21565) 2024-06-04 23:30:01 +02:00
Jason2866
89b4376e31
uTouch for m5core2 2024-06-04 17:03:05 +02:00
Jason2866
7ae86d336b
add uTouch settings 2024-06-04 16:45:08 +02:00
Theo Arends
dcc7021384 Remove GPIO_I2S_BCLK_IN, GPIO_I2S_WS_IN 2024-06-04 14:19:11 +02:00
Theo Arends
7d87bf0dcc Update changelogs 2024-06-04 09:37:02 +02:00
s-hadinger
01f9097acb
Add default value for SetOption151 (#21560) 2024-06-03 22:53:13 +02:00
s-hadinger
4f732477dd
Matter support for Air Quality sensors (#21559) 2024-06-03 21:46:58 +02:00
s-hadinger
a51c511d52
Berry bytes solidification (#21558)
* Berry prepare for bytes() solidification

* Berry solidification of bytes objects

* Berry solidification of `bytes` instances
2024-06-03 21:14:44 +02:00
Theo Arends
243411916b Bump v14.1.0.1 2024-06-03 14:50:59 +02:00
Christian Baars
7b678ba2c8
forgotten safety check (#21549) 2024-06-03 12:09:38 +02:00
blenk92
2d33a77ba5
Support Levoit Core200s (WIP, Feedback requested) (#21502)
* Support Levoit Core 200S

Add berry script to support Levoit Core 200S (and possibly other too
since levoit offers multiple similar devices)

* Core200S: fix comments
2024-06-03 09:50:28 +02:00
Theo Arends
fd02f5aefc Fix GPIO16 as Transmit enable pin (#21269) 2024-06-02 17:15:11 +02:00
Theo Arends
132b98f0c2 Change GPIOViewer from v1.5.3 to v1.5.4 (No functional change) 2024-06-02 12:03:28 +02:00
Andreas Doppelhofer
0249f66066
SML: Allow larger offset when using x to ignore bytes (#21535)
* Allow larger offset when using x to ignore bytes

STW Klagenfurt sends 355 bytes, and the interesting values starts somewhere at position 304. Therefor we need to set a larger uint range to allow more than 255 bytes to ignore.

* Update xsns_53_sml.ino

---------

Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2024-06-02 11:18:35 +02:00
Theo Arends
b58615183f Update changelogs 2024-06-02 11:00:30 +02:00
Christian Baars
979dd86730
Bugfix: crash when using tjpegd and LVGL (#21544)
* prevent crashes when using tjpegd in other places in Tasmota

* do not use external tjpegd in Tasmota
2024-06-02 09:48:07 +02:00
s-hadinger
e13c0a7114
Berry coc parser keeps order of variables (#21542) 2024-06-01 20:46:55 +02:00
Theo Arends
8c4388bf47 Fix M5AtomS3 display descriptions 2024-05-31 15:37:23 +02:00
Theo Arends
fc7638e684 Update changelogs 2024-05-31 10:07:28 +02:00
s-hadinger
0bd5f6b27a
Remove deprecated code from drivers, USE_TTGO_WATCH and USE_M5STACK_CORE2 (#21533) 2024-05-31 08:58:11 +02:00
Theo Arends
90e21a5902 Update changelogs 2024-05-30 14:22:14 +02:00
Roland Praml
4d9e9198b5
SML: FastExit for binary SML parsing (#21497)
* SML: FastExit for binary SML parsing

* moved the fast-exit in the SML-shift-in

* Using constants for flags

---------

Co-authored-by: Roland Praml <roland@DESKTOP-MKLGCJR>
2024-05-30 14:18:26 +02:00
Theo Arends
533b86d890 Update changelogs 2024-05-30 14:12:20 +02:00
s-hadinger
ec696509b9
uDisplay Parallel display on Core3 (#21529) 2024-05-30 12:44:09 +02:00
Theo Arends
f5ed2e0845 Fix oops 2024-05-30 10:54:32 +02:00
Theo Arends
2771827c15 Changed TCP bridge increased baudrate selection (#21528)
- Bump v14.0.0.4
2024-05-30 10:50:12 +02:00
Theo Arends
b61ea17ce1 Bump version v14.0.0.3 2024-05-29 17:17:53 +02:00
Jason2866
d134b88c68
ESP32 Platform 2024.05.13 (#21524)
* ESP32 Platform 2024.05.13

reverts Arduino PR 9453 `WiFiClient - rename flush() to clear()`

* trigger PR CI
2024-05-29 16:59:33 +02:00
Theo Arends
2347f37269 Revert "Fix ESP32 slow response when using UDP as in emulation (#21470)"
This reverts commit f132663dfe18b0ac7937302d7c9f985d49fc209e.
2024-05-29 16:45:16 +02:00
Theo Arends
7c98e0d303 Revert "Another few victims of core3 UDP"
This reverts commit 27c35befdf1302c7bab37063b67c22db49d54d9c.
2024-05-29 16:45:04 +02:00
Theo Arends
adcc50ac6e Revert "Fix network flushes"
This reverts commit b88ec44d15394fc18bf2f1e23d4d0263c65ea81d.
2024-05-29 16:44:50 +02:00
Theo Arends
b88ec44d15 Fix network flushes 2024-05-29 14:09:54 +02:00
Theo Arends
27c35befdf Another few victims of core3 UDP 2024-05-29 11:57:29 +02:00
Theo Arends
f132663dfe Fix ESP32 slow response when using UDP as in emulation (#21470) 2024-05-29 11:46:55 +02:00
Theo Arends
bc6faa733c Refactor Telegram 2024-05-28 17:47:35 +02:00
Christian Baars
a4dbc57448
multiple fixes (#21511) 2024-05-28 10:59:57 +02:00
Theo Arends
7b478f718c Update changelogs 2024-05-27 22:47:08 +02:00
s-hadinger
bb40642225
Fix Telegram TLS fingerprint, remove CA validation (#21514) 2024-05-27 22:31:27 +02:00
s-hadinger
0a2990de59
Update Telegram CA (Go Daddy Root Certificate Authority - G2) (#21510) 2024-05-27 18:21:05 +02:00
Theo Arends
1e42b5d131 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-05-27 15:46:27 +02:00
Theo Arends
5085a8bbbb Bump version v14.0.0.2 2024-05-27 15:46:15 +02:00
Jason2866
2aa8787884
disable ESP32 WDT (#21509) 2024-05-27 15:40:16 +02:00
Theo Arends
0fe893b01d Fix unsupported %.2f (#21508) 2024-05-27 15:37:15 +02:00
Christian Baars
33f491a8e6
scan wifi asynchronously (#21498) 2024-05-27 15:17:09 +02:00
Theo Arends
00694abbde Update changelogs 2024-05-27 14:07:18 +02:00
Roland Praml
e07b0e42b3
SML: Fix compile error when median-filter is disabled (#21495)
Co-authored-by: Roland Praml <roland@DESKTOP-MKLGCJR>
2024-05-27 13:11:54 +02:00
s-hadinger
e56f6a150d
Berry add reuse of methods for interface-like code reuse (#21500) 2024-05-26 23:05:43 +02:00
btsimonh
a78169b43a
Webcamshutdown - use FUNC_ABOUT_TO_RESTART (#21462)
* use FUNC_ABOUT_TO_RESTART for webcam shutdown in webcamv2

* fix an annoying compile warning - lengths are pre-checked to fit anyway.
2024-05-25 19:51:46 +02:00
s-hadinger
25a2a46917
Matter auto-fix IPv6 link-local zone id when network reconnects (#21494) 2024-05-25 19:51:00 +02:00
Jason2866
662b84947b
ESP32 Platform 24.05.12 (#21493) 2024-05-25 13:36:55 +02:00
Christian Baars
688f3ffb19
Small changes to berry_custom to better keep the local repository clean (#21491)
* keep berry_custom clean with regards to GIT

* keep .keep
2024-05-25 09:23:08 +02:00
s-hadinger
c161f63c9a
Berry fix message for borrowed method (solidification) 2024-05-24 22:59:19 +02:00
s-hadinger
0d3e888147
Berry change internal storage of parent class for methods (#21490)
* Berry change internal storage of parent class for methods

* Fix compilation of zigbee

* Patch solidify for berry_custom
2024-05-24 22:32:37 +02:00
btsimonh
3e0b70af10
Ufs serve fix - makes it work better on esp32cam (ai thinker style) (#21486)
* Add yield() in file listing, so watchdog does not trigger with very large folders

* update UFSServe function to be like download function.
This removes the use of server.streamFile, and provides a much more reliable download.
Make UFSServe always use this function, regardless of auth requirement.  (i.e. no use of the original in the original class, as it still uses streaming.)
Note that UFSServe is enab;ed with #define UFILESYS_STATIC_SERVING
2024-05-24 22:02:09 +02:00
Christian Baars
e5521bb763
Build system: allow easy solidification of external Berry (#21430)
* custom solidification

* solidify-from-url

* forgot folders

---------

Co-authored-by: Radio Loge <radiologe@MacBook-Pro-von-Radio.local>
2024-05-24 20:57:43 +02:00
Christian Baars
1ca91a8170
Berry webserver: allow to content_send bytes (#21479) 2024-05-24 20:55:56 +02:00
Christian Baars
01bd6ec52a
apll not supported on all SOCs (#21483) 2024-05-24 15:55:24 +02:00
Theo Arends
a9e7426cff Changed support W5500 SPI ethernet using four SPI GPIOs only without IRQ and RESET 2024-05-23 15:16:05 +02:00
btsimonh
522f6c5e00
fail UFSServe if Webserver is null. (#21467) 2024-05-22 16:26:26 +02:00
Theo Arends
a14aad93cb Revert "Fix SendMail watchdog restart during reconnect to SMTP server (#21454)"
This reverts commit 784bc3ea5f939c0bc6c0bc2b0c5cd6a8c392a351.
2024-05-22 15:19:14 +02:00
Theo Arends
784bc3ea5f Fix SendMail watchdog restart during reconnect to SMTP server (#21454) 2024-05-22 15:18:38 +02:00
Christian Baars
da4fab66c1
more consistent usage of variables, really use apll rx setting (#21459) 2024-05-21 17:43:43 +02:00
Theo Arends
3b4035b3e2 Add FUNC_ABOUT_TO_RESTART (#21460) 2024-05-21 17:28:02 +02:00
Theo Arends
73350da88c Even better fix 2024-05-21 17:14:47 +02:00
Theo Arends
140e4791aa nicer solution skipping loracommand header 2024-05-21 17:10:19 +02:00
Theo Arends
08afd40823 Remove command header 2024-05-21 16:48:14 +02:00
Theo Arends
00a389bbb2 Add default LoRaCommand disable reception (#17790) 2024-05-21 16:18:46 +02:00
Theo Arends
a4c7add8df Prep ESP32 SPI bus 2 support 2024-05-21 15:58:16 +02:00
Theo Arends
2e51860464 Fix GUI auto-decimal (#21445) 2024-05-21 14:27:02 +02:00
Theo Arends
7824378755 Update changelogs 2024-05-21 10:22:29 +02:00
s-hadinger
4e6ba4fccc Solidified Code updated 2024-05-21 07:40:50 +00:00
Ludovic BOUÉ
dc107a1a6e
Support for Matter 1.3 Water leak detectors (#21456)
* Create Matter_Plugin_2_Sensor_Waterleak.be

* Update Matter_Plugin_2_Sensor_Waterleak.be

* Create Matter_Plugin_3_Bridge_Sensor_Waterleak.be

* Create Matter_Plugin_9_Virt_Sensor_Waterleak.be

* Update Matter_UI.be

* Update be_matter_module.c

* Update Matter_UI.be

* Solidify Matter

* Solidified new Matter files

* Solidified new Matter files
2024-05-21 09:40:05 +02:00
btsimonh
2eccc96c62
Ble 32 fixscanning (#21451)
* restore scanend callback

* fix ble scanning time from 20ms to 20s

* fix connection timeout.
Use ->getLastError() to find out why we did not connect.

* add #define to remove hack if not required in the future.
2024-05-20 20:56:55 +02:00
s-hadinger
7253e83a04
Fixed Zigbee crash when removing ZbName (#21449) 2024-05-20 16:51:35 +02:00
Christian Baars
e7f69ebc5f
bugfix: webradio crash with invalid url (#21446) 2024-05-20 09:12:14 +02:00
bovirus
62af6f3a7c
Update Italian language (#21437)
* Update Italian language

* Update Italian language (2)

---------

Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2024-05-20 09:11:48 +02:00
s-hadinger
239ddfc15c
Wrong timeout in WebQuery and webclient since Core3 (#21442) 2024-05-19 19:47:32 +02:00
Christian Baars
7f7bcd0ab6
small refactoring, more robust handling of commands (#21439) 2024-05-19 17:12:54 +02:00
Theo Arends
009aa8d481 Prep ASR650X LoRaWan node 2024-05-19 12:09:33 +02:00
Theo Arends
ec97552c8b Update changelogs 2024-05-19 11:20:42 +02:00
Christian Baars
0e5b2a86b8
i2s audio ,some improvements (#21433) 2024-05-18 22:15:59 +02:00
Barbudor
285a6f3532
knx dimmer and colour (#21434) 2024-05-18 22:15:46 +02:00
Barbudor
60a42f015e
Add command WebRun (as WebQuery extension) (#21364)
* tasmota-1m32

* ready

* add code usage

* clean

* remove also that

* remove WebQueryWithFunction in favor of default value
2024-05-18 22:15:16 +02:00
Theo Arends
33b0c1d5c2 Update changelogs 2024-05-18 12:29:51 +02:00
s-hadinger
b69f9b77a7
Berry Leds matrix alternate more and error about 'bri' attribute (#21431) 2024-05-18 08:34:59 +02:00
s-hadinger
27c731c7b6
Avoid connection errors when switching to safeboot to upload OTA firmware (#21428) 2024-05-17 20:40:17 +02:00
Jason2866
ea5cc628a8
no need for clang anymore 2024-05-17 14:56:21 +02:00
s-hadinger
5b207209a5
Berry binary compiled with gcc (#21426) 2024-05-17 14:22:10 +02:00
Theo Arends
0d225839da On universal display remove default backlight power if a PWM channel is used for backlight 2024-05-17 14:08:34 +02:00
Theo Arends
2ddbc7c7fa Fix watchdog restart or freeze if `displaytext` is more than 128 characters (#21401) 2024-05-17 12:47:14 +02:00
s-hadinger
b9bd558abe
Enabled watchdog for ESP32 and variants (#21422)
* Enabled watchdog for ESP32 and variants

* Ensure compilation for sageboot

* Fix compilation

* Fix compilation for RISCV
2024-05-16 21:19:34 +02:00
Theo Arends
6ba59385d4 Fix Domoticz re-subscribe on MQTT reconnect. Regression from v13.4.0.3 (#21281) 2024-05-16 14:43:30 +02:00
Theo Arends
f602470aeb Update changelogs 2024-05-16 13:50:50 +02:00
s-hadinger
85a9eda143
Revert "Enabled watchdog for ESP32 and variants (#21414)" (#21417)
This reverts commit e4ea62cc0dd2991da603f7b779656dc8a143edef.
2024-05-15 22:52:49 +02:00
s-hadinger
ec6448b353
Drop support of old insecure fingerprint algorithm (deprecated since v8.4.0) (#21416) 2024-05-15 22:30:10 +02:00
s-hadinger
e4ea62cc0d
Enabled watchdog for ESP32 and variants (#21414) 2024-05-15 19:13:45 +02:00
Theo Arends
ac06195907 Remove non IDF5 code 2024-05-15 16:45:42 +02:00
Theo Arends
1d7f3e8f07 Fix compile warning (#21411) 2024-05-15 15:54:18 +02:00
Theo Arends
17a299dd00 Update changelogs 2024-05-15 15:37:25 +02:00
Jason2866
2705e6177d
use compiler option no-target-align (#21407) 2024-05-15 09:40:33 +02:00
Theo Arends
0322eb370c Update v14.0.0.1 2024-05-14 16:48:15 +02:00
Theo Arends
9105b56ffd Bump v14.0.0.1 2024-05-14 16:45:58 +02:00
Theo Arends
f9ca7d4821 Update changelogs 2024-05-14 10:59:23 +02:00
s-hadinger
4cda2d7dc2
Berry Leds uses native WS2812 driver by default (#21406) 2024-05-13 22:21:58 +02:00
s-hadinger
2865630309
Prepare for ESP32 WDT (#21383)
* Prepare for ESP32 WDT

* make `sleep()` reset WDT
2024-05-12 21:12:08 +02:00
s-hadinger
15a5ef30c4
Fixed Berry gpio.dac_voltage() (#21403) 2024-05-12 21:11:14 +02:00
Theo Arends
50e9bb70aa Update RELEASENOTES.md 2024-05-10 11:09:17 +02:00
Barbudor
466dcae840
Quick Fix: KNX loose config on restart (#21378)
* quick fix

* revert to ascillato test
2024-05-10 10:46:40 +02:00
Theo Arends
3e8ca44681 Attempt to fix TasMesh (#21395) 2024-05-10 10:34:58 +02:00
Theo Arends
c7a5cd58f4 Fix a compile error 2024-05-10 10:18:46 +02:00
Theo Arends
178b11196a Fix default compile 2024-05-09 14:34:25 +02:00
Theo Arends
141a4086b3 Revert "ESP8266 removed SPI check for valid SPI Chip Select (#21393)"
This reverts commit 584329a6c0ba231d0cdd4fc151a1ae39b7bcf86d.
2024-05-09 14:11:57 +02:00
Theo Arends
584329a6c0 ESP8266 removed SPI check for valid SPI Chip Select (#21393) 2024-05-09 13:52:07 +02:00
Theo Arends
2f3663b8aa Update changelogs 2024-05-08 13:26:36 +02:00
gemu
61814e79fe
fix jpeg compile core3 (#21387) 2024-05-08 13:21:14 +02:00
chefpro
1d626225de
Add display.ini file for esp32-1732S019 development board which is based on esp32s3 (#21384)
Co-authored-by: Peter Rustler <peter@rustlerit.de>
2024-05-08 09:18:51 +02:00
Theo Arends
522929384c Update changelogs 2024-05-07 16:16:39 +02:00
Jason2866
da0e4c433f
Update platform to 2024.05.11 (#21381) 2024-05-07 15:19:32 +02:00
Theo Arends
9314032f69 Fix safeboot logging flood 2024-05-07 11:05:54 +02:00
fb-pilot
2f59523416
beautified code xsns 33 qmc5883l (#21312)
* Add files via upload

* Add files via upload

beautified code

* Update xsns_33_qmc5883l.ino

date removed

* Add files via upload

adapt defaults for bf-xsns_33_qmc5883l

* Update tasmota/my_user_config.h

Co-authored-by: Erik Kunze <eku@users.noreply.github.com>

---------

Co-authored-by: Erik Kunze <eku@users.noreply.github.com>
2024-05-07 10:06:57 +02:00
Christian Baars
08f9b37b99
Berry add gpio.set_freq() (#21375) 2024-05-07 09:36:39 +02:00
Theo Arends
21c7f4c81b Minor changes 2024-05-06 17:36:39 +02:00
Theo Arends
c5e122f922 Add GPIOViewer pin mode support 2024-05-06 17:20:52 +02:00
fb-pilot
0d6baa00e4
add options for INA3221 driver (#21310)
* Add files via upload

* Add files via upload

* Add files via upload

* Delete tasmota/xsns_100_ina3221.ino

---------

Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com>
2024-05-06 11:42:31 +02:00
Theo Arends
d469f2a565 Update changelogs 2024-05-06 10:34:48 +02:00
Jason2866
918020202d
Safeboot show correct flash partition size (#21366) 2024-05-05 22:17:10 +02:00
s-hadinger
f83c58fa0e
Matter broken NOCStruct types preventing pairing with HA (#21365) 2024-05-05 21:52:10 +02:00
s-hadinger
c07a90bea0
Letsencrypt ISRG_Root_X1 changelog 2024-05-05 21:21:53 +02:00
Anton Gladky
dd161dc732
Replace Let’s Encrypt R3 by ISRG Root X1 one. (#21352)
According to the blog post [1] new intermediate certificates
will be deployed. Thus R3 certificate, used now will not allow
to setup a secure connection.

This root certificate is valid till 2035/06
2024-05-05 21:19:16 +02:00
s-hadinger
e6e15a214f
Seriallog set to SERIAL_LOG_LEVEL at boot (#21363)
* Seriallog set to `SERIAL_LOG_LEVEL` at boot

* Ensure seriallog has at least LOG_LEVEL_INFO at boot
2024-05-05 21:08:24 +02:00
s-hadinger
7a9f60facc
Berry added after_teleperiod event matching FUNC_AFTER_TELEPERIOD 2024-05-05 19:43:40 +02:00
s-hadinger
57cae7c259 Solidified Code updated 2024-05-05 17:43:19 +00:00
David Gwynne
cced3d1d93
let berry drivers provide "after_teleperiod" handlers (#21351)
this is useful if you want to periodically report the state of something
handled separately to the sensors output.
2024-05-05 19:42:27 +02:00
Theo Arends
c41f18a9b6 Fix calloc allignment 2024-05-05 18:26:21 +02:00
Theo Arends
53073b374d Fix initial default settings 2024-05-05 18:21:03 +02:00
s-hadinger
3d0532ce8c
Fixed void unwanted OTA upgrade when safeboot starts for the first time (#21360) 2024-05-05 18:03:32 +02:00
Marius Bezuidenhout
73b0ec2c1d
Fix xsns_87_mcp2515 (#21331)
* Fixed mcp2515 not getting initialised and correctly setting configured CS pin

* Changed MCP2515_BMS_FREEDWON to MCP2515_BMS_SMA as SMA is better known.
2024-05-05 16:02:44 +02:00
Theo Arends
a3e57d6479 Add Support for compile time hostname with #define WIFI_DEFAULT_HOSTNAME (#21236) 2024-05-05 15:37:03 +02:00
Theo Arends
c0965f5624 Fix compile warning 2024-05-05 15:02:01 +02:00
Theo Arends
abc460575a Update changelogs 2024-05-05 14:38:55 +02:00
s-hadinger
c4e847d288
Fix crash in WebUI 2024-05-05 11:28:28 +02:00
Jason2866
369e5aaef1
Platform update 2024-05-04 20:57:53 +02:00
Christian Baars
ca5a2d322d
fix Tensorflow driver for IDF5.x (#21348) 2024-05-04 19:59:47 +02:00
Jason2866
abd013eda8
Platform 2024.05.10 (#21347) 2024-05-04 19:02:45 +02:00
Jason2866
1e63c8924e
use "minimal" instead of "safeboot" (#21346) 2024-05-04 15:34:11 +02:00
s-hadinger
599526a90c
`Publish3` to send binary data encoded as Hex, disabled in safeboot (#21345) 2024-05-04 15:26:07 +02:00
Jason2866
3be5f630e1
fix s2cdc serial console (#21344) 2024-05-04 15:14:51 +02:00
Marius Bezuidenhout
545cc27ca8
Fixed HexToBytes function. Added Publish3 command. (#21329) 2024-05-04 14:42:35 +02:00
Christian Baars
fffb43fa79
fix conflicting log_level definitions (#21337) 2024-05-03 23:25:41 +02:00
Jason2866
1d7498d0b8
remove serial bridge from safeboot (#21334)
* remove serial bridge from safeboot
* Enable SPI in ESP32 safeboot
2024-05-03 15:31:48 +02:00
Jason2866
9168f7b198
More shrink of safeboot (#21333)
* remove crash recorder from safeboot

* small refactor

* safeboot more shrink
2024-05-03 15:01:31 +02:00
Jason2866
9b8cd42e5f
remove crash recorder from safeboot (#21332)
* remove crash recorder from safeboot

* small refactor
2024-05-03 14:47:14 +02:00
Christian Baars
6f20dcd0ed
Prepare restoration of Tensorflow driver for Core 3 (#21327)
* Fix compilation of conv.cc

* fix compilation of depthwise_conv.cc
2024-05-03 12:28:49 +02:00
s-hadinger
041540c80c
Changed internal macro APP_SLEEP to TASMOTA_SLEEP to specify default sleep in ms (#21324) 2024-05-03 09:03:45 +02:00
s-hadinger
18bdf07903
Reduced safeboot size by 2.9KB (#21322)
* Reduced safeboot size by 2.9KB

* remove leftover
2024-05-02 23:09:56 +02:00
s-hadinger
24c8f65cb5
Compilation of Ethernet when SPI drivers are disabled (#21321) 2024-05-02 22:07:37 +02:00
s-hadinger
d08bf78e24
Zigbee startup event triggered after plugins are loaded (#21320) 2024-05-02 21:54:44 +02:00
s-hadinger
f7e285ab11
Fixed EthType for Core3 (#21317) 2024-05-02 14:46:28 +02:00
Jason2866
dbafe1e167
PIO inspect for ESP32 2024-05-02 14:09:23 +02:00
Jason2866
a67f4f0c06
Make use of PIO Project Inspect possible
without the set option, Inspect tries to analyze every lib which does fail
2024-05-02 13:57:18 +02:00
Christian Baars
08c3416255
Berry example: wave file recorder (#21315) 2024-05-02 13:36:28 +02:00
Jason2866
fb78c3a796
Fix PIO Inspect
Solo1 framework does not support PSRAM
2024-05-02 13:31:34 +02:00
Jason2866
50979c328c
Fix upper lower case difference 2024-05-01 15:18:25 +02:00
Jason2866
117cee9e6e
Update esp32 platform to 2024.04.14 (#21299)
* use new HWCDC Arduino code
2024-04-30 17:58:30 +02:00
s-hadinger
fd148a8d12
Berry math.inf, math.isinf() and fixed json ouput for inf and nan (#21304) 2024-04-29 22:55:57 +02:00
Christian Baars
5b5fdb0afe
WIP: make I2S bridge compile with Core 3, untested on hardware (#21301)
* make I2S bridge compile with Core 3, untested on hardware

* typo USE_I2S_BRIDGE

* rm Core 2 version
2024-04-28 22:09:09 +02:00
legchenkov
ecf7d444c6
Add Support for AHT30 Temperature and Humidity Sensor (#19922)
* Update xsns_63_aht1x.ino

Support for AHT30 added. Fixed command for loading factory calibrated data and reset command, added needed delay after read command and increased measurement period to reduce heating of sensor.

* Update xsns_63_aht1x.ino

* Update xsns_63_aht1x.ino

The reset command is aligned with the AHT10/20/30 datasheet.

* Update ru_RU.h

Translated Dew Point to russian Точка росы for sensors

* Delete tasmota/language/ru_RU.h

Will go to separate PR

* Add files via upload

* Update ru_RU.h

Partial translation update

* Add files via upload
2024-04-28 21:34:36 +02:00
Jason2866
852ce100db
add USE_I2S_ALL (#21298)
Co-authored-by: Staars <baars@klinikum-brandenburg.de>
2024-04-28 18:09:43 +02:00
Jason2866
27d2a0a2d5
add target reset (#21292) 2024-04-27 21:52:39 +02:00
Christian Baars
b3c075c666
I2S changes for Core 3 (#21291)
* i2s fixes and refactoring

* DMA setting added, more refactoring
2024-04-27 20:50:03 +02:00
s-hadinger
5cc5e5ef45
HASPmota demo of Renaissance Watch for 480x480 displays (#21290)
* HASPmota demo of Renaissance Watch for 480x480 displays

* Put arrow in front of date
2024-04-27 19:05:24 +02:00
Jason2866
71c8748def
Revert "Platform 2024.04.13 (#21264)" (#21288)
This reverts commit 492c6bbda26be0b23d3c5d7b4dba48f7380a48c7.
2024-04-27 18:56:11 +02:00
s-hadinger
bf01e5bb70
Fix async HMDI CEC (#21287) 2024-04-27 18:22:50 +02:00
sfromis
311a9f18e6
Wrong feature bit for USE_SPL06_007 (#21286)
Obvious "typo" in setting the feature bit for this recently added sensor. Already mentioned in https://github.com/arendst/Tasmota/pull/21185#issuecomment-2071122611
2024-04-27 16:30:57 +02:00
bovirus
4aa2da3eb2
Update Italian language (#21283) 2024-04-26 16:52:35 +02:00
fb-pilot
e2a08d5d01
Add files via upload (#21262)
fix display multiple devices and add more options
2024-04-26 16:52:06 +02:00
Jason2866
41970f7d62
Disable psram check to avoid "blinking" of GPIO 16/17 at startup (#21282)
* add `DISABLE_PSRAMCHECK`

* remove code before IDF 5

* add no psram env
2024-04-25 20:19:20 +02:00
Jason2866
eef4ff389f
Delete IDF 4.4 based i2s code (#21188)
* Delete tasmota/tasmota_xdrv_driver/xdrv_42_2_i2s_mp3stream.ino

* Delete tasmota/tasmota_xdrv_driver/xdrv_42_0_i2s_audio.ino

* Delete tasmota/tasmota_xdrv_driver/xdrv_42_1_i2s_mp3mic.ino
2024-04-25 13:41:47 +02:00
s-hadinger
1e64eaddf3
Berry webserver.content_close() (#21276) 2024-04-25 12:50:43 +02:00
s-hadinger
466652549a
Fix faulty printing of IPv4 2024-04-25 11:23:27 +02:00
s-hadinger
2a35f325b8
Put back wifi IPv6 workaround (#21274) 2024-04-25 10:28:42 +02:00
s-hadinger
469492a41a
Berry web_add_handler called before Webserver is initialized (#21272) 2024-04-25 09:08:24 +02:00
s-hadinger
582ca598f0
HDMI CEC synchronously sends messages (#21270) 2024-04-24 20:06:13 +02:00
s-hadinger
91dd120aa9
TCP Tx En GPIO type (#21269) 2024-04-24 19:53:01 +02:00
Norbert Richter
5a8d713d77
NeoPool prevent possible multiple bus requests (#21267)
* Update NeoPool register desc

* NeoPool prevent possible multiple bus requests
2024-04-24 17:44:26 +02:00
Jason2866
492c6bbda2
Platform 2024.04.13 (#21264) 2024-04-24 13:04:01 +02:00
s-hadinger
b9cd7bf04a
Add ESP32S3-4848S040 display.ini (#21259) 2024-04-23 22:12:27 +02:00
s-hadinger
546ed9d409
Add uTouch to WT32_SC01 display.ini (#21258) 2024-04-23 22:05:00 +02:00
s-hadinger
9970b9d947
uDisplay fast drawing on RGB displays (#21257) 2024-04-23 21:17:22 +02:00
s-hadinger
595b7f750d
LVGL fix memory allocation of flush buffers (#21256) 2024-04-23 20:11:01 +02:00
s-hadinger
157e1afb29
LVGL disabled vector graphics (#21242) 2024-04-22 09:18:26 +02:00
Jason2866
805ad32a30
typo 2024-04-21 23:07:51 +02:00
Jason2866
ef99b40578
add S3 env with 120Mhz / 8MB Flash 2024-04-21 23:07:01 +02:00
s-hadinger
f6cba1986b
esp32_partition_app3904k_fs3392k partition scheme for 8MB ESP32S3 (#21241) 2024-04-21 22:49:33 +02:00
s-hadinger
cb70ff7a77
uDisplay avoid crashing when no valid configuration (#21239) 2024-04-21 15:21:50 +02:00
s-hadinger
5ecd45e2da
Berry avoid crash when Berry is disabled after bootloop (#21235) 2024-04-21 10:03:55 +02:00
s-hadinger
c4431eb6fe
Fixed IPv6 support in safeboot (#21233) 2024-04-20 22:15:54 +02:00
s-hadinger
bf47a1e51c
LVGL restore lv_palette functions (#21232) 2024-04-20 18:57:49 +02:00
s-hadinger
fe34b5df3d
HASPmota align attribute and expand PNG cache (#21228) 2024-04-20 14:23:31 +02:00
Jason2866
0e273c18f6
add S3 QIO_QSPI 120M board manifest (#21216) 2024-04-18 19:36:55 +02:00
Jason2866
76970ddca9
restore config as it was before switch to core 3.0.0 2024-04-18 16:53:11 +02:00
Theo Arends
0f19dcdff8 Bump version v13.4.1.2
- ESP32-C3 OTA binary name from `tasmota32c3cdc.bin` to `tasmota32c3.bin` with USB HWCDC and fallback to serial (#21212)
- ESP32-C6 OTA binary name from `tasmota32c6cdc.bin` to `tasmota32c6.bin` with USB HWCDC and fallback to serial (#21212)
- ESP32-S3 OTA binary name from `tasmota32s3cdc.bin` to `tasmota32s3.bin` with USB HWCDC and fallback to serial (#21212)
2024-04-18 14:01:27 +02:00
Jason2866
c7ff6342d8
remove extensiom cdc from C3,C6,S3 variants (#21212) 2024-04-18 13:08:31 +02:00
Theo Arends
7e14db4091 Add support for SPL06_007 pressure and temperature sensor (#21185) 2024-04-18 11:47:16 +02:00
Theo Arends
9b5df76860 Add Domoticz safeguards 2024-04-18 11:21:35 +02:00
Rai
13cbf26b87
Adds support for SPL06_007 Temperature & Pressure I2C (+10k2 code) (#21185)
* Adds support for SPL06_007 (+10k2 code)

* removes not so used methods.

Removes -2kb

* change doubles to floats

* fixes a name

* change sns idx to 25
2024-04-18 11:20:02 +02:00
Theo Arends
f01e74f605 Update changelogs 2024-04-17 21:53:33 +02:00
s-hadinger
042eecc378
HASPmota dropdown_list and fixes (#21208) 2024-04-17 21:43:12 +02:00
Theo Arends
e6d9d826ac Clean up code 2024-04-17 21:40:45 +02:00
Theo Arends
b6b74ecb96 Fix regression on SendKey() (#21187) 2024-04-17 17:30:25 +02:00
Theo Arends
0bb1fcbc00 Change comments 2024-04-17 15:58:20 +02:00
Theo Arends
e4936f6c5f Fix ethernet 2024-04-17 15:34:14 +02:00
Theo Arends
e95c940345 Change ESP32 Ethernet Phy Type number for ETH_PHY_DM9051 from 4 to 10 (#21204) 2024-04-17 15:10:45 +02:00
Jason2866
370f59dd40
remove env for C3 before rev 3 2024-04-17 12:11:08 +02:00
Jason2866
fd27a82f6b fix copy&paste error 2024-04-17 11:32:14 +02:00
Jason2866
f131db6d40 mv deprecated drivers / Pio clean up 2024-04-17 11:28:17 +02:00
Theo Arends
0eff23f519 Update changelogs 2024-04-17 10:35:09 +02:00
s-hadinger
add5b2dbaf Solidified Code updated 2024-04-16 20:44:28 +00:00
s-hadinger
99b140512e
Haspmota dropdown options (#21203)
* Fix HASPmota dropdown class "options" attribute

* More fix
2024-04-16 22:43:35 +02:00
s-hadinger
7dc9e6e0ce
Fix HASPmota dropdown class "options" attribute (#21202) 2024-04-16 21:41:02 +02:00
Jason2866
04d7d188b3
house keeping 2024-04-16 16:10:59 +02:00
Jason2866
1d04c000e2
Re enable Ethernet in safeboot for ESP32 (#21199)
by using the Arduino Solo1 framework. The framework has a smaller flash usage
2024-04-16 12:08:53 +02:00
Jason2866
7440970bc4
rm PSRAM support from solo1 2024-04-16 09:24:05 +02:00
Jason2866
0ed7b6e8e9
add lib_ignore to solo1 env 2024-04-15 23:21:36 +02:00
Jason2866
414c231c86
revert non working step 2024-04-15 22:35:00 +02:00
s-hadinger
c16a8411a8
Berry update windows binary (#21195) 2024-04-15 22:23:05 +02:00
s-hadinger
87f5fbd5fd
safeboot: don't publish sensor valies (#21193) 2024-04-15 22:20:28 +02:00
s-hadinger
c1845b952b
Berry apply upstream fixes (#21194) 2024-04-15 22:12:16 +02:00
s-hadinger
d9895a0fcb
SSD1351, ST7789 drivers replaced with uDisplay (#21184) 2024-04-15 19:52:57 +02:00
Jason2866
2a0c53a382
Use esp32-solo1 safeboot for esp32 too
since it is smaller
2024-04-15 17:59:07 +02:00
Theo Arends
ecf2504edf Fix invalid rule handling 2024-04-15 17:25:11 +02:00
Jason2866
cad288bd0d
add missing safeboot env 2024-04-15 17:21:15 +02:00
Jason2866
218b282396
add cp ./platformio_override_sample.ini ./platformio_override.ini 2024-04-15 16:53:25 +02:00
Jason2866
54bd6ca6e7
align with devel build script 2024-04-15 16:47:49 +02:00
Jason2866
8f9cf94e3a
Build all safeboot variants 2024-04-15 16:10:28 +02:00
Theo Arends
cb0e2938e5 Start clean-up code 2024-04-15 15:12:17 +02:00
Jason2866
440a7a689e
rm env tasmota32-core2 2024-04-15 13:22:56 +02:00
Theo Arends
1fe18cf7b6 Fix Core3 ESP32S2 compile 2024-04-15 13:00:09 +02:00
Jason2866
8045ca20ac
Fix CI (rm cp of not existing file) 2024-04-15 12:33:32 +02:00
Theo Arends
d957c97c1e Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-04-15 12:26:52 +02:00
Theo Arends
6c5dee9556 Bump version to v13.4.1.1
- Changed ESP32 Framework (Arduino Core) from v2.0.15 to v3.0.0 (#21180)
2024-04-15 12:26:48 +02:00
Jason2866
87ed42318a
Temp fix for too big ESP32 Safeboot firmwares 2024-04-15 12:24:31 +02:00
Jason2866
5ac69b81e1
rm duplicate 2024-04-15 11:56:23 +02:00
Jason2866
013a14cbcb
no s3 build 2024-04-15 11:52:53 +02:00
Jason2866
f5b4818f34
remove overseen safeboot env entrys 2024-04-15 11:47:17 +02:00
Jason2866
1582385926
remove overseen entrys 2024-04-15 11:46:05 +02:00
Jason2866
951fba99b1
Breaking: ESP32 Core 3.0.0 only support (#21180)
* Core 3.0.0 only

* rm Arduino30 settings

* rm lib ignore `NimBLE-Arduino`

* rm obsolete or duplicate env entrys
2024-04-15 11:39:48 +02:00
s-hadinger
a006e5fc53
SSH1106 driver replaced with uDisplay (#21183) 2024-04-15 10:57:14 +02:00
Jason2866
6492596a10
Fix BLE compile with core 3.0.0 (#21182)
* Delete lib/libesp32_div/NimBLE-Arduino directory
* rm obsolete ignores
2024-04-15 10:24:06 +02:00
Christian Baars
20c918ce38
Pio-tools: Exception decoder for remote devices (#21181) 2024-04-14 21:20:48 +02:00
s-hadinger
0b4cddff72
SSD1331 driver replaced with uDisplay (#21177) 2024-04-14 18:06:17 +02:00
s-hadinger
05f4011491
SSD1306 driver replaced with uDisplay (#21176) 2024-04-14 16:46:58 +02:00
s-hadinger
35c2d55382
Berry upstream walrus fix (#21175) 2024-04-14 15:58:30 +02:00
s-hadinger
105aa03198
Berry upstream fix mod 0 (#21174)
* Berry upstream fix mod 0

* Add test case
2024-04-14 14:55:20 +02:00
Theo Arends
a2ad349487 Update changelogs 2024-04-14 11:43:56 +02:00
s-hadinger
ff43dc29b2
ILI9341 driver replaced with uDisplay (#21169) 2024-04-14 10:26:37 +02:00
s-hadinger
2321d66ba6
Berry Matter int64 in CI (#21167) 2024-04-13 15:26:27 +02:00
s-hadinger
8acf4cd119
Berry fix for Ubuntu (#21166) 2024-04-13 15:19:04 +02:00
Jason2866
a111c0ae8f
Use UDisplay and UTouch drivers ony (#21163) 2024-04-13 12:02:23 +02:00
s-hadinger
177de35fbc
Revert "Matter include int64 in unit tests (#21161)" (#21162)
This reverts commit 31d98f36661b28f1393bbbb00f2465debe05a456.
2024-04-13 10:35:06 +02:00
s-hadinger
31d98f3666
Matter include int64 in unit tests (#21161) 2024-04-13 09:59:57 +02:00
s-hadinger
5f7584efe4
Fade out on CCT bulb with SO92 1 (#21159) 2024-04-12 19:53:37 +02:00
Theo Arends
5cb3ea2114 Update changelogs 2024-04-12 16:01:00 +02:00
s-hadinger
8736544a81
Berry fix upstream connect with undefined variable (#21156) 2024-04-12 15:34:24 +02:00
Jason2866
5e5a7756c4
Core 2015 (#21155)
* Core 2.0.15

* Core 2.0.15
2024-04-12 14:08:32 +02:00
Theo Arends
0f9adae912 Update changelogs 2024-04-12 11:03:48 +02:00
s-hadinger
7e455bad6b Solidified Code updated 2024-04-11 20:30:23 +00:00
s-hadinger
5e60d5217d
Berry compile local Berry with int64 (#21151)
* Berry compile local Berry with int64

* Revert solidify
2024-04-11 22:18:59 +02:00
s-hadinger
918faf3af6 Solidified Code updated 2024-04-11 20:04:04 +00:00
s-hadinger
7e2fff9728
Berry prepare compilation on 64bits platforms (#21149) 2024-04-11 22:03:12 +02:00
Jason2866
d3ab3ced1e
remove touch driver (#21146)
only UTouch is active
2024-04-11 21:16:22 +02:00
Samir El Benna
ce443771d9
Patch gc9a01 (#21145)
* Fixed wrong colors view

* Added display.ini for M5Stack Dial

* Added touch FT3267 support (seen as FT5206 from tasmota) and fixed touch rotation

* Updated to use Universal Touch Driver instead of deprecated dedicated ones.
2024-04-11 21:06:26 +02:00
Samir El Benna
7072c3a0ef
Completed display.ini for M5Stack Dial (#21144)
* Fixed wrong colors view

* Added display.ini for M5Stack Dial

* Added touch FT3267 support (seen as FT5206 from tasmota) and fixed touch rotation
2024-04-11 15:37:06 +02:00
gemu
7984b7513c
support for centered pictures (#21140) 2024-04-11 15:36:37 +02:00
gemu
d5ee89677b
scriptsize cmd (#21139) 2024-04-11 15:36:27 +02:00
Theo Arends
e98ce29fea Fix SGP4 domoticz air quality (#18880) 2024-04-11 15:35:00 +02:00
Theo Arends
1b5fdb5c57 update changelogs 2024-04-11 14:07:25 +02:00
s-hadinger
0484299ee4
Align with Berry PR #412 (#21143) 2024-04-11 10:51:15 +02:00
Jason2866
e7368631cf
Platform 2024.04.11 (#21142) 2024-04-11 09:03:49 +02:00
s-hadinger
39ad5a41bb
Core3 ethernet simplify ipv6 (#21141) 2024-04-10 23:12:20 +02:00
Samir El Benna
5f6ac60d6b
Patch gc9a01 (#21137)
* Fixed wrong colors view

* Added display.ini for M5Stack Dial
2024-04-10 16:48:55 +02:00
Christian Baars
1721de0b76
use new API for check of USB cable connection (#21135) 2024-04-10 11:31:18 +02:00
Theo Arends
54e4aba750 Add LoRaWan MAC response 2024-04-09 14:06:38 +02:00
Theo Arends
56fcd0e634 Relax system load when not using SR04 2024-04-09 10:20:03 +02:00
Julio Vilmar Gesser
670164f4d0
fixed backward compatibility for multiple SR04 (#21128) 2024-04-09 09:56:31 +02:00
Theo Arends
d678666ef0 Fix MQTT heatindex calculation 2024-04-08 14:58:31 +02:00
Theo Arends
9cacf2f609 Fix Power off due to overtemp and/ot overload 2024-04-08 12:03:11 +02:00
Christian Baars
669bb582e0
Coming upstream changes: NimBLEService.cpp (#21120) 2024-04-07 18:38:42 +02:00
s-hadinger
541f3630a1
Wifi provide Mac Address on Core3 (#21117) 2024-04-07 10:55:53 +02:00
Jason2866
8a06984947
Shrink safeboot size for non ESP32 MCU (#21115)
* Ethernet in safeboot only for ESP32
2024-04-06 18:27:57 +02:00
stefanbode
b9a0ae98df
Bugfix: power0 if power_lock is used (#21102)
* Bug Fix: power_lock with Power0 command

Power0 changed power regardless of the new lock state of power. New implementation respect the LOCK also on global change

* simplify

* readded the all_on filter to power_lock change

readded the all_on to ensure new defined relays always start with power off ass intended.
2024-04-06 17:21:54 +02:00
Theo Arends
cbd533c1e9 Update changelogs 2024-04-06 17:12:54 +02:00
Jason2866
787f153219
Update to Tasmota core 3.0.0-beta (#21114) 2024-04-06 16:36:37 +02:00
Theo Arends
02f6e05289 Fixed M5Core2 LoRa868 module receive exception 2024-04-06 15:04:05 +02:00
Jason2866
e149a0399e
fix esp32 core 3.0.0 compile (#21112) 2024-04-06 14:17:51 +02:00
s-hadinger
2128dfbade
Refactored Wifi for ESP32 to allow for Core3 (#21106)
* Refactored Wifi for ESP32 to allow for Core3

* Fix case in include

* Grrr

* Fix compilation

* Fix Ethernet IPv6

* Fix wrong hostname due to mac address unknown at start
2024-04-05 23:44:21 +02:00
gemu
8a8888a273
fix for core3 (#21104) 2024-04-05 22:42:32 +02:00
Theo Arends
06f905e0b5 Update changelogs 2024-04-05 11:12:33 +02:00
Norbert Richter
9207aa2e10
Fix NeoPool hydrolysis unit for Hidrolife, Bionet and Generic device (#21098) 2024-04-05 11:07:30 +02:00
s-hadinger
07a2df1b74
Berry add flash.current_ota (#21097) 2024-04-04 19:14:33 +02:00
Theo Arends
ed7909f23f Removed unused #define MQTT_DATA_STRING support 2024-04-04 17:03:08 +02:00
Theo Arends
db92a843fc Change Wifi 5 to Wifi 6 2024-04-04 14:59:32 +02:00
gemu
ad3782bed1
google charts memory leak (#21093) 2024-04-04 10:18:57 +02:00
Theo Arends
6558414e2b Add PowerLock to status
- Change Power format in status to bitmap
2024-04-03 15:02:11 +02:00
Theo Arends
7c36029ec2 Add command `Wifi 5` to enable 11ax on ESP32 Core3 2024-04-03 14:36:52 +02:00
Theo Arends
fe89774fe0 Bump version v13.4.0.4
- Add command ``PowerLock`` to disable power control of selected outputs (#21081)
2024-04-03 11:47:38 +02:00
s-hadinger
fbe83585bd
Simplify %*_b format (#21087) 2024-04-02 21:56:18 +02:00
Theo Arends
52344d2cc7 Fix JSON output (#21084) 2024-04-02 16:49:24 +02:00
Theo Arends
34d6bffe7a Fix ESP32 non-core3 mis-aligned %_b 2024-04-02 16:37:42 +02:00
Theo Arends
d90f0e1cbe Add formatting binary `%*_b` 2024-04-02 12:55:42 +02:00
Theo Arends
31fc66f5be Update changelogs 2024-04-01 14:37:42 +02:00
Theo Arends
1ebdbfd6a4 Allow Domoticz unsubsctibe using command `DzIdx0 0` (#21019) 2024-04-01 13:56:40 +02:00
fb-pilot
781491efca
Add files via upload (#21078)
add a configuration for Wemos D1 with 16M
2024-04-01 12:09:51 +02:00
s-hadinger
76b1f48f0c
LVGL binding update for python 3.12 (#21076) 2024-03-31 22:08:27 +02:00
Milko Daskalov
9f4c994034
LVGL add lv.layer definition (#21062) 2024-03-31 21:44:46 +02:00
s-hadinger
c19391da8d
Berry loading .be file does not generated .bec anymore (#21075) 2024-03-31 21:37:26 +02:00
Barbudor
0422b25e31
Change format of KNX Energy to match specifications (#21074)
* take 1

* refactor knx enhancement

* round on energy + auto show temp/hum sensors
2024-03-31 21:15:53 +02:00
Julio Vilmar Gesser
60666fa1c5
Added support to multiple SR04 (#20975)
* added support to multiple SR04

* Reduced MAX # of SR04 to 3 as ESP32 has only 3 serial uarts
2024-03-31 15:12:29 +02:00
Theo Arends
b15a0e2f1f Add support for Domoticz non-persistent `DzIdx5 to DzIdx32` (#21019) 2024-03-31 14:33:27 +02:00
gemu
e336913b32
fix multidisplay mode (#21067) 2024-03-31 08:16:15 +02:00
Theo Arends
71e666462c Prep RN2XX3 support 2024-03-30 16:42:57 +01:00
Theo Arends
caed27645e Consolidate Lora memory usage 2024-03-30 15:02:20 +01:00
Theo Arends
6ccb3ae290 Move Lora variables from fixed to heap 2024-03-29 17:56:06 +01:00
Theo Arends
7774ce5ad8 Update TXPowerBasedOnRssi() 2024-03-29 14:30:31 +01:00
Theo Arends
4b44d2fa32 Change ESP32 WiFi phy modes 11n and 11ax represented as HT20, HT40 and HE20 (#19350) 2024-03-29 13:04:44 +01:00
Theo Arends
0814acb8dc Fix Lora ESP32S3 compile warning 2024-03-28 18:20:13 +01:00
Theo Arends
bd3c7d8ddf Fix LoRaWan joining 2024-03-28 17:51:09 +01:00
Theo Arends
894e46cb5a Refactor lorawan 2024-03-28 17:15:45 +01:00
Theo Arends
ae7bed5acf Refactor lib RadioLib fixing ESP8266 panic 2024-03-28 14:04:17 +01:00
Theo Arends
7c52906a2e Fix ESP8266 Lora SX1262 exceptions 2024-03-27 23:03:10 +01:00
Theo Arends
b587287ce0 Update changelogs 2024-03-27 21:38:36 +01:00
bovirus
1abc4a6c30
Update Italian language (#21052) 2024-03-27 17:44:41 +01:00
gemu
72968b9ee8
fix color swap option for rgb displaytext (#21049) 2024-03-27 16:52:35 +01:00
s-hadinger
aa4bdebe55
Berry print "a" syntax no longer supported (#21048) 2024-03-27 16:22:27 +01:00
gemu
b50d613360
display ini to utouch (#21029) 2024-03-27 12:12:59 +01:00
Theo Arends
c13d3cbf1c Update changelogs 2024-03-27 09:38:36 +01:00
s-hadinger
6ad2c4c945
LVGL simplify configuration (#21043) 2024-03-26 23:16:16 +01:00
s-hadinger
06e352dc19
Berry added close() to class serial (#21042) 2024-03-26 22:23:37 +01:00
gemu
417f8b0e9b
reinit sd card (#21040) 2024-03-26 20:30:29 +01:00
Theo Arends
03cf7dc460 Fix ESP32 LoRaWanBridge OTAA 2024-03-26 17:02:44 +01:00
Jason2866
48aa621975
enable additionally USE_UNIVERSAL_TOUCH (#21038)
dedicated driver are still enabled. To be disabled when transition to UTouch is finished
2024-03-26 16:34:43 +01:00
Charles
7707473b4e
Lib_teleinfo : Fixed too restrictive checksum checks (#21033)
* Fixed too restrictive checks

Fixed too restrictive checks that may introduce checksum errors on some contracts

* Bump to v1.1.7

Bump to v1.1.7
2024-03-26 08:46:55 +01:00
Pabasara Perera
2fff690af3
Azure iothub direct method support (#21013)
* feature: azure iot hub direct method support

* null terminator

* Remove vulnerability

---------

Co-authored-by: s-hadinger <49731213+s-hadinger@users.noreply.github.com>
2024-03-25 22:11:36 +01:00
s-hadinger
10465ce941
Added GPIO for SPI for Universal Touch Screen (#21025)
* Added GPIO for SPI for Universal Touch Screen

* Rename GPIOs

* Fix indentation

* Add parsing of I2C Reset and IRQ GPIOs
2024-03-25 22:04:50 +01:00
gemu
28cce3f020
add cmd cpm (#21030) 2024-03-25 22:02:08 +01:00
s-hadinger
bad2f4fb13
Fix crash in Universal Touch (#21026) 2024-03-25 11:41:21 +01:00
s-hadinger
15ae3e0fa5
berry.exe (pre-compiled for Windows) updated to latest Berry patches (#21024) 2024-03-24 16:33:21 +01:00
Jason2866
7088ee2be6
remove outdated not used ldscript entry (#21018) 2024-03-23 21:29:38 +01:00
Theo Arends
14c48a18a0 Update changelogs 2024-03-23 15:32:12 +01:00
Theo Arends
36cbca9004 Add updated user config 2024-03-23 15:21:16 +01:00
Theo Arends
f10218a257 Add support for LoRaWanBridge 2024-03-23 15:20:22 +01:00
Theo Arends
6337c59fab Update RadioLib 2024-03-23 15:18:06 +01:00
gemu
31adf74634
fix linker error (#21017) 2024-03-23 10:05:56 +01:00
s-hadinger
c95483844a
Berry fix walrus bug when assigning to self (#21015) 2024-03-22 18:51:48 +01:00
s-hadinger
a34f5496a1
Fix HASPmota demo and robotocondensed fonts (#21014) 2024-03-22 16:55:22 +01:00
gemu
aad917d060
Email32 more debug (#21010)
* more debug on esp32 mail

* Update xdrv_01_2_webserver_esp32_mail.ino
2024-03-22 08:09:16 +01:00
s-hadinger
3c70e63af8
LVGL library from v9.0.0 to v9.1.0 (#21008) 2024-03-21 18:47:41 +01:00
gemu
a38e88422f
fix google char memory leak (#20995) 2024-03-21 15:11:40 +01:00
DeflateAwning
d08461482f
Bold the table column names (including the mid-table heading rows) (#20981) 2024-03-21 15:11:29 +01:00
Theo Arends
c18ed34685 Fix Lora watchdog
- Update file JSON settings demo
2024-03-20 18:18:31 +01:00
Christian Baars
46fae91e10
fix BTHome, prep BLE5 (#20989) 2024-03-20 11:22:35 +01:00
s-hadinger
9c34707401
Zigbee added for attributes of type uint48 used by energy monitoring (#20992) 2024-03-19 22:21:10 +01:00
s-hadinger
e644ed0724
HASPmota improve flex layout (#20982) 2024-03-18 22:54:53 +01:00
s-hadinger
5338e84243
LVGL simplify mapping (#20980) 2024-03-18 22:16:20 +01:00
Theo Arends
f18bbae23a Bump version v13.4.0.3 2024-03-18 11:11:12 +01:00
Jason2866
9dd1c28cfc
undef already defined (#20906) 2024-03-18 10:26:13 +01:00
Frank Werner
70bce974b2
Add MCP23S08 support (#20971) 2024-03-18 10:18:14 +01:00
s-hadinger
1b741f4809
HASPmota support for scale, percentages (#20974) 2024-03-17 18:19:07 +01:00
Jason2866
ad1b8c6833
S3 120Mhz (#20973) 2024-03-17 16:49:14 +01:00
s-hadinger
130c3f83f1
LVGL add helper functions (#20968) 2024-03-16 23:50:03 +01:00
Jason2866
e218550447
Refactor Platformio script post_esp32.py (#20966) 2024-03-16 20:23:25 +01:00
bovirus
899e637bda
Update Italian language (#20956) 2024-03-16 12:12:32 +01:00
fb-pilot
73a52945c2
Add files via upload (#20959) 2024-03-16 12:12:18 +01:00
gemu
ca17be0e0b
fix regression (#20962) 2024-03-16 12:11:48 +01:00
Jason2866
bb2f31bd88
Fix release firmware url 2024-03-15 12:56:22 +01:00
s-hadinger
95f7d33c20
LVGL cleaning unused definitions (#20957) 2024-03-14 22:37:55 +01:00
Marcus Better
1a462c986c
[tuyamcu_v2] Fix suppressed dimmer updates from MQTT (#20950)
The driver tried to avoid loops when state updates from the MCU (eg
from physical button press) could be reflected back by Tasmota and
trigger another MCU command, followed by a state update. It did this
by tracking the source of the command in the last_source and
last_command_source variables, suppressing the command if either of
those was SRC_SWITCH.

However this logic is faulty: Since there are two last_source
variables to check, a command might reset one of them, but the other
would still suppress the update. As it turns out, MQTT commands would
only set last_source but not last_command_source. As a result, any
dimmer changes via MQTT would be dropped by the driver and not applied
to the MCU.

Switch functionality (on/off) was still working because those do not
rely on last_command_source, only last_source.

This change removes the loop detection logic altogether for dimmer
updates. This should be safe, because the driver already has the
latest dimmer value in its shadow state, and will not try to re-apply
a current value, thus breaking the loop.

This patch has been tested with several CE-WF500D dimmers which had
this problem.
2024-03-14 17:42:52 +01:00
Theo Arends
cc8614da9c Add command `RfTimeout` to Sonoff RFBridge (#20937) 2024-03-14 17:21:09 +01:00
Theo Arends
0ac0dda5ba Update changelogs 2024-03-14 16:47:10 +01:00
Theo Arends
5ab7ebee9d Fix compilations 2024-03-14 16:40:22 +01:00
s-hadinger
5e8b116128
LVGL fix descriptors Berry mapping (#20946) 2024-03-13 22:19:42 +01:00
s-hadinger
26a3eacbd6
Berry update windows binary (#20940) 2024-03-12 23:10:07 +01:00
s-hadinger
0518bd6c64
Berry fix walrus with member or index (#20939) 2024-03-12 23:00:52 +01:00
s-hadinger
4d7036db3b
HASPmota solidify server-side (#20938) 2024-03-12 21:18:31 +01:00
s-hadinger
f488ef922a
LVGL add lv.draw_label_dsc and lv_bar.get_indic_area (#20936) 2024-03-12 19:40:40 +01:00
fb-pilot
f7ae60a9e4
expand xsns_100_ina3221 to optionaly calculate the charge and / or Energy per chanel (#20915)
* Add files via upload

* Add files via upload

* Add files via upload

* Add files via upload

* Update en_GB.h

* Update xsns_100_ina3221.ino

* Add files via upload

* Add files via upload

I hope I have all details now changed ;-))

* Add files via upload

I still found a little detail to beutify ;-)
2024-03-12 08:12:22 +01:00
s-hadinger
8b7cd2de44
HASPmota moved to a distinct library lv_haspmota (#20929) 2024-03-11 22:31:44 +01:00
Jason2866
309ac81e22
comment warning (#20907) 2024-03-11 08:22:28 +01:00
gemu
190493c747
fix regression from last commit (#20923) 2024-03-11 08:22:10 +01:00
s-hadinger
79d02e772c
HASPmota cleanup (#20920) 2024-03-10 23:03:40 +01:00
s-hadinger
9e8bd2156b
HASPmota add generic setter and getters for style attributes (#20919) 2024-03-10 22:54:55 +01:00
s-hadinger
268fad6d0d
LVGL remove textarea and spinbox from binaries (#20916) 2024-03-10 20:52:16 +01:00
s-hadinger
8ff9fffa0a
HASPmota use endswith (#20914) 2024-03-10 19:14:23 +01:00
s-hadinger
bc9fd3cd92
Fix typo in CHANGELOG 2024-03-10 18:03:02 +01:00
Jason2866
2cc87b086b
latest Arduinon 3.0.0. needs HWCDC (#20905) 2024-03-10 15:20:43 +01:00
s-hadinger
bb07ded475
Berry add string.starstwith, string.endswith and %q format (#20909)
* Berry add `string.starstwith`, `string.endswith` and `%q` format

* Fix typo

---------

Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com>
2024-03-10 14:31:15 +01:00
Jason2866
224a9fb717
Fix compile for upcoming Arduino Core 2.0.15 (#20908)
* Fix compile for Arduino Core > 2.0.14
* missing include `esp_arduino_version.h`
2024-03-10 14:08:29 +01:00
Theo Arends
14f976b8a4 Update xdrv_122_file_json_settings_demo.ino 2024-03-10 12:13:13 +01:00
Theo Arends
e77a5f57ff Update changelogs 2024-03-10 12:08:30 +01:00
Theo Arends
8231a0429c Fix JSON Settings save 2024-03-10 12:04:57 +01:00
s-hadinger
3429ebd359
LVGL fix montserrat-10 and icons-10 (#20901) 2024-03-09 22:09:41 +01:00
s-hadinger
16afaf3c59
LVGL improved readability of montserrat-10 (#20900) 2024-03-09 21:15:30 +01:00
Theo Arends
6d82997fde Update changelogs 2024-03-09 13:32:53 +01:00
s-hadinger
93e27654e6
HASPmota improve arc and img (#20894) 2024-03-09 09:21:37 +01:00
gemu
99f4774e14
core3 fixes (#20895) 2024-03-09 09:19:04 +01:00
Jason2866
2544cf0305
Update esptool.py (#20890)
* Tasmota esptool.py  v4.7.1
* install only one esptool version
2024-03-07 14:46:22 +01:00
s-hadinger
9b2720c64d
HASPmota fix widgets line, btnmatrix, qrcode, bar, checkbox (#20881) 2024-03-06 09:20:04 +01:00
s-hadinger
804ee37098
Haspmota optim fonts (#20880)
* LVGL optimize fonts and add icons

* changelog
2024-03-05 23:09:53 +01:00
Marcus Better
47ae5bc9c8
[tuyamcu_v2] Send updates unconditionally (#20868)
Remove the logic that inhibits the sending of updates to the MCU until
the DP's state has been observed at least once in a status report from
the MCU. This logic was intended to ensure that a DP is not updated
with its current value, which reportedly crashes some very broken
devices.

However, other devices like the Feit DIM/WIFI dimmers do not reliably
report DPs that haven't been changed. So the required status report
would never arrive, resulting in the inability to control these
devices remotely, at least until their state had been changed by a
manual button press, something that is not always practical as it
requires physical device access and needs to be done after every
restart.

Removing this logic allows Tasmota to control the device state.
2024-03-04 13:23:12 +01:00
Marcus Better
bb790efefd
[Tuya v2] Remove unused variable (#20869) 2024-03-04 13:22:35 +01:00
Marcus Better
ee6863ffd9
Heartbeat every 15s as documented (#20867) 2024-03-04 13:21:41 +01:00
s-hadinger
d4720d9378
LVGL remove embedded typicons font (#20872) 2024-03-04 13:04:11 +01:00
Theo Arends
24372207de Update changelogs
- Elevate some messages
2024-03-04 11:58:46 +01:00
Ryan Castellucci
10fff01c80
add failsafe for compiled in tls fingerprints (#20865) 2024-03-04 08:52:47 +01:00
s-hadinger
29a8f82421
HASPmota set Tasmota logo (#20860) 2024-03-03 22:06:59 +01:00
s-hadinger
9759cca4f4
HASPmota support for led (#20857) 2024-03-03 18:39:40 +01:00
s-hadinger
174caf2251
HASPmota fix chart range (#20856) 2024-03-03 17:48:12 +01:00
Theo Arends
9c4dfd28ef Add command LoRaCommand 2024-03-03 16:55:02 +01:00
s-hadinger
27ccf0490b
HASPmota support for spangroup (styled text) (#20852) 2024-03-03 10:53:21 +01:00
s-hadinger
6a35795178
Matter save fabrics more robust (#20847) 2024-03-02 08:32:10 +01:00
s-hadinger
b06c310305
Berry update Windows binary (#20845) 2024-03-01 19:37:45 +01:00
Theo Arends
d394eef7c8 Fix LoRa binary send 2024-03-01 18:07:10 +01:00
Theo Arends
715ca102c7 update changelogs 2024-03-01 16:52:28 +01:00
s-hadinger
54b1a94379
Drop support for old (insecure) fingerprint format (#20842) 2024-03-01 12:24:48 +01:00
Theo Arends
3162282f91 Update changelogs 2024-03-01 10:23:51 +01:00
Theo Arends
9bb8d6e1ff Add hard fought spaces around image name 2024-03-01 10:15:37 +01:00
s-hadinger
92b9190817
Berry add path.rename() (#20840) 2024-02-29 23:38:20 +01:00
s-hadinger
e55471e084
Berry bug when parsing ternary operator (#20839) 2024-02-29 19:23:32 +01:00
Jason2866
3c43486cf5
Colorama (#20838) 2024-02-29 18:23:33 +01:00
Theo Arends
adfbf6508a Remove CAD from SX127X to fix intermittent reception 2024-02-29 17:23:37 +01:00
Theo Arends
ce419cce81 Add LoRa to ESP8266 2024-02-29 17:12:08 +01:00
Jason2866
021294bcd9
Add release too Tasmota footer 2024-02-29 16:33:37 +01:00
Jason2866
6032104cfd
no '"' 2024-02-29 15:45:59 +01:00
Jason2866
db572b1125
Don't use GH env variable 2024-02-29 15:17:51 +01:00
Jason2866
d52fd2050a
Update Tasmota_build_devel.yml 2024-02-29 15:11:30 +01:00
Jason2866
ed782c6606
Update Tasmota_build_devel.yml 2024-02-29 14:59:27 +01:00
Jason2866
c002bf2d21
Update Tasmota_build_devel.yml 2024-02-29 14:57:24 +01:00
Jason2866
f2f78c4cee
more debug info 2024-02-29 14:54:35 +01:00
Jason2866
4fb1d3a65d
try to fix to get env variable value 2024-02-29 14:21:06 +01:00
Jason2866
34561db70c
Add sha to footer (#20835)
* get and store SHA in env

* sed replace
2024-02-29 13:37:03 +01:00
Theo Arends
89aa392a46 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-02-29 13:36:10 +01:00
Theo Arends
daa24af6f6 Bump version to v13.4.0.2 2024-02-29 13:36:08 +01:00
Jason2866
401f240a7c
Fix solo1 description text (#20816)
* Fix solo1 description text

* URL for datasheet
2024-02-29 13:17:14 +01:00
Norbert Richter
9026b95f45
Prevent shutter MQTT broadcast with activated ShutterLock (#20827) 2024-02-29 13:16:33 +01:00
Theo Arends
3bbc33f554 Add support for Github SED inserted SHA_SHORT 2024-02-29 13:03:41 +01:00
s-hadinger
a2bb0afea2
IR support data larger than 64 bits (#20831) 2024-02-28 22:42:29 +01:00
s-hadinger
7ad95faad2
Fix Berry Memory leak in import re (#20823) 2024-02-27 21:56:51 +01:00
Theo Arends
24b59376bb Fix LoRa Config 2024-02-27 17:09:50 +01:00
Theo Arends
77cba87994 Update changelogs 2024-02-27 14:16:13 +01:00
s-hadinger
a4397b26b8
HASPmota PSRAM memory leak (#20818) 2024-02-26 23:46:07 +01:00
Bastian Urschel
bf91af0c07
add support for ams5915 and ams6915 temerature and pressure sensors (#20814)
* add support for ams5915 and ams6915 temerature and pressure sensors

* improved function namings

* optimized detection of sensor

* set verbosity level to debug

* minor code cleanings

* added seconds-counter to minimize i2c bus load, minor code cleanups

* add meas_valid in sensor struct to differentiate between sensor present (at tasmota boot) and measurement valid (if sensor was reattached) at runtime

* removed global struct and sensor_present, introduced dynamic memory allocation if sensor is present at startup, minor code changes

* fixes missing initialisation of variable

* corrected the amount of used memory if compiled with AMSX915 support

* Update my_user_config.h

disable AMSx915 by default

---------

Co-authored-by: baschdello <urschelb@rhrk.uni-kl.de>
Co-authored-by: Bastian <bastianurschel@gmail.com>
2024-02-26 23:04:25 +01:00
Theo Arends
8f1cb3431f Fix LoRa SX1262 user GPIO selection 2024-02-26 22:25:59 +01:00
Jason2866
2e9e2da291
Rename pr_comment.yml to pr_comment.yml.off 2024-02-26 19:29:59 +01:00
Jason2866
51e712f68a
revert used action 2024-02-26 19:07:12 +01:00
Jason2866
35492afd89
different names 2024-02-26 18:59:48 +01:00
Jason2866
aba06bb465
actions/upload-artifact@v4 2024-02-26 18:49:04 +01:00
Jason2866
6f28b5ab2c
actions/github-script@v7 2024-02-26 18:38:35 +01:00
Theo Arends
d61c96a485 Add command LoRaConfig 2024-02-26 17:31:24 +01:00
Jason2866
34f7ecf31a
add dl links for artifacts in PR
as comment
2024-02-26 16:29:32 +01:00
Jason2866
62d37e9fcf
enhanced 'Env' check (#20813) 2024-02-26 14:30:44 +01:00
Theo Arends
100869a40f Upload changelogs 2024-02-26 12:22:47 +01:00
s-hadinger
3d3280eb8e
Matter reduce memory usage when saving Fabrics (#20809) 2024-02-25 23:02:13 +01:00
s-hadinger
55be1866ad
Berry add explicit error log when memory allocation fails (#20807) 2024-02-25 21:17:08 +01:00
Jason2866
3dcd8d7f13
Add some checks for valid env (#20805) 2024-02-25 20:28:30 +01:00
s-hadinger
7402fe06fd
Matter reduce memory usage when reading with wildcards (#20804) 2024-02-25 19:45:56 +01:00
Theo Arends
389bf124bf Update comments 2024-02-25 17:58:38 +01:00
Theo Arends
c9c1eee302 Add SX127x lora support 2024-02-25 17:03:46 +01:00
Theo Arends
b218f6bff1 Allow lora on ESP8266 2024-02-25 14:29:56 +01:00
Theo Arends
87567b25b2 Move RF libs to correct location enabling ESP8266 support 2024-02-25 14:21:49 +01:00
Jason2866
e152a3cbf7
"MKFSTOOL" (#20800) 2024-02-24 20:27:12 +01:00
s-hadinger
d130a637da Solidified Code updated 2024-02-24 18:26:43 +00:00
s-hadinger
cadea7540a
Matter reduce logging of subscriptions 2024-02-24 19:25:44 +01:00
s-hadinger
4bc8a41502
Minor Berry fixes (#20799) 2024-02-24 18:40:16 +01:00
s-hadinger
4dc827f431
Add TLV unit test (#20798) 2024-02-24 18:40:10 +01:00
Theo Arends
9aff378ef8 Update LoRaSend 2024-02-24 18:25:40 +01:00
Artur Nowak
30dd5e6a55
Fix invalid constant description (#20796) 2024-02-24 15:27:58 +01:00
gemu
9608bc5799
Fix software serial on RISCV cpus. (#20793)
* fix software serial for riscv

* fix softwareserial on riscv
2024-02-24 09:45:13 +01:00
stefanbode
ae01d4ccd5
Support for 3 pulse relay shutters OPEN/CLOSE/STOP (#20758)
* new option on dedicated STOP relay.

* added new stoprelay shutter

* fix

* new option stoprelay

* fix
2024-02-23 22:54:39 +01:00
Theo Arends
87f17404c0 fix RadioLib compile on safeboot 2024-02-23 18:48:14 +01:00
Theo Arends
90b3f0f62b Add LoRa demo using LilyGo T3S3 on 868MHz (#17790) 2024-02-23 18:25:13 +01:00
Theo Arends
0632f4e7d6 Remove vulnerabilities 2024-02-23 16:24:10 +01:00
Theo Arends
d258b9a758 Prep LoRa 2 2024-02-23 16:20:09 +01:00
Theo Arends
d4980b9957 Prep SPI LoRa 2024-02-23 14:58:39 +01:00
bovirus
06d7d3ba74
Update Italian language (#20769) 2024-02-21 09:48:50 +01:00
s-hadinger
772a1533a6 Solidified Code updated 2024-02-21 07:44:12 +00:00
s-hadinger
0ecefe4c20
Temporarily expand Matter logs 2024-02-21 08:43:21 +01:00
s-hadinger
59653c7bff Solidified Code updated 2024-02-20 16:00:50 +00:00
s-hadinger
7ae074b4f2
Try matter fix 2024-02-20 16:59:56 +01:00
Jason2866
af7f2a02d1
"Hitzeindex" 2024-02-19 14:38:39 +01:00
Theo Arends
9a5217bf90 Add heatindex to BMP driver (#4771) 2024-02-19 14:17:40 +01:00
Jason2866
d30c634515
one pio scriot to set "C" flags (#20762) 2024-02-19 13:23:38 +01:00
SteWers
5f07afab1b
[EQ3-TRV] Fix label Valve Position (#20757) 2024-02-19 11:29:14 +01:00
Theo Arends
fb003e006e Add Show calculated heat index if temperature and humidity is available with `#define USE_HEAT_INDEX` (#4771) 2024-02-18 18:00:41 +01:00
Theo Arends
920967506b Update changelogs 2024-02-18 15:31:20 +01:00
Felipe Martínez
d77cf7d2f0
Support LWT messages when using TASMESH (#20392)
* Send LWTs when nodes come online and offline

* Use string macro

* Add a TASMESH_HEARTBEAT config

* Add flags to config file

* Fix missing break in case

* Rename heartbeat feature define

* Comment out tasmesh settings

* Detect online peers on all packets, not just heartbeats
2024-02-18 15:28:00 +01:00
Theo Arends
d8d1b1d131 Add QMC5883l check for overflow and scale reading (#20643) 2024-02-18 15:24:21 +01:00
Theo Arends
9a12192fa9 Update changelogs 2024-02-18 12:41:31 +01:00
stefanbode
c7894181b7
fix issue on inverted shutters with commands comming with shutterposition (#20752)
* fix INVERTED bug

fix shutterposition xxx commands do not work on inverted shutter

* fix INVERTED bug

* fix INVERTED bug

shutterposition UP/DOWN/... commands did not work as expected on inverted shutter
2024-02-18 12:36:03 +01:00
Jason2866
30f650ebb2
Remove espidf from boards.json (#20749) 2024-02-17 21:45:43 +01:00
Jason2866
1661ebb02e
Add flag "-DARDUINO_TASMOTA" in boards.json (#20746) 2024-02-17 17:58:28 +01:00
arendst
456ce5cd31 Solidified Code updated 2024-02-17 15:08:55 +00:00
Theo Arends
d774643b9c Prep AXP2101 2024-02-17 16:08:04 +01:00
Theo Arends
236eb77af1 Update changelogs 2024-02-17 15:31:06 +01:00
Norbert Richter
2068879c23
Update NeoPool webUI pH alarms (#20743) 2024-02-17 15:23:29 +01:00
Theo Arends
1abaf146b5 Fix ESP32 PWM activity on unconfigured PWM GPIOs (#20732) 2024-02-17 15:19:12 +01:00
Theo Arends
7216db339e Final fix 2024-02-16 20:10:55 +01:00
Theo Arends
733b9254a5 Workaround core3 2024-02-16 20:04:46 +01:00
Theo Arends
0faef8e4dd Fix PWM channels after restart (#20732) 2024-02-16 18:57:03 +01:00
s-hadinger
d3093a13c2
HASPmota more attributes (#20744) 2024-02-16 17:23:24 +01:00
Fulvio Spelta
c93d6676b9
Fix SetOption158 publish/suppress ModbusReceived MQTT messages (#20733)
Fixed a bug that let some mqtt messages be published anyway
2024-02-16 15:06:11 +01:00
Theo Arends
6732db8803 Update changelogs 2024-02-16 15:04:03 +01:00
s-hadinger
a51b08b36c
typicons font to LVGL and HASPmota (#20742) 2024-02-16 12:42:11 +01:00
s-hadinger
b91f93062a
HASPmota p<x>b<y>.delete to delete an object (#20735) 2024-02-15 23:16:12 +01:00
s-hadinger
f05cb6d50b
HASPmota fix and improve demo with pixel-perfect fonts (#20734) 2024-02-15 19:46:50 +01:00
Pabasara Perera
c0ae3dcaca
Fix tls handshaking issue (#20721)
* Fix tls handshaking issue

* fixed time comparison issue

* removed multiplication from loop
2024-02-15 10:40:04 +01:00
Jason2866
97821ab925
Platform 2024.02.10 (Arduino core 3.0.0) (#20730) 2024-02-14 21:03:33 +01:00
Theo Arends
cbc9796c92 Update changelogs 2024-02-14 19:19:24 +01:00
s-hadinger
1d1d785f51
LVGL make lv_touch_3_buttons more responsive (#20728)
* LVGL make lv_touch_3_buttons more responsive

* Changed instead of Fixed
2024-02-14 18:26:41 +01:00
s-hadinger
036723ddb5
Berry class int64 made immutable (#20727) 2024-02-14 18:24:59 +01:00
Theo Arends
bee3b5b66a Bump version v13.4.0.1 2024-02-14 17:57:17 +01:00
Theo Arends
4cb53fef06 Fix ethernet config chk 2024-02-14 17:01:31 +01:00
Theo Arends
080cdb4f0d Add core3 ethernet support on SPI for all ESP32 models 2024-02-14 16:19:51 +01:00
Benjamin Nestler
f98c66fa81
Show ARG_HINT as tooltip for Web UI configuration of Matter endpoints (#20723)
* ADD: Show the argument hint(s) as tooltip of input box.

* CHG: MATTER_ADD_ENDPOINT_HINTS_JS to change the tooltip relating to endpoint argument hint

* CHG: Show the enpoint number in confirmation of deletion dialog.

* CHG: Too reduce the number of used bytes for this JS

* ADD: solidificated file
2024-02-14 15:48:46 +01:00
Theo Arends
70a4fbd800 Add command `SetOption159 1` to enable counting on both rising and falling edge (#20712) 2024-02-14 11:22:41 +01:00
Theo Arends
efa7514090 Restore RA8876 SPI speed to 24000000 (#20717) 2024-02-14 10:33:10 +01:00
Theo Arends
00ea2a78d6 Revert "add json value for rules (#20718)"
This reverts commit 04cd8950a3251b95b5c1806444c62ecf7566520c.
2024-02-14 09:20:56 +01:00
Theo Arends
9aa5a6d7fb Fix compilation 2024-02-13 14:54:35 +01:00
Barbudor
04cd8950a3
add json value for rules (#20718) 2024-02-13 13:52:48 +01:00
Theo Arends
71ae3fb231 Prep release v13.4 2024-02-13 12:15:38 +01:00
Theo Arends
88f1e3593a Fix GPIO Viewer 2024-02-13 10:15:12 +01:00
Theo Arends
91237dff5b Fix AXP driver 2024-02-12 22:14:20 +01:00
Theo Arends
bddd9a9caf Update AXP192_M5Stack_Core2.be 2024-02-12 21:47:46 +01:00
Theo Arends
280b71eb41 Fix M5Core2 audio when connecting ethernet 2024-02-12 21:25:19 +01:00
s-hadinger
c73133b10a
LVGL simplification of custom widgets (#20711) 2024-02-12 13:50:58 +01:00
s-hadinger
fa7e225d5b
Matter minor fix to logs (#20708) 2024-02-11 17:53:06 +01:00
s-hadinger
710ed2e42c
Berry option to invert serial (#20707) 2024-02-11 17:27:40 +01:00
Theo Arends
238013ba90 Fix AXP192 register
- Fix AXP192 register use
- Add more delay to fix intermittent FT5206 init failure
2024-02-11 16:32:05 +01:00
Theo Arends
72b18eff4c Update changelogs 2024-02-11 11:47:31 +01:00
s-hadinger
66ff68df78
LVGL9 restore missing layouts (#20701) 2024-02-11 11:14:01 +01:00
s-hadinger
3a44d19e8b
Matter implement auto-attributes (#20694) 2024-02-10 18:13:56 +01:00
Benjamin Nestler
d015ee4679
Fixes redirects for Advanced Matter configuration UI (#20690)
* CHG: Reload the advanced page after deletion of fabrics.

* CHG: Redirect to Matter configuration page from advanced Matter configuration page
2024-02-09 18:36:35 +01:00
Theo Arends
523a28c39f Fix Touch logging 2024-02-09 17:54:47 +01:00
Jason2866
2f32e3c2ee
Fix C2 compile error 2024-02-09 13:53:19 +01:00
Theo Arends
4e7e256892 Add ESP32 Core3 support for SPI ethernet on DM9051, W5500 and KSZ8851 2024-02-08 16:45:28 +01:00
Theo Arends
2f0b1e8edd Update example code 2024-02-08 14:42:58 +01:00
Theo Arends
7d698a6752 Update changelogs 2024-02-08 11:36:03 +01:00
Christian Baars
b02de6de6f
add BLE.info() (#20682) 2024-02-08 11:31:48 +01:00
s-hadinger
f06a8b2bdb
Matter fix configuration loading (#20677) 2024-02-08 05:58:56 +01:00
s-hadinger
57cf29c2fd
Matter improve MtrInfo (#20686) 2024-02-07 18:09:22 -08:00
s-hadinger
a5e3391ca8
Matter fix introspect.contains (#20685) 2024-02-08 02:42:21 +01:00
Theo Arends
715914bdd0 Add internal support for persistent JSON settings using single file 2024-02-07 22:55:39 +01:00
Theo Arends
4fb9e10fcf Add SO158 2024-02-07 16:17:11 +01:00
Fulvio Spelta
ab8676d865
SetOption158 publish/suppress ModbusReceived MQTT messages (#20678) 2024-02-07 15:57:09 +01:00
Theo Arends
b31ff75f3c Revert "Add support for JSON settings file"
This reverts commit 9471a29ad9e5c319fac6d2f593aa29a9f4497ddc.
2024-02-07 14:25:38 +01:00
Theo Arends
9471a29ad9 Add support for JSON settings file 2024-02-07 13:10:26 +01:00
Christian Baars
0bc6f82a81
MI32 legacy: use disconnect reason as error code (#20676) 2024-02-07 10:30:30 +01:00
s-hadinger
5e4a1d7b32
Matter fix configuration loading (#20677) 2024-02-07 05:25:51 +01:00
s-hadinger
22581b0f7e
Matter fix exception when calling remove_fabric (#20674) 2024-02-06 16:02:49 +01:00
arendst
2dc46394dc Solidified Code updated 2024-02-05 15:00:31 +00:00
Theo Arends
f88a8a6765 Add berry divider 2024-02-05 15:59:37 +01:00
Theo Arends
6cfe979f1b Enable GPIO viewer on ESP32 2024-02-05 15:09:49 +01:00
Theo Arends
a408326326 Bump version to v13.3.0.5 2024-02-05 12:24:32 +01:00
Theo Arends
32ce27495a Update changelogs 2024-02-05 12:19:14 +01:00
s-hadinger
ff6be70ce1
LVGL library updated to v9.0.0, some small breaking changes in C, none in HASPmota (#20659)
* LVGL library updated to v9.0.0, some small breaking changes in C, none in HASPmota

* fix compilation

* Move lvgl_berry to LVGL_assets
2024-02-05 12:07:41 +01:00
Theo Arends
3b0cb408ba Update changelogs 2024-02-05 11:57:00 +01:00
s-hadinger
2a4c59dc68
Matter fix exception when fabrics is not initialized (#20667) 2024-02-05 11:48:07 +01:00
s-hadinger
fd52aaee14
Matter add human readable names for TimeSync cluster (#20666) 2024-02-05 11:47:37 +01:00
s-hadinger
26f469f766
Fix UpdateFabricLabel (#20665) 2024-02-04 23:13:17 +01:00
Jason2866
9502992388
Gitpod refactoring (#20664) 2024-02-04 22:57:11 +01:00
s-hadinger
08ac7541aa
Matter fix Google Home removal of device (#20663)
* Matter fix fabrics id type

* Fix session removal

* add to changelog
2024-02-04 22:54:57 +01:00
Theo Arends
4bdf1aafb5 Update xdrv_121_gpioviewer.ino 2024-02-04 16:49:35 +01:00
Theo Arends
dec230c19f Update xdrv_121_gpioviewer.ino 2024-02-04 16:31:17 +01:00
Theo Arends
0f0a125cdb Update comments GPIOViewer 2024-02-04 16:19:59 +01:00
Jason2866
35f28fbdb8
Update .gitignore 2024-02-04 16:00:47 +01:00
Jason2866
16db35c27b
Auto Install Platformio in VSC (#20658) 2024-02-04 15:59:29 +01:00
Theo Arends
d29b3b2871 Tune GPIO Viewer 2024-02-04 12:52:50 +01:00
s-hadinger
34553f0812
Matter fix endpoint adjusment (#20657) 2024-02-04 12:50:53 +01:00
Theo Arends
ded44f7755 Update changelogs 2024-02-04 11:55:14 +01:00
s-hadinger
110c88e8e1
Matter aggregator relocated to endpoint 1 for Google compatibility, may break existing associations (#20654) 2024-02-03 19:56:29 +01:00
Theo Arends
92b8bb3c9b Update changelogs 2024-02-03 17:23:07 +01:00
SteWers
55259aa8c5
[Energy] Fix frequency handling (#20626)
* [Energy] Prepare MQTT subscribe

- Prepare energy driver for using MQTT subscribe
- Fix handling of frequency

* MQTT in xnrg

* Revert MQTT
2024-02-03 12:37:57 +01:00
Andrey Osin
478bd0ce17
Fix Wi-Fi scan results process when scanning fails. (#20631) 2024-02-03 12:35:13 +01:00
Mark Fickett
58816aa9a2
Lower the minimum temperature to 10C (50F) and make it pick up user-defined values. (#20628) 2024-02-03 12:34:24 +01:00
Christian Baars
a95314ff96
fix build for Core 2 (#20645) 2024-02-02 15:17:45 +01:00
Jason2866
f9ffb34e2f
Next try to silence pip warning 2024-02-02 12:59:38 +01:00
Christian Baars
c24c0a53c0
fix compilation with newer Arduino framework (#20641) 2024-02-02 11:09:43 +01:00
Jason2866
9c45a51f67
Next try to upgrade pip 2024-02-01 15:08:31 +01:00
sfromis
a757447e6d
Update webserver_async.be (#20638) 2024-02-01 14:46:02 +01:00
Jason2866
2a293d6cf9
Update pip 2024-02-01 11:50:56 +01:00
s-hadinger
6c16a5122a
Berry add introspect.contains and bytes.addfloat (#20635) 2024-02-01 09:52:24 +01:00
Jason2866
c7a1b3f7ca
Use Mac ARM GH runner :-) (#20633) 2024-01-31 20:07:27 +01:00
Barbudor
717873eac7
enforce TLL255 on ESP8266 (#20616) 2024-01-30 18:45:54 +01:00
Christian Baars
083ddad683
add BTHOME (#20625) 2024-01-30 17:50:03 +01:00
Theo Arends
95b03592dc Add ISR logging failsafe 2024-01-30 16:57:45 +01:00
Theo Arends
bfd44d06f9 Refactor GPIO Viewer 2024-01-29 17:16:38 +01:00
kubedzero
274f75829e
Fix typos regarding reboots (#20615) 2024-01-29 16:58:15 +01:00
Jason2866
6794a91286
CI check for Berrz 2024-01-29 16:56:55 +01:00
Jason2866
d0fc49462a
Update stale to v9 2024-01-28 19:13:21 +01:00
Jason2866
87bd890dbf
Update GH Action versions (#20609) 2024-01-28 19:05:20 +01:00
Theo Arends
e15e131ca2 Update xdrv_121_gpioviewer.ino 2024-01-28 18:32:34 +01:00
Theo Arends
886b453e69 Fix ESP8266 eFuseMac result 2024-01-28 17:34:15 +01:00
Theo Arends
af9d4cadd8 GPIO Viewer update from 1.0.7 to 1.5.0 2024-01-27 23:58:00 +01:00
Theo Arends
1e7bbfcc00 update changelogs 2024-01-27 23:56:55 +01:00
s-hadinger
9454336f3c
Berry allow mapping within module (#20606) 2024-01-27 13:01:28 +01:00
s-hadinger
19b9960168
Berry C mapping, raise an error if too many arguments are sent (#20604) 2024-01-27 11:59:45 +01:00
Theo Arends
57e633ba55 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-01-27 11:24:16 +01:00
gemu
04bb28bc20
fix email32 file system (#20603)
* fix file system

* fix email attachments

* Update MB_FS.h
2024-01-27 09:06:41 +01:00
Theo Arends
5bb9e65a4b Update changelogs 2024-01-26 15:09:44 +01:00
Theo Arends
908a918b8e Fix ESP8266 compilation 2024-01-26 13:58:28 +01:00
Theo Arends
4bc7b4ec2f Add ESP32 support for DS18x20 on Shelly Plus Add-On (#20580) 2024-01-26 12:26:47 +01:00
Theo Arends
5d06a25915 Add ESP32-C3 support for GPIO11 (#18350) 2024-01-26 12:13:23 +01:00
gemu
52f3be51b4
utouch optimizations, rgb i2c init (#20596) 2024-01-26 09:11:56 +01:00
Theo Arends
758549c4c3 Fix MLX90614 naming (#20592) 2024-01-25 14:29:12 +01:00
Barbudor
ab49593f9f
Fix QMC5883 and HLC5883 drivers breaking sensor command (#20585)
* fix breaking sensor command

* fix hmc5883
2024-01-25 08:43:56 +01:00
s-hadinger
559789b4ec
HASPmota support for min and max attribute in slider (#20582) 2024-01-24 23:27:01 +01:00
Theo Arends
2a9f9634c9 Update changelogs 2024-01-24 15:05:37 +01:00
Jason2866
808e598b6d
Arduino Core 3.0.0 Platform 2024.01.12 (#20576)
* Core 3.0.0 latest support

* compability with latest Arduino Core 3.0.0

* Platform 2024.01.12
2024-01-24 14:47:55 +01:00
Theo Arends
cce5204177 Refactored rules USE_EXPRESSION and SUPPORT_IF_STATEMENT replacing LinkedList with arrays and enabled by default 2024-01-24 14:33:55 +01:00
Theo Arends
79bc9a6b94 Fix LList insertAt skipping one entry 2024-01-24 14:22:48 +01:00
SteWers
7f5e79415f
[SML] Fix decimal separator (#20573) 2024-01-24 08:27:54 +01:00
Theo Arends
a74200d40d Refactored rules USE_EXPRESSION and SUPPORT_IF_STATEMENT replacing LinkedList with arrays 2024-01-23 23:52:18 +01:00
s-hadinger
d531583721
Clean solidified animate (#20574) 2024-01-23 23:16:24 +01:00
Jason2866
44b3d99b21
mp3_shine compiles with c3 (#20572) 2024-01-23 22:44:27 +01:00
Theo Arends
c6355e02fb Better bailout 2024-01-23 18:23:04 +01:00
Theo Arends
dca33c10a3 Fix subscribe same topic, multiple events
And even smaller by unstringifying
2024-01-23 18:17:42 +01:00
Jason2866
a7f3a7adad
Berry animation library not needed for safeboot env 2024-01-23 17:51:13 +01:00
Jason2866
ab39abb7ed
LinkedList not needed any more for safeboot env 2024-01-23 17:44:56 +01:00
Theo Arends
a9a3f5638c Fix subscribe rule handling 2024-01-23 12:32:12 +01:00
ouinouin
669fc1ecfa
Create ST7735S_ATOM_S3_diplsay.ini (#20566)
inspired from code given by atom, and M5stick display.ini
tested and working in all rotations.
2024-01-22 19:27:44 +01:00
gemu
a915fdec52
modify RA8876 display driver to use internal touch driver (#20562)
* integrate utouch driver

* modify for utouch driver

* touched is now int16
2024-01-22 18:21:58 +01:00
gemu
780940d5d0
Utouch update (#20561)
* toched return int16

* add XPT and more opcodes

* add guesture

* increase code buffer
2024-01-22 18:21:40 +01:00
Theo Arends
85c1413eb1 Bump version v13.3.0.4 2024-01-22 17:03:52 +01:00
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
s-hadinger
9006386cf2
Extend LList (#20555) 2024-01-21 18:40:27 +01:00
Theo Arends
95f76d623f Changed command `TimedPower` refactored from String to LList 2024-01-21 14:29:44 +01:00
Jason2866
4a4fe27cee
fix esp8266 fs download and extract (#20554) 2024-01-21 13:16:05 +01:00
s-hadinger
de91133414
Zigbee `ZbEmulation` to selectively exclude some devices from Hue/Alexa emulation (#20552) 2024-01-21 11:42:04 +01:00
SteWers
76a7ab5131
[Energy] Decoupled FREQUENCY and Energy->type_dc (#20549) 2024-01-21 11:37:04 +01:00
Theo Arends
9608b7513a Refactor backlog by removing some str copies 2024-01-20 22:45:24 +01:00
stefanbode
8223777e4f
Improve init behavior (#20548)
Ensure filesystem init is executed after so80 1. The shutter command will check for proper init and if not done will do it.
2024-01-20 17:29:50 +01:00
Theo Arends
05014d48cf Refactor backlog from String to char 2024-01-20 17:18:03 +01:00
Theo Arends
90a4ae0ef5 Update changelogs 2024-01-20 11:46:51 +01:00
SteWers
47384e7057
[SolaxX1] Improve web presentation (#20535)
* [SolaxX1] Improve web presentation

* [SolaxX1] delay
2024-01-20 11:10:40 +01:00
s-hadinger
6c3f70589a
Core3 reset GPIOs 16/17 when PSRAM is not used (#20547)
* Core3 reset GPIOs 16/17 when PSRAM is not used

* clean
2024-01-19 23:19:56 +01:00
s-hadinger
6d0c2fa9bc
Matter fix support for Alexa (#20545) 2024-01-19 20:06:06 +01:00
Jason2866
0ccd958c6c
refactor Pio filesystem download script (#20544)
* refactor FS download Pio script
2024-01-19 18:36:46 +01:00
s-hadinger
1eb1025c18
Berry/Zigbee auto import zigbee (#20543) 2024-01-19 13:28:12 +01:00
s-hadinger
860f3857d5
Berry/Zigbee add web hook per device for customized status display (#20542) 2024-01-19 08:24:17 +01:00
s-hadinger
30c3165b6f
Audio for Core3, MP3Stream and Shine (#20540) 2024-01-18 23:35:53 +01:00
s-hadinger
6b4254a014
Berry syntax coloring for Notepad++ (by FransO) (#20541) 2024-01-18 23:24:18 +01:00
Jason2866
2b0d603d03
Esp8266 ipv6 (#20539)
* esp8266 ipv6 compatible framework
2024-01-18 22:39:50 +01:00
s-hadinger
06c2d78d5f
Berry assigment to list with negative index (#20537) 2024-01-18 22:01:39 +01:00
SteWers
c0a78212a4
[VS Code] Make tooltip more clear (#20536) 2024-01-18 20:26:18 +01:00
Theo Arends
0595130fcf Update my_user_config.h 2024-01-18 16:52:24 +01:00
Theo Arends
c9d0106007 Removed max number of 30 backlog entries 2024-01-18 16:32:28 +01:00
Theo Arends
db70d9c8cb Fix GPIOViewer exception 3 2024-01-18 15:55:59 +01:00
Jason2866
f2f0686601
rm IPv6 (esp8266) build options, not supported 2024-01-18 13:14:06 +01:00
s-hadinger
a2c4123d79
Berry add solidification of strings longer than 255 bytes (#20529) 2024-01-18 12:31:47 +01:00
Theo Arends
0f541a963b Fix TimedPower blink off 2024-01-18 10:38:22 +01:00
gemu
9ccc3f8fda
Universal touch driver (#20492)
* add universal touch

* add universal touch

* add universal touch

* add universal touch

* Update xdrv_10_scripter.ino

* utouch add word address support (gt911)

* optimizations

* add simple resistive touch
2024-01-18 10:23:21 +01:00
bovirus
f2bcff346a
Update Italian language (#20526) 2024-01-18 10:23:04 +01:00
Theo Arends
f28c9b6ea9 Slicing GUI information 2024-01-17 18:17:46 +01:00
SteWers
9d86ac8816
Rename "Konsolen" to "Werkzeuge" (#20523)
* Rename "Konsolen" to "Tools"

* Rename "Konsolen" to "Werkzeuge"
2024-01-17 17:11:41 +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
Simon Post
12ef60a3df
Modification of convert.py and preprocessor.py to add tabview, list and tileview. Plus fix lv.keyboard enum error (#20513)
* Modification of convert.py and preprocessor.py to add tabview, list and tileview.  Plus fix lv.keyboard enum error

* Amended my_user_config.h per request

---------

Co-authored-by: Simon Post <admin@SimonM3MacbookPro.theposts.me>
2024-01-17 13:24:43 +01:00
stefanbode
c705c8f89c
Fixed DIV/0 (#20524) 2024-01-17 10:03:42 +01:00
Theo Arends
5545c82e68 Prep for generic use 2024-01-16 17:52:06 +01:00
Theo Arends
34b98f5527 Make it a smaller slice 2024-01-16 17:07:23 +01:00
Theo Arends
c15ad066d0 Sync shutter drivers 2024-01-16 16:40:57 +01:00
SteWers
0ac559bf7f
[Shutter] Fix html table syntax (#20519)
* [Shutter] Fix html table syntax

The html code for the slider was placed in a `<table>` but not fenced with `<tr>` / `<td>` tags. So the browser placed it "randomly" outside of the table.

* [Shutter] revert date
2024-01-16 16:35:19 +01:00
SteWers
eac5c69720
[SolaxX1] Adapting to multi column energy design (#20517)
* [SolaxX1] Adapting to multi column energy design

* [SolaxX1] optimize
2024-01-16 16:25:13 +01:00
SteWers
0cd3d3b003
[WebUI] Fix first line seperator (#20518)
The separator (request) flag has to be cleared before starting the output of sensors/drivers to ignore previous outputs. So there will no seperator in front of the list. This only appeared, when `WebTime` is off.
2024-01-16 16:14:40 +01:00
Theo Arends
aa2053988a Skip slicing for Berry 2024-01-16 16:02:36 +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
Theo Arends
5e84d57c2a Fix compilation without webserver 2024-01-15 22:08:33 +01:00
gemu
b0b2f22e5b
fix display dimmer (#20491) 2024-01-15 21:58:46 +01:00
Theo Arends
3daea4f8fd Update change logs 2024-01-15 21:57:15 +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
Jason2866
d0a9f0d15d
core3 with espressif IPv6 implementation (#20510) 2024-01-15 20:09:19 +01:00
Jason2866
90aa519cbd
Platform 2024.01.01 (#20508)
- core 2.0.14 with compability to IPv6 implementation of espressif Arduino core 3.0.0
2024-01-15 19:23:58 +01:00
SteWers
4f436cdf73
Remove first separator (#20507) 2024-01-15 18:58:14 +01:00
SteWers
ab2439f6c8
Modify shutter driver for GUI sensor separators (#20506) 2024-01-15 18:24:15 +01:00
SteWers
f2800dd770
Modify drivers for GUI sensor separators (#20504) 2024-01-15 16:53:34 +01:00
Theo Arends
2c555cf15b Add thin line as sub-separator 2024-01-15 15:51:00 +01:00
Theo Arends
637fac5ae8 Add GUI sensor separators (#20495) 2024-01-15 15:36:59 +01:00
Theo Arends
ee4bf86e6a Fix compilation when USE_ADC is not defined (#20498) 2024-01-15 10:34:14 +01:00
s-hadinger
8d83472c01
LVGL option to add lv.keyboard extra widget (#20496)
* LVGL option to add `lv.keyboard` extra widget

* Don't include keyboard by default
2024-01-14 22:37:07 +01:00
Christian Baars
d5b4e96283
Berry example - FTP server (#20494) 2024-01-14 22:30:56 +01:00
SteWers
f14ee6415b
[EQ3-TRV] View some values in WebUI (#20487)
* [EQ3-TRV] View some values in WebUI

- View some values in WebUI
- code cleanup

* [EQ3-TRV] Remove lines
2024-01-14 17:39:15 +01:00
Christian Baars
be54104676
add remote_addr and _port to info() (#20485) 2024-01-14 11:31:04 +01:00
Theo Arends
25cadcbbdc Prefer using default GPIOViewer board repository 2024-01-13 22:13:27 +01:00
Theo Arends
1854b9a069 Free some more bytes from GPIOViewer 2024-01-13 16:11:40 +01:00
Theo Arends
9fc47b7d90 Tune GPIOViewer 2024-01-13 15:16:34 +01:00
Theo Arends
779fe14c60 Update changelogs 2024-01-13 11:19:56 +01:00
SteWers
e68a6fd078
Add D_BATTERY (#20478)
Add `D_BATTERY` to language files
2024-01-13 10:00:39 +01:00
s-hadinger
c1f3561a3e
Fix random crash in Zigbee main page (#20481) 2024-01-12 22:34:42 +01:00
s-hadinger
08a14ccc9e
LVGL add lv.str_arr (#20480) 2024-01-12 19:48:33 +01:00
Theo Arends
61f6c26b03 Fix GPIO Viewer single instance 2024-01-12 16:54:24 +01:00
Theo Arends
f065d74293 Add support for HardwareSerial invert (#15461) 2024-01-12 13:57:31 +01:00
Theo Arends
3e3bfccb58 Bump version v13.3.0.3 2024-01-12 12:17:31 +01:00
Benjamin Nestler
a13e83e1e6
FIX: Reset the 'upload_error' variable after web file upload error (#20340)
* FIX: Reset the 'upload_error' variable after signaling the error to enable the next upload action.

* ADD: Introduce HandleUploadUFSDone() to display information messages for uploaded files in UFS and handle errors.
ADD: Include '?fsz=' web-argument (filesize) in the upload button click function.
2024-01-12 10:08:05 +01:00
SteWers
b69cc802db
[MI BLE] added support for LYWSD02MMC (#20381)
* [MI BLE] added support for LYWSD02MMC

- initial support for MI LYWSD02MMC
- code rework

* Update CHANGELOG.md

* Update CHANGELOG.md

* [MI BLE] add Mi32Time / bugfixes

* [MI BLE] plain read, debug enhanced

* [MI BLE] add LYWSD02MMC battery

* [MI BLE] improved debug log, code cleanup

* [MI BLE] improved debug log, code optimize
2024-01-12 10:06:55 +01:00
gemu
03cadd29f3
Sml update (#20474)
* add decryption flags

* add gcm crypto flags
2024-01-12 10:05:25 +01:00
gemu
fa6d18a505
fix memory leak in >w x (#20473) 2024-01-12 10:04:19 +01:00
s-hadinger
b0f4542707
Berry debug.caller (#20470) 2024-01-12 08:29:14 +01:00
Theo Arends
2165ea549a Update changelogs 2024-01-11 15:39:13 +01:00
Jason2866
8cc6154478
Update esp8266 Platformio Platform (#20467) 2024-01-11 15:21:53 +01:00
Jason2866
b881b55092
add FTP server to Tasmota-4M (esp8266) (#20465)
* add FTP server to esp8266 env > 1MB flash
* ftp server only 4M Tasmota
2024-01-11 12:35:24 +01:00
s-hadinger
20c54a3647
Fix compilation of Zigbee for Core3 (#20464) 2024-01-11 10:02:12 +01:00
Theo Arends
20c70d578e Remove padding between tool buttons 2024-01-10 17:17:56 +01:00
Theo Arends
f30f3f8016 Add user control over GPIOViewer sampling interval 2024-01-10 15:51:19 +01:00
Theo Arends
c2d6bbf2c1 Code admin 2024-01-10 11:13:19 +01:00
Theo Arends
af24d689a9 Update changelogs 2024-01-10 10:39:24 +01:00
chefpro
0b509f60b4
Add support for pipsolar inverter (#20408)
* Add support for pipsolar inverter

* Fix CI-Warnings

* Remove unneeded define

* Pipsolar: Fix dat result

* Add support for the rules engine

---------

Co-authored-by: Peter Rustler <peter@rustlerit.de>
2024-01-10 09:21:02 +01:00
s-hadinger
edda5ddc33
Berry tasmota.webcolor (#20454) 2024-01-10 09:08:11 +01:00
s-hadinger
453a3462b7
Fixed Zigbee Aqara attributes on ESP32 (#20452) 2024-01-09 22:30:38 +01:00
Gregory Holder
345de0aded
[Thermostat] Save and restore XdrvMailbox if output relay is switched off (#20405) 2024-01-09 22:07:30 +01:00
btsimonh
fa959d9f47
Webcam v2 tweaks 2024 (#20451)
* suppress compiler warning about 'used' function

* don't stop and start cam webserver every time we save to flash.  Only stop the actual cam clock.

* change cmds WcMenuVideoon and wcmenuvideooff to be wcmenuvideodisable 0/1 to be more TAS like, and save a little.
2024-01-09 22:06:22 +01:00
Jason2866
c00e82171e
platform updates to 2024.01.x0 (#20445)
* platform updates to 2024.01.x0

* core uses async udp now
2024-01-09 20:49:38 +01:00
s-hadinger
151e201048
Update debug_panel (#20449) 2024-01-09 19:59:21 +01:00
s-hadinger
69d4e323d6
Berry provide lightweight options for tasmota.wifi/eth/memory/rtc (#20448) 2024-01-09 19:49:30 +01:00
s-hadinger
85fb54fe8d
Berry webserver.header to read browser sent headers (#20447) 2024-01-09 19:34:19 +01:00
s-hadinger
8712aba3c5
Header Host is now collected by Webserver (#20446) 2024-01-09 19:34:07 +01:00
Theo Arends
52dd206fb7 Add GPIOViewer flow control
Add GPIOViewer flow control to reduce system load if not used
2024-01-09 17:08:13 +01:00
Theo Arends
451f9ba4ae Fix GPIOViewer init and event data 2024-01-09 14:58:33 +01:00
s-hadinger
935fa3519c
Fix display of source IP when restarting from UI button (#20443) 2024-01-09 13:43:26 +01:00
Christian Baars
81fac80859
MI32 legacy: add optional argument to BLE.run() (#20431)
* add optional argument to BLE.run()

* set default of scan response to NO
2024-01-09 09:10:45 +01:00
Andrew Klaus
2f6ab10146
Fixing logic for SGP4x Sgp4xShow() function (#20439) 2024-01-09 09:09:36 +01:00
s-hadinger
8a012452e8
Berry debug_panel.tapp to display real-time heap and wifi rssi (#20436) 2024-01-08 23:15:48 +01:00
Theo Arends
883d34d81e Update xdrv_121_gpioviewer.ino 2024-01-08 22:16:33 +01:00
gemu
92214ac633
ADD FTP server to filesystem (#20402)
* add ftp lib

* add ftp server
2024-01-08 16:44:49 +01:00
bovirus
22d2377442
Update Italian language (#20428)
* Update Italian language

* Update it_IT.h
2024-01-08 15:34:39 +01:00
Theo Arends
ebe840eba5 Update changelogs 2024-01-08 09:40:10 +01:00
s-hadinger
aa1dd392ca
Add Button to dynamically load GPIO Viewer with Berry backend (#20424) 2024-01-08 09:30:18 +01:00
Theo Arends
d51340961f Rename "Consoles" to "Tools" 2024-01-08 09:29:02 +01:00
s-hadinger
e5a0da06dc
Update GPIO Viewer (#20425) 2024-01-07 23:19:53 +01:00
s-hadinger
f0d0cccee6
Berry GPIO Viewer fixes (#20423) 2024-01-07 19:03:56 +01:00
Theo Arends
5c521d300a Add gpioviewer startup delay 2024-01-07 18:10:30 +01:00
Theo Arends
3320847237 Update changelogs 2024-01-07 16:15:08 +01:00
Theo Arends
82313c65b7 Add GPIO Viewer button 2024-01-07 16:06:31 +01:00
s-hadinger
298ee22ebf
Berry add string to bytes() (#20420) 2024-01-07 15:38:29 +01:00
Theo Arends
0d300aebff Update GPIOViewer
- Add ESP8266 PWM state logging
- Add ADC state functions
2024-01-07 15:10:19 +01:00
s-hadinger
2947fd8b06
GPIO viewer fix size (#20417) 2024-01-06 22:46:16 +01:00
s-hadinger
08a769a720
GPIO viewer in Berry initial version using async webserver (#20416) 2024-01-06 22:36:42 +01:00
s-hadinger
bd9a99caff
Berry gpio.get_pin_type and gpio.ger_pin_type_index (#20415) 2024-01-06 22:20:22 +01:00
Theo Arends
ec75462905 Minor fixes 2024-01-06 21:57:09 +01:00
Theo Arends
8e06dcdcc3 Revert "Minor fixes"
This reverts commit aea3789f4095b88656075f12082c9b6661d1d048.
2024-01-06 21:49:55 +01:00
Theo Arends
aea3789f40 Minor fixes 2024-01-06 21:46:37 +01:00
Theo Arends
11da340c62 Revert "Minor fixes"
This reverts commit cee219a55f1b375b56b0c7fbce4cc5fbb711f505.
2024-01-06 21:35:08 +01:00
Theo Arends
4e361538bc Merge branch 'development' of https://github.com/arendst/Tasmota into development 2024-01-06 21:34:19 +01:00
Theo Arends
cee219a55f Minor fixes 2024-01-06 21:34:15 +01:00
s-hadinger
324689ee53
Berry gpio.read_pwm and gpio.read_pwm_resolution (#20414) 2024-01-06 21:22:45 +01:00
Theo Arends
2f184b394f Add GPIO Viewer to see realtime GPIO states. Enable with define USE_GPIO_VIEWER 2024-01-06 17:54:23 +01:00
s-hadinger
ea6b191378
Berry add tasmota.urlbecload(url:string) -> bool (#20412) 2024-01-06 17:32:50 +01:00
s-hadinger
15b40801d4
Fixes for tcpasync (#20411) 2024-01-06 17:03:51 +01:00
s-hadinger
af2b90caac
Berry add support for tcpclientasync in tcpserver (#20401) 2024-01-05 09:54:18 +01:00
Theo Arends
0ed01c3b1d Revert "Add ESP32 experimental support GPIOViewer when `define USE_ESP32_GPIO_VIEWER` is enabled"
This reverts commit 9d27f395d8012c4fd1e3d74384d50d215679fecb.
2024-01-04 22:50:41 +01:00
Theo Arends
b56e8bb014 Revert "Add libs"
This reverts commit 7042b8344cdcffa2e91dc0f9fdb701b0b629ad8d.
2024-01-04 22:50:33 +01:00
Theo Arends
7042b8344c Add libs 2024-01-04 18:31:04 +01:00
Theo Arends
9d27f395d8 Add ESP32 experimental support GPIOViewer when `define USE_ESP32_GPIO_VIEWER` is enabled 2024-01-04 18:28:37 +01:00
s-hadinger
6768ebc2ac
Berry fix static allocation when superclass is a member (#20385) 2024-01-03 16:12:47 +01:00
Theo Arends
03aea58a4c Bump version v13.2.0.2 2024-01-02 14:29:23 +01:00
s-hadinger
54e88c2926
HASPmota type chart (#20372) 2024-01-02 12:16:50 +01:00
Jason2866
516621af52
don't change zip files 2024-01-01 18:22:01 +01:00
Theo Arends
92c3261fb0 Update changelogs 2023-12-30 14:59:16 +01:00
gemu
9194ac6c94
max variables > 256 (#20358) 2023-12-30 13:20:33 +01:00
s-hadinger
a38f869052
Fix other LVGL conversion to int (#20355) 2023-12-30 11:23:26 +01:00
s-hadinger
2de3d427de
LVGL fix type for lv_imgbtn (#20354) 2023-12-30 10:29:30 +01:00
David Gwynne
de0c39582f
don't send commands to the AC while reading data from the AC. (#20352)
on some units it can take around 250ms to reply to a request, by which
time we're shoving another command to the unit. if this happens, the
unit gives up and starts replying to the new command, which can again
take 250ms. in this situation effectively nothing gets through.

avoid this by checking if we're in the parser state machine. this also
gives us timeout handling.

tested on 4 different AC units. one which was unusable before is now
functioning as expected, and the other 3 appear just as functional as
they were before.
2023-12-30 09:14:56 +01:00
s-hadinger
a0f6b7f1a3
Relax checks of Partition Wizard for newest Shelly (#20349) 2023-12-29 23:10:26 +01:00
Theo Arends
4393327bb9 Add support negative power on BL0942 using index 5..8 (#20322) 2023-12-29 22:54:32 +01:00
s-hadinger
6a8435b731
Berry added introspect.set() for class attributes (#20339) 2023-12-29 10:17:10 +01:00
s-hadinger
1f662a6dad
HASPmota added haspmota.page_show() to change page (#20333) 2023-12-28 22:19:58 +01:00
Theo Arends
6d94d9e766 Cleanup 2023-12-28 17:53:21 +01:00
Theo Arends
d5a4f8441b Fix Berry claiming UART0 if needed (#20324) 2023-12-28 17:25:01 +01:00
s-hadinger
67b36030dc
Berry sync upstream #369 (#20330) 2023-12-28 17:00:35 +01:00
Jason2866
21de682f58
Fix compile (#20329) 2023-12-28 13:48:27 +01:00
Theo Arends
21c7edcb50 Add display of active drivers using command `status 4` 2023-12-27 22:03:56 +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
hk2k2
84fb3879c7
Update xdsp_15_tm1637.ino (#20317)
Displaydimmer command has not worked correctly on 2 daisy-Chained MAX7219 7-Segment Displays.
Only the first Module (8 Segments) changed their brightness.
2023-12-27 09:27:16 +01:00
Theo Arends
c744612a29 Fix scripter buffer overflow (#20303) 2023-12-26 14:22:47 +01:00
smhc
b7b83eaaaa
Only reduce sleep for lights if necessary (#20146)
Co-authored-by: Shane Hird <shane@email.com>
2023-12-26 12:41:55 +01:00
s-hadinger
3415453620
Berry Improve error message when constructor returns NULL (#20314) 2023-12-26 12:29:50 +01:00
Theo Arends
77a58a3642 Fix domoticz topic edge case 2023-12-25 14:18:59 +01:00
DUPONCHEEL Sébastien
d39896f6a2
HDMI CEC: Allow TV device type emulation. (#20310)
The previous check set device type default when HDMIType was set to CEC_Device::CDT_TV.
2023-12-25 12:42:20 +01:00
Jason2866
bb1e3cac97
Fix typo in Berry solidify GH actions 2023-12-25 11:41:51 +01:00
s-hadinger
2808653ad9
Moved Berry animate to its own berry_animate lib (#20309)
* Moved Berry animate to its own `berry_animate` lib

* Fix solidification

* fix compilation

* Fix compilation
2023-12-25 11:01:19 +01:00
UBWH
bebffa040f
Update xdrv_58_range_extender.ino (#20295)
RESULT to RgxSSId command is not valid JSON

BEFORE:
RSL: RESULT = {"Rgx":{"Valid":"true","SSId":"solar_5BDBFC","Password":"MyPassword","IPAddress":"192.168.99.1","Subnetmask":"255.255.255.0"}

AFTER
RSL: RESULT = {"Rgx":{"Valid":"true","SSId":"solar_5BDBFC","Password":"MyPassword","IPAddress":"192.168.99.1","Subnetmask":"255.255.255.0"}}

Not extra terminating '}'
2023-12-25 09:13:32 +01:00
DUPONCHEEL Sébastien
c13886e00d
HDMI CEC: Fix HDMIType command (#20308)
According to documentation HDMIType is from 0 to 5 but the actual check is lower than 1 and above or equal 6, so the function is never applied. Also note that setting the HDMIType to 0 use the default type value 4, that make impossible the emulation of a TV device.
2023-12-25 08:54:53 +01:00
s-hadinger
6c0028de4e
Matter improve read sensors (#20302)
* Matter improve read_sensors scheduling

* Imprtove logging

* add scheduler call

* remove unwanted print

* fix
2023-12-24 09:31:53 +01:00
Theo Arends
a6a8214ea7 Fix support for Domoticz floor/room topics
Fix support for Domoticz floor/room topics. Regression from v12.0.1 (#20299)
2023-12-23 16:13:13 +01:00
Jason2866
b4f1aafc4c
Platform 2023.12.00 (#20298) 2023-12-23 12:18:25 +01:00
s-hadinger
15e181ac53
Update CHANGELOG for Matter remote password 2023-12-23 11:57:01 +01:00
s-hadinger
fb90a34b0a
Matter support for password for remote Tasmota devices (#20296) 2023-12-23 10:54:22 +01:00
Jason2866
18e5f53e97
Add new board setting "download speed" to esp32x boards json (#20291)
* add download_speed setting

* add "download speed"

* add / change up- download speed
2023-12-22 19:40:47 +01:00
s-hadinger
fbc827d11d
Berry fix leds brightness (#20292) 2023-12-22 18:10:34 +01:00
lis0r
4ac93a4d1a
Add support for SJWS01LM BLE flooding sensor (#20288) 2023-12-22 15:31:14 +01:00
Bernhard Urban-Forster
5988e77f8c
as608: send mqtt message on non-matching finger (#20287) 2023-12-22 14:21:59 +01:00
Christian Baars
0e87096bad
allow Berry fast_loop for BLE module (#20281) 2023-12-21 20:28:08 +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
Marcus Better
04a8414217
Fix Tuya v2 module compilation (#20272) 2023-12-20 10:00:52 +01:00
Theo Arends
9e2ae391fc Fix ESP32 piezo ceramic buzzer
Fix ESP32 piezo ceramic buzzer doesn't buzz (#20118)
2023-12-19 15:38:12 +01:00
Jason2866
87b5886ea7
correct enable ESP32 Async UDP for core 3.0.0 2023-12-19 15:18:03 +01:00
Jason2866
d78a223646
enable lib ESP32 Async UDP for core 3.0.0 2023-12-19 15:14:57 +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
SteWers
81f90a251c
de_DE Fixes and typos (#20269)
* de_DE Fixes and typos

* Hyphen
2023-12-19 09:37:02 +01:00
Theo Arends
b69a335634 Update changelogs 2023-12-18 14:26:13 +01:00
Jason2866
d2690ef7c0
enable CST816S touch driver in firmware lvgl (#20264) 2023-12-18 14:02:00 +01:00
Theo Arends
f65ae0694b Fix XSS phase 1 2023-12-18 12:31:14 +01:00
Norbert Richter
c111bb963f
Add NeoPool hydrolysis FL1 and Redox flag (#20258) 2023-12-18 11:27:12 +01:00
Arne Meeuw
6b35fc8ddb
Add support for CST816S touch interface (#20213)
* Add initial version (prints coordinates)

* Add CST816S_found

* Revert formatting

* Add supported gestures (untested)

* Correct use of enums

* Remove library dependency

* Unification of methods

* Remove redundant variables and format
2023-12-18 11:03:18 +01:00
SteWers
2204ecdc51
Unify de_DE (#20257)
* Unify de_DE

Make de_DE more unify

* Update de_DE.h
2023-12-18 10:17:39 +01:00
s-hadinger
5fd8faa633
Add animate palettes (#20256) 2023-12-17 21:23:43 +01:00
bovirus
d3a30681b2
Update Italian language (#20255) 2023-12-17 21:13:07 +01:00
s-hadinger
dc98f6e190
Simplify animate (#20254)
* Simplify animate

* make add_ methods idempotent
2023-12-17 20:47:18 +01:00
s-hadinger
cc5eb732ea
Fix animation (#20250) 2023-12-16 22:38:04 +01:00
Theo Arends
70768ea8ad Update changelogs 2023-12-16 18:29:09 +01:00
Barbudor
7c290388d9
Sonoff Basic R4 Magic switch (#20247)
* magic switch take 1

* good to go

* good to go

* final, including in tasmota32c3
2023-12-16 18:23:51 +01:00
s-hadinger
3f4b69f91c
Improve animation (#20246) 2023-12-16 17:26:58 +01:00
Norbert Richter
d10b30ef55
Update NeoPool register desc (#20245) 2023-12-16 14:40:18 +01:00
s-hadinger
d6bf19190f
Small fixes to animate module (#20238) 2023-12-14 23:09:40 +01:00
s-hadinger
c1f8ee5dbb
Refactoring of Berry animate module for WS2812 Leds (#20236) 2023-12-14 20:13:17 +01:00
Theo Arends
7b12450876 Update SECURITY.md 2023-12-14 15:29:19 +01:00
Theo Arends
b421e2d88b Update changelogs 2023-12-14 15:17:44 +01:00
Theo Arends
827f614933 Update SECURITY.md 2023-12-14 15:12:36 +01:00
s-hadinger
5102dbf1d2
Matter Contact sensor was not triggering any update (#20232) 2023-12-13 20:07:12 +01:00
Theo Arends
512d659d67 Bump version to v13.3.0.1 2023-12-12 16:20:06 +01:00
Theo Arends
c6ecaf9bd7 Update changelogs 2023-12-12 10:56:04 +01:00
s-hadinger
f796915fd1
HASPmota bar fixed val attribute (#20208) 2023-12-11 22:13:24 +01:00
s-hadinger
f7cf94b929
Remove Berry every_200ms event which didn't work anyways (#20205) 2023-12-11 21:22:20 +01:00
Christian Baars
864a99d887
Berry ULP - API changes for IDF5.x (#20198)
* remove pointless dependencies

* add API changes for IDF5.x
2023-12-09 13:32:02 +01:00
s-hadinger
15d72e9f33
Fix solidification of leds (#20199)
* Fix solidification of leds

* Fix includes
2023-12-08 22:41:44 +01:00
s-hadinger
d61adb0b0c
Leds animation refactoring stage 1 (#20197) 2023-12-08 21:13:44 +01:00
Barbudor
73268e4bb6
Fix TUYA state machine (in TUYA v1) (#20110)
* rework state machine

* some comments

* wip

* looks good now

* little updates
2023-12-08 20:33:40 +01:00
s-hadinger
faa29b2e57
Fix Neopixel flicker for Core3 (#20196) 2023-12-08 19:43:02 +01:00
s-hadinger
fd0a2fdaa5
Update berry.exe (#20186) 2023-12-07 22:07:11 +01:00
s-hadinger
40ed8aa10f
Bring back invalidate_spiffs() (#20184) 2023-12-06 21:39:52 +01:00
s-hadinger
ddb11779fd
ESP32 LVGL library from v8.3.10 to v8.3.11 (no functional change) (#20183)
* ESP32 LVGL library from v8.3.10 to v8.3.11 (no functional change)

* merge

* parse

* finalize
2023-12-06 21:30:08 +01:00
Jason2866
79de12decc
Tasmota Arduino 3.0.0-alpha3 (#20172)
* Tasmota Arduino Core 3.0.0-alpha3
2023-12-05 15:41:55 +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
e00d5ff914 Update comments 2023-12-04 12:08:57 +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
70a082c8e5 ESP32 show colorful background if `WebColor2` bit0 is not set. Bit0 is default set using #252525 2023-12-03 11:59:16 +01:00
SteWers
b4a54ae880
[Thermostat] Simplify code (#20141)
* [Thermostat] Simplify code

Simplify code of PR #20133

* [Thermostat] small code changes

- removed unused const
- replaced constant value
2023-12-03 08:08:24 +01:00
Theo Arends
28c8f8cf47 Fix PowerOnState on ESP32 (#20144) 2023-12-02 17:49:02 +01:00
Theo Arends
050fdbf5de Important fix 2023-12-02 17:04:43 +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
vtHydroponics
3d0ab2259c
Sensor57 TSL2591 Light Sensor Commands (#20039)
* Changes from 11/12/2023. Switches made, need debug

* Finalized gain/integration adjustment trees

* Fixed the bugs

* Outputs in JSON, hex displays as hex was decimal
2023-12-02 12:35:56 +01:00
stefanbode
45ba50bb2f
scripter compile error fix (#20140)
compile error if rules are disabled fixed
2023-12-01 17:14:09 +01:00
Christian Baars
8ee071b8b8
build process: simplify driver selection for BLE (#20138)
Co-authored-by: Radio Loge <radiologe@MacBook-Pro-von-Radio.local>
2023-12-01 14:59:59 +01:00
Theo Arends
5b13ece33e Bump version to v13.2.0.3 2023-12-01 14:10:13 +01:00
stefanbode
7260208f04
Update CHANGELOG.md (#20137)
Deepsleep added
2023-12-01 14:02:41 +01:00
Christian Baars
673202120f
instantiate correct class Rainbow_stripes (#20135) 2023-12-01 10:52:00 +01:00
stegerfa
a9a734ddba
fixed possible char array overflow (#20133)
* fixed possible char array overflow

the temporary char arrays size was fixed to 4 bytes before.
snprintf was set for the second char, so maximum size must be limited to 4-1, instead of 4 bytes.
to avoid further mistakes usage of a #define
(assuming that flaw made never problems as the number of attached sensors was usually <99)

* fixed possible char array overflow, optimization of preprocessor-constant name

instead using shortname TEMPLEN for the preprocessor-constant using a name specific to the thermostat-function to avoid interference with the rest of the project

* fixed possible char array overflow, no preprocessor constant neccessary

fixed possible char array overflow, without using preprocessor constant
2023-12-01 09:14:42 +01:00
stefanbode
9a010bdf7d
fix on undef TIMERS (#20123)
fix compilation error
2023-11-30 08:54:08 +01:00
stefanbode
47bc321ebb
Fix compile issue with rules and startup procedure of deepsleep (#20122)
* Fix compile issue with rules and startup procedure of deepsleep

* fix

* fix inc with old functionality

fix a side effect with the old behavior
2023-11-29 15:36:43 +01:00
Jason2866
59c22b6353
use LTO for riscv too (#20119)
LTO riscv issue is fixed in gcc used for building core 3
2023-11-28 20:08:49 +01:00
stefanbode
d0f47efae5
Integrate TIMERS into Deepsleep (#20117)
* Integrate Timers into Deepsleep

Added new functionality to controll the Deepsleep Wakeup process with TIMERS.

* added 60sec initial runtime
2023-11-28 11:38:46 +01:00
Christian Baars
fb51d9df8a
MI32 GUI changes (#20115) 2023-11-27 19:08:44 +01:00
Theo Arends
62afe918f0 Add webquery message when empty response 2023-11-27 15:59:27 +01:00
Theo Arends
07031d5ebf Fix `WebQuery response buffer corruption and format character %` (#20111) 2023-11-27 15:22:30 +01:00
Barbudor
3273aaa9f9
Fix ESP32 webquery response (#20111)
* logging webreponse

* to test

* final

* simple
2023-11-27 12:38:52 +01:00
Theo Arends
22f50abf22 Fix compile error 2023-11-24 17:20:21 +01:00
Theo Arends
01e51b2c9d Fix undocumented use of Energy struct 2023-11-24 16:49:51 +01:00
Theo Arends
2cee622af8 ESP32 remove restart energy logging if no energy monitoring is selected 2023-11-24 16:36:41 +01:00
Theo Arends
ad831418e5 Fix SO51 2023-11-24 11:36:20 +01:00
Theo Arends
9153ba37ca Update changelogs 2023-11-23 12:34:10 +01:00
Steve
3568b559e4
Add Support for Avago Tech Bluetooth Buttons (#20088) 2023-11-23 12:00:34 +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
Jason2866
a693c28d07
Platform 2023.11.01 (#20087) 2023-11-22 23:39:02 +01:00
papax333
77081ad92b
corrected ebus crc check (#20081) 2023-11-22 11:57:10 +01:00
Daniel Kucera
7e2fbdea55
tuyamcu: allow sending arbitrary commands (#20077) 2023-11-22 11:37:01 +01:00
NintenHero
92dae8ab5c
Edit Discord badge (#20083)
Use white Discord icon. Lable the badge as "Discord". Use the official Discord logo's color value of 5865F2.
2023-11-22 11:35:32 +01:00
s-hadinger
1b0454f6bc
Fix AES CBC (#20078) 2023-11-21 17:12:01 +01:00
Theo Arends
433d69d4bc Fix serial resource checks
Fix serial resource checks (#20053)
2023-11-20 12:35:06 +01:00
gemu
7d30ab5929
support for kamstrup heat meters (#20057) 2023-11-20 09:05:54 +01:00
SteWers
f4ad7586bb
Multilingual fixes (#20064)
* Multilingual fixes

Some fixes for a better user experience matching every language.

* Revert frag mem

Solved problem with regional decimal conversion in language file.
2023-11-20 09:05:40 +01:00
s-hadinger
f1fe32b541 Solidified Code updated 2023-11-19 16:16:50 +00:00
s-hadinger
e3b151c756
Fix Berry parser error in specific cases (#20059)
* Fix Berry parser error in specific cases

* fix typo

* Fix last bug (hopefully)
2023-11-19 17:16:03 +01:00
Jason2866
bbe173b534
Update platformio_tasmota32.ini (#20052) 2023-11-18 19:13:24 +01:00
bovirus
1e7c2a9dd2
Update Italian language (#20050) 2023-11-18 14:20:45 +01:00
Jason2866
458eb36702
Build c6cdc instead of c6 2023-11-18 13:23:28 +01:00
Jason2866
ae2f30f351
Fix copy paste error 2023-11-18 13:18:18 +01:00
Jason2866
4029b57bb2
add C2 / C6 to devel build 2023-11-18 13:14:41 +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 4489dba8ddff8df77311414d1867a9907f97252b.
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
SteWers
040e25a92c
Label of upload button (#20036)
As the label of the upload button is concatenated at runtime, this does not match in all languages. To solve this, there is now a full label text for `Start upgrade` and `Start restore`.
2023-11-17 10:35:29 +01:00
Theo Arends
df2bb8e95c Update changelogs 2023-11-16 10:38:02 +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
SteWers
c3674bd08f
Enhance de_DE.h (#20027)
* Enhance de_DE.h

* Update de_DE.h
2023-11-16 10:17:58 +01:00
Jason2866
a01bed3928
Update build_all_the_things.yml 2023-11-14 23:45:24 +01:00
Jason2866
eb2f2c7a46
Update Tasmota_build_master.yml 2023-11-14 23:44:34 +01:00
Jason2866
0ad246c332
Update Tasmota_build_devel.yml 2023-11-14 23:43:44 +01:00
Jason2866
2f29995f4c
Update platformio_tasmota_core3_env_sample.ini (#20024) 2023-11-14 23:33:13 +01:00
s-hadinger
bc8dd8894e
Fix compilation for Audio Core3 ESP32C3 (#20023) 2023-11-14 22:20:26 +01:00
stefanbode
dd9e2a7409
regression of MAX_SHUTTERS for stepper motors (#20019)
maximize on 4 stepper shutters due to limits in number of counter
2023-11-14 17:54:01 +01:00
Jason2866
7abf8c469b
Align arduino3 firmware build to Tasmota32 (#20015)
* step1 of phase out Arduino30 firmware variant

* rm duplicate Matter define
2023-11-14 17:02:00 +01:00
Jason2866
58f50045d9
Add the possibility to set global compile time settings (#20013) 2023-11-14 16:36:09 +01:00
SteWers
52a0d5b365
[Thermostat] Fix JSON index (#20011)
* [Thermostat] Fix JSON index

* Fix index in debug log
2023-11-14 10:00:55 +01:00
Christian Baars
0b54b7df40
fix compilation without PARTITION_WIZARD (#20009) 2023-11-14 08:52:09 +01:00
Theo Arends
7e384ebff8 Add image name to GUI footer 2023-11-13 14:41:49 +01:00
Jason2866
0ee62e597b
Fix spi c2 c6 bus numbers and SPI Reg Base defines (#19988)
* C2 and C6 have same SPI bus as C3
* Update esp32x_fixes.h
* Release Platforms
2023-11-13 13:44:47 +01:00
Theo Arends
73f219e2bb Update changelogs 2023-11-13 11:29:57 +01:00
Theo Arends
c1fa07dd51 Fix ESP32C3 ledlink 2023-11-13 10:54:25 +01:00
SteWers
84249ca32f
Update de_DE.h (#19995) 2023-11-13 10:32:39 +01:00
bovirus
fa34338476
Update Italian language (#20002) 2023-11-13 10:31:37 +01:00
Jason2866
34fba6e21e
Fix audio warning with Arduino core 3 (#20000)
* silence warning Core 3

* Update add_c_flags_ard3.py

* Update library.json
2023-11-12 23:55:50 +01:00
s-hadinger
65e07e8387
Fix Berry gpio.dac_voltage() broken in 13.2.0 (#19997) 2023-11-12 22:17:17 +01:00
Jason2866
44ef425b89
disable warning only for specific compiler version (#19994) 2023-11-12 19:01:41 +01:00
Jason2866
5021b917da
Fix compiler warning (#19990)
* Create add_c_flags_ard3.py
2023-11-12 17:42:00 +01:00
SteWers
64f0520b23
[Thermostat] Change to language files (#19982)
* [Thermostat] Change to language files

* [Thermostat] Gradient display

Enhance display of gradient temperature
2023-11-12 11:26:45 +01:00
s-hadinger
de1b5929b8
Partition Wizard can be loaded dynamically (#19980)
* Partition Wizard can be loaded dynamically

* Centralize config

* Don't display duplicate buttons

* Fix test
2023-11-11 23:52:41 +01:00
Theo Arends
e81ec38661 Update changelogs 2023-11-11 14:29:37 +01:00
Norbert Richter
c88b773dd3
Neopool enhancements (#19973)
* Add NeoPool sensor delta trigger

* Add NeoPool store settings in unified file system

* Add NeoPool command NPBoost
2023-11-11 11:49:40 +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
Christian Baars
cf6de0ce31
add AES_CBC to crypto module (#19964) 2023-11-09 14:27:17 +01:00
Theo Arends
9b5945a117 Add feature10 bitmap 2023-11-09 14:25:24 +01:00
s-hadinger
b04d26a7a3 Solidified Code updated 2023-11-08 20:40:15 +00:00
Ludovic BOUÉ
0303cca1db
Fix for Matter flow sensor (#19961)
* Update Matter_Plugin_4_Bridge_Sensor_Flow.be

MeasuredValue represents 10 x flow in m3/h

* Update Matter_Plugin_3_Sensor_Flow.be

MeasuredValue represents 10 x flow in m3/h

* Update Matter_Plugin_4_Bridge_Sensor_Flow.be

MinMeasuredValue comment
2023-11-08 21:39:20 +01:00
Theo Arends
27fa6f34ea Update changelogs 2023-11-08 14:17:55 +01:00
Christian Baars
06bacdf48b
refactoring, use ringbuffer for server too (#19953) 2023-11-07 20:27:43 +01:00
gemu
1e4f069c3f
can bus read and write support, esp32 native twai (#19934) 2023-11-07 16:15:14 +01:00
s-hadinger
ceda8782c8
Berry fix bytes getter for 3-bytes big-endian (#19945) 2023-11-06 17:48:24 +01:00
Jason2866
4e8e01fd62
Flash mode QIO for C2 (#19944) 2023-11-06 16:50:54 +01:00
s-hadinger
9cfe78a8a0
Audio refactoring of DAC (#19939) 2023-11-06 08:52:11 +01:00
s-hadinger
625b204cb2
Berry `debug.gcdebug()` to enable GC debugging (#19936) 2023-11-05 18:40:28 +01:00
s-hadinger
3207d542c1
Fix Zero-Cross Dimmer for ESP32 with Core3 (#19929)
* Fix Zero-Cross Dimmer for ESP32 with Core3

* Remove left-over

* Fix esp8266
2023-11-04 19:19:48 +01:00
Norbert Richter
5d4330611a
Add NeoPool NPHydrolysis percent and unit (#19924) 2023-11-04 15:42:01 +01:00
Jason2866
361c15d63b
Delete homekit.c (#19923) 2023-11-04 13:05:48 +01:00
s-hadinger
fbe31ab294
Fix Core3 warnings when compiling LVGL (#19921) 2023-11-04 12:22:44 +01:00
s-hadinger
46df036b51
Cosmetic changes (#19920) 2023-11-04 11:46:25 +01:00
s-hadinger
dcbb22a256
Matter improve virtual plugins (#19918)
* Matter improve virtual plugins

* Disable sensor probing for virtual

* solidify
2023-11-03 23:12:04 +01:00
s-hadinger
8e6a8b6cff
Matter solidify map of plugins (#19917) 2023-11-03 21:50:55 +01:00
protectivedad
11e9b7375d
The webserver for the esp32-cam stream doesn't get started automatically. (#19905)
This ensures that it does start when the WcStream (or WcInterrupt) are run.

Co-authored-by: Anthony Sepa <protectivedad@gmail.com>
2023-11-03 16:02:42 +01:00
stefanbode
b83516970f
fix #19911 tilt position is not restored with command: shutterposition 0,-45 (#19916)
* fix shutterposition 0,-45 does not keep tilt

allow , on different config settings

* fix shutterposition 0,-45 does not maintain tilt

allow , on different config settings.
2023-11-03 16:01:57 +01:00
Theo Arends
dab1a5302e Update changelogs 2023-11-03 14:34:03 +01:00
s-hadinger
ec039a8390
Matter update hierarchy of plugins (#19915) 2023-11-03 14:21:13 +01:00
Theo Arends
f78c195945 Update changelogs - Bump version v13.2.0.2 2023-11-03 14:20:36 +01:00
s-hadinger
2791087f3c Solidified Code updated 2023-11-03 10:10:03 +00:00
Ludovic BOUÉ
8c40d77664
Adding Matter Flow sensor support (#19852)
* Create Matter_Plugin_3_Sensor_Flow.be

* Create Matter_Plugin_Bridge_Sensor_Flow.be

* Create Matter_Plugin_9_Virt_Sensor_Flow.be

* Update Matter_Plugin_3_Sensor_Flow.be

0x0404 Flow Measurement cluster

* Rename Matter_Plugin_Bridge_Sensor_Flow.be to Matter_Plugin_4_Bridge_Sensor_Flow.be

* Update Matter_UI.be

* Update be_matter_module.c

* Update be_matter_module.c

* Fixes

* Update be_matter_module.c

* Update Matter_Plugin_9_Virt_Sensor_Flow.be

* Update Matter_Plugin_3_Sensor_Flow.be

* Update be_matter_module.c

* Update solidified_Matter_Plugin_9_Virt_Sensor_Flow.h
2023-11-03 11:08:38 +01:00
gemu
2d05bd2597
add tcp client, fix timer issue (#19914) 2023-11-03 10:39:18 +01:00
s-hadinger
217c568301
HASPmota add styling properties (#19912) 2023-11-02 22:11:48 +01:00
Theo Arends
63297ec5c9 Start using constexpr in featurelist
Saves 128 bytes.
2023-11-02 17:44:29 +01:00
Christian Baars
580c46177f
MI32: fix restart on C6 (#19909) 2023-11-02 13:55:15 +01:00
Jason2866
62675a37a0
clean up in Arduino3 envs 2023-11-02 12:15:27 +01:00
Jason2866
6a86576dac
add MI env (#19902)
* rename odroid ard3 env to tasmota32-psramfix_ard3
* add inbuilt JTAG debugger
* rm Homekit leftovers
* add MI env
2023-11-02 12:03:14 +01:00
Jason2866
3da80e9144
Enable IR Remote (#19908) 2023-11-02 11:33:07 +01:00
s-hadinger
8d9f76d52d
Fix IR receive on ESP32 with Arduino Core 3 (#19904) 2023-11-01 22:49:59 +01:00
Christian Baars
c238d8d4d1
several updates (#19893) 2023-11-01 17:30:22 +01:00
stefanbode
2e95f45458
continuous improvement (#19897)
- servo fix on movement during operation. position did not behave as expected if position change before stop
- enhanced minimum change on stepper shutter depending on motordelay
2023-11-01 14:15:52 +01:00
Jason2866
ba4d031cc6
align Boards Info 2023-11-01 12:31:52 +01:00
s-hadinger
86e777eaad
Fix python coc warning (#19895) 2023-11-01 12:09:10 +01:00
s-hadinger
0cd1ae965c
Berry fix warning in be_lexer (#19892) 2023-10-31 22:11:18 +01:00
Jason2866
d148cc21f6
add tasmota32c6cdc-arduino30 (#19891) 2023-10-31 20:43:12 +01:00
Barbudor
f9717ceb7f
fix compile USE_PID (#19890) 2023-10-31 20:42:42 +01:00
Jason2866
6527442110
move core3 platform to platformio_tasmota32.ini (#19889)
* Update platformio_tasmota32.ini

* Update platformio_tasmota_core3_env_sample.ini

* Update platformio_tasmota_core3_env_sample.ini

* Update platformio_override_sample.ini

* Fix optical look

* Update platformio_tasmota_core3_env_sample.ini

* Update platformio_tasmota32.ini
2023-10-31 20:42:29 +01:00
stefanbode
24927f17c9
enhancement servo shutter (#19888)
allow on servo also very small changes of position. need to do similar with steppers later
2023-10-31 20:41:41 +01:00
Varun Dhand
00e3087f51
fix: typo in CHANGELOG.md (#19882) 2023-10-31 20:41:22 +01:00
Jason2866
53bd4635d9
move arduino30 default envs (#19885) 2023-10-31 13:35:58 +01:00
Jason2866
9020b7d5c2
add OPI / OPI boards (#19884)
* add OPI / OPI boards
* add S3 OPI_OPI env
2023-10-31 13:18:19 +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
Jason2866
b0d5cffe16
Add flash mode OPI to Tasmota info page (#19881)
* add OPI mode to info page
2023-10-30 18:27:25 +01:00
Jason2866
fdef240ea4
fix resize for FS >16MB (#19880) 2023-10-30 18:07:24 +01:00
Theo Arends
444f4fcd62 Fix ESP32 32MB program flash size 2023-10-30 15:29:01 +01:00
stefanbode
8540ee37fc
fix on servo and ESp32 (#19878)
servo did not react same on ESP32 than ESP8266. Changed to TASMOTA pwmapply  capabilities
2023-10-30 14:48:32 +01:00
anishsane
be94a6cac8
Fix for CmndHDMIAddr function. (#19866)
* Fix for CmndHDMIAddr function.
1. Typical values for XdrvMailbox.payload are 0x1000...0x4000. Hence the
   check should be (value > 0).
2. Don't overwrite the user supplied value with value read from the hardware.

* Correct the condition in CEC_Device::OnReady.
We should check for _on_ready_cb before calling _on_ready_cb.
2023-10-29 17:14:44 +01:00
Jason2866
b034e5bb93
Optimize esptool reset options in boards.json (#19868) 2023-10-29 17:13:31 +01:00
Alexander Nagy
b3b0ffd6b0
Adding display.ini for 1.44 inch 128x128 red SPI display (#19862) 2023-10-29 13:16:32 +01:00
Theo Arends
26f14caee9 Fix S2 core3 compiles 2023-10-28 16:20:44 +02:00
Norbert Richter
b65f32c5f3
Neopool enhancements for HA (#19857)
* Add NeoPool hydrolysis setpoint and max

* Add NeoPool command ``NPFiltrationSpeed``

* Change NeoPool topic ``Power`` to ``Powerunit``

* Add ``SO157`` for NeoPool output sensitive data
2023-10-28 14:07:49 +02:00
Jason2866
75ec9da8a2
Refactoring of storing safeboot bin (#19858)
* Folder for storing safeboot is now configurable
* Platform 2023.10.06
* Platform 2023.10.12
2023-10-28 13:15:31 +02:00
Andreas Ziemer
dfa6f9a771
Update be_lexer.c (#19856)
Added check for unterminated block comments
2023-10-28 11:43:35 +02:00
Theo Arends
18c56f92bb Update change logs 2023-10-27 17:42:38 +02:00
FransOv
0130ce972a
Support of Winsum ZH03B sensor Dust particle sensor in xsns_18_pms5003.ino (#19850)
* Update xsns_18_pms5003.ino

The Winsum ZH03B sensor is quite similar to the Plantower PMS3003 sensor. The main difference is the response in passive mode. With these changes xsns_18_pms5003.ino can support the ZH03B sensor when PMS_MODEL_ZH03X is defined in the configuration file.

* Update xsns_18_pms5003.ino
2023-10-27 17:34:49 +02:00
Dellucifer
f45b55a18b
Rectified Typos (#19841)
* Rectified Typos

* Update settings.json
2023-10-26 18:04:34 +02:00
s-hadinger
d2b370ab44
Fix Berry on old ESP32 (#19830) 2023-10-24 18:01:14 +02:00
Theo Arends
84eaae572c Fix core 3 S2 USB 2023-10-24 17:00:11 +02:00
Theo Arends
5c395ffc06 Fix core 3 S2 USB 2023-10-24 16:41:36 +02:00
Theo Arends
84ced0fcab Add ESP32 core v3 auto TasConsole USB or Serial connection by @staars 2023-10-24 16:32:39 +02:00
Barbudor
1d5f55d374
increase MAX_HUE_DEVICES to 32 (#19820) 2023-10-23 09:36:39 +02:00
s-hadinger
4f9c7ada04
Fix audio Arduino 3 (#19819) 2023-10-22 21:30:36 +02:00
Jason2866
4fb02cd22e
Arduino Core 3.0.0-alpha2 (#19818) 2023-10-22 18:28:39 +02:00
Jason2866
30521027ab
Keep FS intact when over flashing with VSC (#403) (#19816) 2023-10-22 17:10:59 +02: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
6efe2ab514 Add I2C bus2 support to LM75AD temperature sensor 2023-10-21 15:42:32 +02:00
Theo Arends
bec0c27750 Add I2C bus2 support to SI1145/6/7 Ultra violet index and light sensor 2023-10-21 15:31:54 +02:00
Theo Arends
bd90363565 Update changelogs 2023-10-21 14:48:12 +02:00
s-hadinger
3412c17e2d
Add latest Matter changelog 2023-10-20 18:24:39 +02:00
s-hadinger
59be99991c
Matter Light0 now accept a Relay number (#19809) 2023-10-20 18:20:31 +02:00
Theo Arends
c91882daeb Add ADS1115 I2C bus2 support 2023-10-20 17:39:00 +02:00
Theo Arends
7238d857e9 Add SHT3x I2C bus2 support 2023-10-20 14:52:21 +02:00
Theo Arends
f05470bf81 Add HYT I2c bus2 support 2023-10-20 13:35:24 +02:00
Theo Arends
2cabbc68c3 Add bus2 info 2023-10-20 11:51:44 +02:00
Ludovic BOUÉ
6844bb606d
Create Matter_Plugin_9_Virt_Sensor_Occupancy.h (#19786)
* Create Matter_Plugin_9_Virt_Sensor_Occupancy.h

* Create Matter_Plugin_9_Virt_Sensor_Occupancy.be

Implements the behavior for a Virtual Occupancy Sensor

* Update be_matter_module.c

Enable Virt_Sensor_Occupancy

* Create solidified_Matter_Plugin_9_Virt_Sensor_Occupancy.h

* Update Matter_UI.be

Add missing v_occupancy and v_onoff

* Update solidified_Matter_UI.h

* Update be_matter_module.c

* Update be_matter_module.c

* Update Matter_Plugin_9_Virt_Sensor_Occupancy.be

* Delete lib/libesp32/berry_matter/src/solidify/Matter_Plugin_9_Virt_Sensor_Occupancy.h

Remove undeeded file

* Update solidified_Matter_Plugin_9_Virt_Sensor_Occupancy.h

Fix case

* Update solidified_Matter_UI.h

Fix case

* Update be_matter_module.c

Update

* Update Matter_UI.be

remove v_onoff

* Update solidified_Matter_UI.h

update

---------

Co-authored-by: s-hadinger <49731213+s-hadinger@users.noreply.github.com>
2023-10-19 22:55:29 +02:00
Theo Arends
88a3d6cb7e Update changelogs 2023-10-19 18:04:48 +02:00
Norbert Richter
1f8cd6a259
Fix NeoPool filtration mode display (#19801) 2023-10-19 18:01:56 +02:00
Theo Arends
e3253fea8f Add I2C bus2 support to BH1750 2023-10-19 18:01:12 +02:00
Theo Arends
b39adacc41 Fix HTU21 bus number 2023-10-19 17:44:59 +02:00
Theo Arends
49709807c7 Add I2C bus2 support to HTU temperature sensor 2023-10-19 17:37:19 +02:00
Theo Arends
b6811b2f4e Prep ESP32 I2C bus2 support 2023-10-19 16:59:53 +02:00
Theo Arends
70287d90ad Bump v13.2.0.1 2023-10-19 11:45:12 +02:00
stefanbode
d5f506b1e3
reverted back some function and fix frequency storage (#19791)
* optimize disc write delay during shutter movement

changed to dynamic write delay to ensure no disc write on multiple shutter movement with stepper shutters.

* optimize disc write delay

ensure disc write will be postponed until all shutters stopped

* reverted back to simple version

* removed duplicate obsolete compiler options
2023-10-18 23:41:52 +02:00
s-hadinger
385408dcfd
Berry fix bool side effect (#19790) 2023-10-18 20:02:47 +02:00
Christian Baars
26e9d7e49c
deactivate automatic flashsize detection (#19788) 2023-10-18 17:52:51 +02:00
Theo Arends
58324da242 Final fix ;-) (#19763) 2023-10-18 16:19:13 +02:00
Theo Arends
1fa036f176 Fix unsorted DS18Alias (#19763) 2023-10-18 16:12:02 +02:00
Theo Arends
13c6bc91cc Fix empty name if no DSAlias defined (#19763) 2023-10-18 15:15:49 +02:00
stefanbode
2daaa367ff
stepper shutter channel fix (#19784) 2023-10-18 11:29:35 +02:00
Theo Arends
19200ccf6f Update change logs 2023-10-18 09:51:40 +02:00
Christian Baars
17143cea44
remove HomeKit remnants from mi32 legacy driver (#19782) 2023-10-17 21:00:46 +02:00
sfromis
ab420b6cc1
DS18x20_USE_ID_AS_NAME in my_user_config.h (#19777)
Add mention of #define DS18x20_USE_ID_AS_NAME
2023-10-17 11:00:39 +02:00
Christian Baars
b98ad59d11
Delete xsns_62_esp32_mi_homekit.c (#19778) 2023-10-17 11:00:02 +02:00
s-hadinger
82858616f6
Zigbee fix timezone when device reads LocalTime attribute (#19772) 2023-10-17 09:02:14 +02:00
Barbudor
8e9299ec97
fix mis-order (#19769)
* fix mis-order

* fix mis-order on esp32 too
2023-10-16 21:47:31 +02:00
Theo Arends
d05d76b481 Update CHANGELOG.md 2023-10-16 16:55:22 +02:00
Jason2866
3e13fcee9e
Pio: add all libs to ignore, not needed for compiling of safeboot env (#19765)
* Fix ignore safeboot flags

* add more libs to ignore
2023-10-16 16:43:40 +02:00
Theo Arends
b8988d91a0 template fix 2023-10-16 16:42:09 +02:00
Theo Arends
83584294a4 Update templates for v13.2 2023-10-16 16:40:23 +02:00
Theo Arends
440470b65e Update changelogs 2023-10-16 16:22:46 +02:00
bovirus
5a9da83997
Update Italian language (#19754) 2023-10-16 16:07:37 +02:00
s-hadinger
367768b00e
Re-enable features for Arduino 3 (#19761) 2023-10-16 12:44:05 +02:00
Norbert
a04995a3f4
Update xdrv_63_modbus_bridge.ino, brackets not needed. (#19759) 2023-10-16 09:42:55 +02:00
JeroenSt
91ba05ac3b
ModbusBridge write memleak fix (19733) (#19758)
Co-authored-by: JeroenSt <nospam@nospam.org>
2023-10-16 08:26:26 +02:00
s-hadinger
8467b41290
Teleinfo use Apparent Power as Active Power approximation (#19756) 2023-10-16 08:20:07 +02:00
s-hadinger
d3784a26ab
Audio Core3 compilation for ESP32C3 (#19755) 2023-10-15 22:46:01 +02:00
stefanbode
124fbf8dcb
fix shutterfrequency change on mutiple channels (#19737)
* fix shutterfrequency change on mutiple channels

* LEDC channel management for stepper shutter

LEDC channels dynamically assigned to ensure up to 16 shutters can be defined. Number of simultaneous moving shutters is limited by number of LEDC channels.

* bugfix  >=
2023-10-15 18:40:26 +02:00
Jason2866
56314e5423
Update de_DE.h 2023-10-15 14:51:11 +02:00
Theo Arends
433afbb99f update changelogs 2023-10-15 14:21:32 +02:00
Saentist
715b64dc28
RU Translation fix (#19746) 2023-10-15 11:57:53 +02:00
Eduardo Spremolla
b63a061aeb
Update xsns_02_analog.ino for calibrated values on ESP32 (#19732)
ESP32  ADC has variables errors, but calibrations values are put in eFuses at factory test.
analogReadMilliVolts() from api correct the ADC reading with tata values.
Since now the value are mV and not ADC numbers, the fast solution is to revert it back to ADC numbers:
divide by Vcc  => ANALOG_V33*1000  and multiply by ANALOG_RANGE
Other way is to modify all sensor cases to account for the different unit.
2023-10-15 11:57:13 +02:00
s-hadinger
16307bc4b8
More audio refactoring for core3 (#19749) 2023-10-15 11:22:20 +02:00
Christian Baars
baef3eed91
Delete lib/libesp32_div/ESP32-HomeKit directory (#19743) 2023-10-14 20:36:30 +02:00
Jason2866
2b398d309e
pio proper lib_ignore fix (#19742) 2023-10-14 20:30:48 +02:00
Jason2866
2d1ee3903a
Update platformio_tasmota_env32.ini 2023-10-14 18:19:02 +02:00
Jason2866
dbca94b980
disable not compatible libs (#19740) 2023-10-14 18:08:02 +02:00
Theo Arends
7e6267313b Update changelogs 2023-10-14 16:05:20 +02:00
Jason2866
50b4ddc8f8
rm deprecated MI env (#19738) 2023-10-14 15:01:09 +02:00
bovirus
67deceeba8
Update Italian language (#19730) 2023-10-13 17:50:06 +02:00
Jason2866
2950de0016
rm WifiClientSecure 2023-10-13 16:57:01 +02:00
Jason2866
17087d1b08
Platform 2023.10.04 (#19729) 2023-10-13 15:49:47 +02:00
Theo Arends
0984c01828 Update changelogs 2023-10-13 14:50:51 +02:00
Theo Arends
5cee525d02 Add Active Power Total
Add Active Power Total if multiple phases AND both positive and negative values (#19141)
2023-10-13 13:56:04 +02:00
chefpro
32cbd330aa
Add Rescan and RetryRead to onewire scan for bulletproove onewire (#19700)
Co-authored-by: Peter Rustler <peter@rustlerit.de>
2023-10-13 11:29:19 +02:00
nusse
f245821828
HC8 sensor support (#19714)
* HC8 sensor support

* HC8: fix json

* HC8: missing languages

* HC8: move macros to proper locations

---------

Co-authored-by: Daniel Maier <daniel.maier@tu-berlin.de>
2023-10-13 11:28:41 +02:00
Jason2866
a3dcbc6661
Remove WiFiClientSecure (#19725)
* Update HttpClientLight.cpp
* Update HttpClientLight.h
* Update Powerwall.h
* Update xdrv_10_scripter.ino
2023-10-12 20:10:16 +02:00
bovirus
4eefed79ac
Update Italian language (#19712) 2023-10-11 17:12:25 +02:00
stefanbode
dade00bf59
Fix shutterfrequency esp32 (#19717) 2023-10-11 17:12:07 +02:00
Jason2866
b5d1109163
rm obsolete partition schemes (#19713)
* rm obdolete partition schemes

* fix tasmota32-zbbrdgpro compile

* rm overseen partition scheme

* Special scheme needed for zbbrdgpro
2023-10-10 12:55:36 +02:00
Paul Blacknell
663e6ab21b
Update xsns_110_max17043.ino (#19709) 2023-10-09 16:52:56 +02:00
Paul Blacknell
f41e525f5a
fix: account for MAX17043 alert status on start (#19708) 2023-10-09 16:14:41 +02:00
Theo Arends
39e0cf574d Refactor AP1 information 2023-10-09 11:33:24 +02:00
tyler.li
a1cce95c08
MAX31855/MAX6675 sensors driver support up to 6 (#19704)
* Support multiple MAX31855/MAX6675 sensor up to 6

* code format

* revert tasmota_template_legacy.h

* revert original variable names

* revert original variable names

---------

Co-authored-by: arendst <mhtarends@gmail.com>
Co-authored-by: litao07 <litao07@kuaishou.com>
2023-10-09 10:44:24 +02:00
SteWers
6bec09b23f
[WebUI] WiFi Information (#19705)
* [WebUI] WiFi Information

Structured and more infos on WebUI Information page

* [WebUI] WiFi Info multiple lines

Divide one long line into multiple short lines
2023-10-09 08:39:12 +02:00
chefpro
9fbb4a8b0b
Fix modbus receive handling for float types (#19697)
Co-authored-by: Peter Rustler <peter@rustlerit.de>
2023-10-08 13:14:53 +02:00
s-hadinger
c8679df3ff
Remove warning when compiling LVGL with Arduino3 (#19699) 2023-10-07 23:02:55 +02:00
s-hadinger
8c6788c6bc
Audio exclusive mode (#19698) 2023-10-07 22:11:37 +02:00
Christian Baars
6bde92eef8
use partiton table from flash for download FS (#19694) 2023-10-07 15:18:37 +02:00
gemu
cad9d5fdd8
udisplay suport for GC3503V (#19682)
* suport for GC3503V

* disable debug
2023-10-07 07:48:25 +02:00
s-hadinger
906a12f21d
Berry add unit test for #19655 (#19692) 2023-10-06 22:46:02 +02:00
s-hadinger
ab45702519
Fix Berry solidification (#19691) 2023-10-06 22:42:38 +02:00
Jason2866
c85e63e9e6
Core 3.0.0-alpha1 (#19689) 2023-10-06 22:09:07 +02:00
s-hadinger
23a3c33968
Berry fix esp-idf 5 compilation 2023-10-06 21:17:49 +02:00
s-hadinger
72b2767a74
Fix compilation with Arduino 3 alpha 1 (#19690) 2023-10-06 21:00:42 +02:00
s-hadinger
bf9c5b86c6
Remove warnings when compiling Audio with Arduino 3 (#19687) 2023-10-06 19:47:10 +02:00
Theo Arends
74bcbd898e Fix compilation when webserver disabled 2023-10-06 12:17:37 +02:00
Theo Arends
21ac018d70 Fix compile error 2023-10-06 11:23:58 +02:00
Barbudor
bc9d5ecdcf
update builds for IF and expression (#19678) 2023-10-06 10:54:36 +02:00
Matteo Albinola
2302d38eb0
Windmeter: add measure interval setting (#19542)
* Add new setting windmeter_measure_intvl and update speed computation

* Ensure windmeter_measure_intvl is not below 1

* Keep same settings order in response messages and add better comments
2023-10-06 10:53:38 +02:00
s-hadinger
c5c78f45d0
Fix audio_slm.be 2023-10-06 08:11:29 +02:00
s-hadinger
11aad19800
Audio support for Microphone + Berry (#19677) 2023-10-05 21:47:07 +02:00
s-hadinger
69a3573f7e Solidified Code updated 2023-10-05 15:55:10 +00:00
s-hadinger
3f91d5b513
Matter fix missing shadow_onoff 2023-10-05 17:53:31 +02:00
Theo Arends
950c6d7fcc Update changelogs 2023-10-05 15:47:19 +02:00
Jason2866
9e142c1d3c
Tasmota Core 2.0.14 (#19667)
* Tasmota Core 2.0.14
2023-10-04 19:12:24 +02:00
gneiss15
32d840d2b0
See Issue #19664 (#19665)
Signed-off-by: Günter Neiß <gneiss@web.de>
2023-10-04 19:06:44 +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
s-hadinger
473a8ee999
Audio refactoring, filters and I2SConfig (#19662) 2023-10-03 22:39:02 +02:00
s-hadinger
e32c39f21d
Fix access to version from Berry 2023-10-03 19:21:47 +02:00
s-hadinger
94842bc0d1
Support for grow on mount when resizing FS to max (#19659) 2023-10-03 19:14:45 +02:00
Christian Baars
58d43333f5
conform to API changes (#19654) 2023-10-03 16:20:48 +02:00
s-hadinger
ee7e3cab15 Solidified Code updated 2023-10-03 13:23:06 +00:00
s-hadinger
288fe3b282
Berry fix compilation with integer index (#19655) 2023-10-03 15:21:48 +02:00
Theo Arends
10616cade6 Update changelogs 2023-10-03 14:45:55 +02:00
Jason2866
9ee3a72371
Support feature lfs grow in Arduino Core (#19650) 2023-10-03 12:02:54 +02:00
s-hadinger
77cba731b9
Partition_Wizard compatible with grow on mount (#19645) 2023-10-02 23:32:55 +02:00
s-hadinger
2ad6353a2d
Matter improve error message for MtrUpdate (#19644) 2023-10-02 22:00:55 +02:00
Jason2866
86deee4e85
fix Arduino core bug wifi client flush (#19642) 2023-10-02 20:05:13 +02:00
s-hadinger
795a194d65
Audio prepare for Arduino3 (#19637) 2023-10-02 09:18:53 +02:00
Jason2866
0be4613cf9
LittleFS core updated to version with grow (#19635) 2023-10-01 17:24:59 +02:00
s-hadinger
2e0c958b97 Solidified Code updated 2023-10-01 10:25:26 +00:00
Ludovic BOUÉ
ead677d148
Add missing UPDATE_COMMANDS for Contact sensor (#19632) 2023-10-01 12:23:57 +02:00
Ludovic BOUÉ
f9f3630fca
Update Matter_Plugin_3_Sensor_Occupancy.be (#19631)
Add missing UPDATE_COMMANDS for Occupancy sensor
2023-10-01 12:23:29 +02:00
s-hadinger
d1c643a591
Matter tentative fix for SmartThings (#19620) 2023-09-30 14:15:50 +02:00
Christian Baars
f0b7984466
MI32 legacy: add mi32name, small fixes (#19619)
* add mi32name, small fixes

* remove unused variable
2023-09-29 17:47:17 +02:00
stefanbode
540acdc638
smaller fixes (#19621)
* position report during moverment

during moving the teleperiod will now report the actual position

* fix error on inverted shutter
2023-09-29 17:46:41 +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
Jason2866
d79ef1bb2a
rm outdated comment about ArduinoOTA 2023-09-28 21:55:15 +02:00
gemu
3bcdf9487d
fix compile error with new email lib (#19608) 2023-09-27 18:36:38 +02:00
stefanbode
955d2d86dd
fix JSON Bug (#19607) 2023-09-27 16:05:32 +02:00
s-hadinger
31e56903c5
Audio refactoring and fixes (#19594) 2023-09-25 23:31:32 +02:00
stefanbode
0f6b59f67e
fix #16560 (#19589)
shutter reacted on QUAD press with HOLD event. Fixed
2023-09-25 09:25:45 +02:00
s-hadinger
74900edc96
Audio change of configuration file format (#19585) 2023-09-24 18:59:43 +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
Barbudor
0d7c2dee72
support https URL (#19582) 2023-09-24 15:39:20 +02:00
Jason2866
9ff65d76cc
Shell needed for unpack LittleFS cmd 2023-09-23 13:24:37 +02:00
s-hadinger
81d287a3b0
Berry fix audio MP3 (#19578) 2023-09-23 12:23:51 +02:00
s-hadinger
375c825d32
More cleaning of audio for ESP32 (#19577) 2023-09-23 11:25:58 +02:00
s-hadinger
63fd3e753a Solidified Code updated 2023-09-22 15:33:45 +00:00
s-hadinger
06da24df83
Update berry scripts for Shelly (#19535) 2023-09-22 17:32:34 +02:00
Andrew Klaus
3061b06f3b
Adding SGP40 support to SGP4X driver (#19560) 2023-09-22 10:15:04 +02:00
stefanbode
7a75eb7021
Improvement in shuttersetup (#19565)
* Improvement in shuttersetup

- reduce call of energy to 10x a sec.
- stop detection more rigid to avoid wrong messages
- more accurate calculation of duration

* fix energy hickup on autosetup
2023-09-22 08:38:01 +02:00
Theo Arends
257112e2a7 Update changelogs 2023-09-21 10:15:36 +02:00
s-hadinger
761ddaa57b
Berry counter 0-base (#19561) 2023-09-21 09:42:28 +02:00
s-hadinger
7de25acac0
Minor refactoring of audio code for Arduino3 (#19559) 2023-09-21 09:00:28 +02:00
s-hadinger
fc513af351
Berry counter (#19558)
* Berry read and write Counters

* rename counter
2023-09-20 22:28:40 +02:00
s-hadinger
f8b5a38dc9
ESP32 LVGL library from v8.3.9 to v8.3.10 (no functional change) (#19557)
* ESP32 LVGL library from v8.3.9 to v8.3.10 (no functional change)

* Update mapping
2023-09-20 21:21:08 +02:00
Theo Arends
422c8f2e57 Update changelogs 2023-09-19 16:14:03 +02:00
Theo Arends
ffd09da89a Fix DS18B20 for ESP32 with over 33 gpios 2023-09-19 15:20:10 +02:00
s-hadinger
ddeb380a19
I2S improvements to MP3 play (#19547) 2023-09-18 22:49:49 +02:00
Christian Baars
aa4464389f
fix codec compilation on IDF5.1 (#19546) 2023-09-18 22:04:56 +02:00
Christian Baars
d6a9eaf8aa
Preps for IDF5.1: microphone/input for i2s audio (#19544) 2023-09-18 20:39:15 +02:00
Theo Arends
b2da74b57f Update RELEASENOTES.md 2023-09-18 15:57:34 +02:00
s-hadinger
2d0339e8bf
Fix IR compilation for ESP32 with Arduino3 (#19537) 2023-09-17 21:12:36 +02:00
Jason2866
ed33d61ab7
Tasmota Core 2.0.13 (#395) (#19533)
Tasmota Core 2.0.13
2023-09-16 21:10:08 +02:00
s-hadinger
141a38191a
Matter add virtual sensors (#19530) 2023-09-16 10:55:05 +02:00
Paul Blacknell
d2aee662fd
fix: add command data to cmnd response (#19524) 2023-09-15 22:16:27 +02:00
Theo Arends
c5100044d2 Update changelogs 2023-09-15 17:06:54 +02:00
s-hadinger
d6f0b75959 Solidified Code updated 2023-09-14 21:44:06 +00:00
s-hadinger
04e0d23aba
Fix typo 2023-09-14 23:43:05 +02:00
s-hadinger
e5916337ef
Matter support for Virtual Devices controllable via Rules or Berry (#19520) 2023-09-14 22:53:12 +02:00
Theo Arends
d595e64600 Bump version v13.1.0.3 2023-09-14 15:49:31 +02:00
Theo Arends
360509a35a Update changelogs 2023-09-14 15:44:48 +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
s-hadinger
00bd97fdc7
Matter virtual lights (#19511) 2023-09-13 22:49:46 +02:00
s-hadinger
156f1988b2
ESP32 LVGL library from v8.3.8 to v8.3.9 (no functional change) (#19510) 2023-09-13 22:05:00 +02:00
Theo Arends
860e12b88a Add frequency to BL0942 2023-09-13 15:49:14 +02:00
Theo Arends
f9bfa1c41b Merge branch 'development' of https://github.com/arendst/Tasmota into development 2023-09-13 15:09:50 +02:00
Theo Arends
fffd68ad9c Fix BL0942 higher baudrates 2023-09-13 15:09:30 +02:00
blakadder
8246410c8a
fix compile errors on exotic windows codepages (#19508) 2023-09-13 15:06:01 +02:00
s-hadinger
6d0b2f6bc3
Fix invalid character 2023-09-13 13:47:30 +02:00
s-hadinger
34cea00ae2
Fix hidden invalid character 2023-09-13 13:45:53 +02:00
gemu
cb4671ee88
fix hardware serial port swap on ESP8266 (#19505) 2023-09-13 09:09:01 +02:00
Theo Arends
088ac1815b Add BL0942 baudrate selection 2023-09-12 21:48:13 +02:00
Theo Arends
ee43b43add Fix ESP8266 compilation (#19485) 2023-09-12 15:01:30 +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
Paul Blacknell
728b1b2d36
Update xdrv_29_deepsleep.ino (#19492) 2023-09-10 22:35:54 +02:00
Paul Blacknell
b117164993
Improved parsing of accumulation data from HRG-15 rain sensor (#19485)
* fix: more robust parsing of accumulation data

* fix: further parsing checks
2023-09-10 22:33:54 +02:00
s-hadinger
059d1197c5
Matter consolidate attributes per cluster (#19493) 2023-09-10 22:11:08 +02:00
Jason2866
ad00d9ec5b
Tasmota ESP32 core 2.0.12 (#19463) 2023-09-10 13:41:25 +02:00
Theo Arends
0e6a012499 Fix possible MQTT disconnect exception 2023-09-09 23:30:55 +02:00
Theo Arends
f9fd813842 Fix core 2.0.12 exception 2023-09-09 23:04:08 +02:00
s-hadinger
4c6ff44e42
Zigbee fix warnings with Arduino3 (#19486) 2023-09-09 15:27:16 +02:00
s-hadinger
f1bd9446d5
Matter events phase 1 (#19484) 2023-09-09 14:50:40 +02:00
Paul Blacknell
4cc81f0dbc
Don't reset the MAX17043 battery fuel gauge after waking from Deep Sleep (#19412)
* fix: don't reset the device when coming out of deep sleep

* fix: move debug log message to inside the device validation

* Update xsns_110_max17043.ino

* add: update global battery percentage when max17043 reports new value
2023-09-09 09:48:30 +02:00
s-hadinger
7726f1eef4
Fix typo in berry mqtt (#19477) 2023-09-07 20:44:30 +02:00
s-hadinger
d9acd2adb0
Fix compilation of IRRemoteESP8266 for core3 (#19473) 2023-09-06 21:02:46 +02:00
s-hadinger
4100682297
Fix TLS by removing redundant BearSSL code from libmail (#19472) 2023-09-06 20:12:59 +02:00
stefanbode
f7775b5194
cosmetic changes only (#19468)
- reorder functions alphabetically
- reformat equations for better reading following guidelines
- adding comment for understanding
2023-09-06 16:52:40 +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
Theo Arends
1c6db35d96 Update changelogs 2023-09-06 09:50:29 +02:00
stefanbode
3cb63bcb67
Enable multipress events on buttons (#19465) 2023-09-06 09:37:29 +02:00
s-hadinger
3cd7950d3b
Enable ESP Mail Client in core 30 (#19461) 2023-09-05 12:10:58 +02:00
Christian Baars
a5835450e9
fix shine for gcc12 (#19458) 2023-09-05 10:53:51 +02:00
s-hadinger
c2f8821b2f
Sendmail upgraded to ESP-Mail-Client v3.4.9 from v1.2.0, using BearSSL instead of MbedTLS (#19460)
* `Sendmail` upgraded to ESP-Mail-Client v3.4.9 from v1.2.0, using BearSSL instead of MbedTLS

* Fix compilation on ESP8266

* Fix compilation

* fix compilation
2023-09-04 23:00:37 +02:00
stefanbode
1ea12583d1
Fix migration error to filesystem settings (#19454) 2023-09-04 21:36:45 +02:00
Jason2866
434da4a62a
enable IPv6 and Matter (#19456) 2023-09-04 17:11:53 +02:00
s-hadinger
c6938e2048
Reduce IRAM consumption of HDMI CEC to 1453 bytes (#19452)
* Reduce IRAM consumption of HDMI CEC to 1453 bytes

* Add changelog
2023-09-03 23:15:33 +02:00
s-hadinger
bb4d99114a
Berry move mapping from C++ to C (#19450) 2023-09-03 22:50:03 +02:00
s-hadinger
fe0423c6cd
Berry cleaned udp class (#19449) 2023-09-03 21:49:35 +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
4cb8b987a4
Berry move solidified code to C (#19446) 2023-09-03 18:30:22 +02:00
s-hadinger
8a514a0758
Berry make mdns compatible with non-IPv6 builds (#19444) 2023-09-03 16:18:38 +02:00
bovirus
262c8b421b
Update italian language (#19442) 2023-09-03 12:23:48 +02:00
Christian Baars
4f6afbf849
all output parts for I2S and IDF5.1 (#19440) 2023-09-02 22:07:20 +02:00
s-hadinger
f4b3574ed4
Berry fast_loop is now called every 5ms whatever the Sleep value (#19436) 2023-09-02 11:10:50 +02:00
s-hadinger
f7c4c16a9c
Support for HDMI CEC protocol (#19434) 2023-09-01 21:46:18 +02:00
Theo Arends
48cf04db3a Fixed PCF8574 mode 1
- Fixed PCF8574 mode 1 with base relays exception 3/28 regression from v12.4.0.4 (#19408)
- Bump version v13.1.0.2
2023-08-31 15:15: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
Jason2866
2872e1b379
Build C2/C6 safeboot firmwares in GH Actions (#19424) 2023-08-30 18:23:00 +02:00
Jason2866
1e57419e71
Revert "build safeboot bin for C2/C6 (#19422)" (#19423)
This reverts commit f840f512851f4c5c761e7f5e0b46b396e7482c6d.
2023-08-30 16:40:18 +02:00
Jason2866
f840f51285
build safeboot bin for C2/C6 (#19422)
* build safeboot bin for C2/C6
* add C2/C6 safeboot to CI
* Enable core3 env settings before Pio starts
2023-08-30 16:35:01 +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
Christian Baars
8e8e019e0f
expected changes for arduino30 (#19421) 2023-08-30 14:17:21 +02:00
Norbert Richter
39083b6add
Fix xdrv_122_file_settings_demo buffer overflow (#19405) 2023-08-29 19:53:40 +02:00
Theo Arends
a4cfc414be Final change to GUI twilight 2023-08-29 19:49:20 +02:00
Jason2866
34a26fea22
More Arduino 3.0 env 2023-08-29 19:15:08 +02:00
Jason2866
4ebcd89b4f
enable more driver for Arduino 3.0 2023-08-29 19:09:06 +02:00
Barbudor
5395b8c4bd
fix and improve pzem_dc (#19402) 2023-08-27 22:49:24 +02:00
Theo Arends
23d6c0f5d5 Add twilight info to GUI (#19334) 2023-08-27 17:24:33 +02:00
SteWers
dd8b85282a
EnergyMargins - always send MQTT telemetry message (#19397) 2023-08-27 10:53:04 +02:00
Theo Arends
3ed1bead44 Update decode-status 2023-08-26 16:20:46 +02:00
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
ab94b16d8d
Fix IRHVAC crash v2 2023-08-26 15:04:08 +02:00
Theo Arends
d4c1315248 Allow ADE7880 user defines (#19391) 2023-08-26 14:50:33 +02:00
Theo Arends
ea6cacd08c Update changelogs 2023-08-26 11:58:40 +02:00
s-hadinger
4ad3070558
Fix crash in IRHVAC (#19389) 2023-08-26 10:17:53 +02:00
Theo Arends
7f24d2027f Fix rotary edge cases (#19164) 2023-08-25 17:06:27 +02:00
Theo Arends
16b1c5577a Update change logs 2023-08-25 13:25:04 +02:00
xsp1989
9bb9ea0941
translate label (#19385) 2023-08-25 13:17:31 +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
Christian Baars
343618411c
Fix crash of uDisplay on ESP32S3 with IDF5.1 (#19383)
* fix compile of uDisplay with IDF5.x on ESP32S3

* fix crash with uDisplay on S3 with IDF5.1
2023-08-25 12:11:23 +02:00
Theo Arends
b1fba92e87 Fix idf chip revision 2023-08-25 10:55:20 +02:00
Charles
87735fb232
Teleinfo power fix (#19381)
* fix power #19244

* cosmetic display
2023-08-25 09:38:36 +02:00
Theo Arends
d340c91cd7 Revert "Fix idf chip revision"
This reverts commit e5cb3675814e1880e423c120066a2fa3026b3994.
2023-08-24 20:52:36 +02:00
Theo Arends
e5cb367581 Fix idf chip revision 2023-08-24 17:48:41 +02:00
Christian Baars
c4e57e49c2
fix compile of uDisplay with IDF5.x on ESP32S3 (#19378) 2023-08-24 16:18:51 +02:00
Jason2866
312bbbb7b6
Arduino.3.0: enable Audio libs compile by disabling incompatible I2S driver (#19377)
* i2s off for Arduino 3.0
2023-08-24 15:31:41 +02:00
Theo Arends
9b6efc674d Fix compilation 2023-08-24 15:17:04 +02:00
Christian Baars
75e4a4654c
do not use NimBLE-Arduino for Mi32-legacy (#19375) 2023-08-24 13:20:57 +02:00
stefanbode
d1e85635e3
fix inverted shutter inconsistencies (#19374)
* inverted shutter fix on overflow

* fix inverted_shutter > 9

fix on inverted shutter at esp32.
fix tilt behavior on inverted shutter

* fix tilt behavior on inverted shutter
2023-08-24 12:39:42 +02:00
Christian Baars
65a1a4feeb
Neopixel add SPI driver for C2 and some minor updates (#19372) 2023-08-24 10:34:17 +02:00
Jason2866
8861e779e3
Platform ESP32 2023.08.01 (#19371) 2023-08-23 16:58:17 +02:00
Christian Baars
f4585a2718
prepare transition to esp-nimble-cpp (#19370) 2023-08-23 16:33:26 +02:00
Theo Arends
0d80e639ef Fix Core 3 compilation 2023-08-23 15:29:42 +02:00
Theo Arends
3c725a13d6 Fix Core 3 compilation 2023-08-23 15:10:14 +02:00
Theo Arends
db6193dc80 Phase 2 support C2/C6 2023-08-23 14:52:58 +02:00
Jason2866
fe6a0fd7b0
ignore esp-nimble-cpp (#19369)
in core 2.0.11
2023-08-23 13:35:35 +02:00
Theo Arends
701d33f645 Phase 2 support C2/C6 2023-08-23 13:02:13 +02:00
stefanbode
ca14dc5507
Shutter ESP32 fixes (#19362)
* fix esp32 shutter

* fix shutterinvert+shutterbutton
2023-08-22 09:21:30 +02:00
btsimonh
c9b5e5ab1f
Add new webcam driver over latest dev. (#19280)
* Add new webcam driver over latest dev. To use the old one, define USE_WEBCAM_LAGACY

* enable build without RTSP.
check pin_pwdn before using it n 0x105!!!

* more fixes around pwdn.  Make wcresolution -1 set the resoltuion setting to 'disbale cam' value (15).

* fix task stop - wait for debug to leave-> prevents guru. pin task to core 0.

* split motion from other code.  Add USE_WEBCAM_MOTION to control inclusion of motion code (big hit). Change from using USE_WEBCAM_LEGACY to USE_WEBCAM_V2

* logging minimisation - behind WEBCAM_DEV_DEBUG
2023-08-22 08:24:05 +02:00
Theo Arends
dc68232f42 Phase 1 support C2/C6 2023-08-21 17:32:54 +02:00
Theo Arends
dd877972be Phase 1 support C2/C6 2023-08-21 17:10:06 +02:00
Theo Arends
37a527696a Phase 1 support C2/C6 2023-08-21 16:18:21 +02:00
Theo Arends
0c3b559630 Phase 1 support C2/C6 2023-08-21 16:00:20 +02:00
Theo Arends
eccfbc334c Fix compile warning 2023-08-20 18:27:34 +02:00
Theo Arends
0acd5335d5 Remove debug messages (#19365) 2023-08-20 17:49:21 +02:00
Jason2866
e4860efcdb
add platformio_tasmota_core3_env.ini to gitignore 2023-08-19 14:51:47 +02:00
Theo Arends
5b3b2a7a62 Changed display invert setting
Changed display invert setting after tasmota start in uDisplay driver (#19337)
2023-08-18 11:34:01 +02:00
Theo Arends
e4eb919c93 Update changelogs 2023-08-18 11:22:06 +02:00
stefanbode
7927c989c4
fix shutterinvert (#19341)
* fix shutterinvert

* fix shutterinvert
2023-08-18 09:02:17 +02:00
Theo Arends
2eaa0fcb67 Update switch comments 2023-08-17 23:28:27 +02:00
Theo Arends
b8804cf2a8 Add variables to rules
Add variables ``%power<1..28>%`` and  ``%switch<1..28>%`` to rules (#19331)
2023-08-17 15:34:13 +02:00
Paul Blacknell
aa097e9034
add: shutdown command for PID controller (#19318) 2023-08-16 11:17:54 +02:00
Jason2866
53819a1465
Update platformio_tasmota32.ini (#19313) 2023-08-15 11:16:05 +02:00
Theo Arends
d9530f32a6 Sync dev with release v13.1 2023-08-15 10:37:54 +02:00
Paul Blacknell
be88e701d9
Add commands to allow setting of timeprop parameters (#19310)
* add: commands to set timeprop settings

* Update my_user_config.h

* fix: properly generated json response to commands
2023-08-15 09:43:55 +02:00
Martin
fd46fb5aca
Creates a place to put the customer boards (#19309) 2023-08-14 22:41:51 +02:00
Theo Arends
2710693453 Update changelogs 2023-08-14 10:15:16 +02:00
paulusbrand
877d4250bb
Removes software based no load threshold. (#19302)
Lowers ADE7953 builtin no load detection threshold to be able to measure 5 watt power levels.
2023-08-14 10:08:16 +02:00
Christian Baars
7d18dd0e9e
fix OneWire for IDF5.1 and C2/C6 (#19303)
* fix OneWire for IDF5.1 and C2/C6

* Use Onewire in arduino30 builds

* use SOC specific defines for C2,C3 and C6
2023-08-14 09:34:48 +02:00
SteWers
f40f4a1947
[DS18x20] Enhance use of aliases (#19026)
* [DS18x20] Enhance use of aliases

`defineDS18x20_USE_ID_AS_NAME`:
Always show part of the address, even for one sensor
`#define DS18x20_USE_ID_ALIAS`:
The command `DS18Alias` can now be use with alphanumeric aliases, which replace the sensor name

* [DS18x20] change to calloc()
2023-08-12 14:57:58 +02:00
Theo Arends
3417d42669 Update changelogs 2023-08-12 14:18:56 +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
Christian Baars
314af22ae3
avoid unnecessary compiling of specific libraries in lib32_div for most builds (#19293) 2023-08-10 16:23:32 +02:00
Дилян Палаузов
f9f5d5d55c
Typo architceture → architecture (#19288) 2023-08-10 16:22:44 +02:00
Paul Blacknell
9eb184c30e
Improvements to PID controller driver (#19285)
* 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

* add:  display PID status and key info on web output

* fix: remove extraneous comments that included unused code fragments

* add: local sensor handling improvements

add: define a local sensor name
add: define the local sensor measurement parameter
add: limit sensor not seen error message to every 60 seconds to avoid flooding the logs
add: include interval since which sensor data was last updated
fix: properly update the maximum interval time so missing sensor data is properly alerted

* Update xdrv_49_pid.ino
2023-08-10 16:20: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
Christian Baars
d85557711d
use common safeboot flags (#19282) 2023-08-09 19:20:19 +02:00
Christian Baars
bfe0857094
add section safeboot_flags in platform_tasmota32.ini (#19281)
This will make it easier to ignore a bunch of libraries in order to speed up builds without polluting the ENV sections too much.

Usage:
[env:my_safeboot_env]
lib_ignore              = ${safeboot_flags.lib_ignore}
2023-08-09 14:02:21 +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
Christian Baars
76aa6747a5
more idf5.1 preps: Berry SPI (#19273) 2023-08-06 21:10:36 +02:00
Jason2866
7488ed03f0
Tasmota based on Arduino 3.0.0 (#19270) 2023-08-06 13:44:28 +02:00
s-hadinger
0b3d6fd146
Prepare for Arduino v3 / esp-idf v5 2nd batch (#19265) 2023-08-05 20:34:24 +02:00
Theo Arends
e52c6105c6 Bump version to v13.0.0.4 2023-08-05 15:41:12 +02:00
s-hadinger
5c8c7cdfca
Prepare for Arduino v3 / esp-idf v5 (#19264) 2023-08-05 15:11:10 +02:00
usr44
ab9a519d32
Update ru_RU.h (#19214) 2023-08-05 14:52:25 +02:00
stefanbode
959d105413
Change shutterbutton hold behavior with grouptopic (#19263)
* skip stop on hold if grouptopic

If shutterbutton is defined with a grouptopic send on HOLD, there is no stop on releasing the button. All shutters will move to defined position

* do not stop on hold release if group submitt

If mqtt broadcast is defined on hold then release the hold button will not anymore stop the local shutter. All shutter will move to defined position
2023-08-05 14:51:56 +02:00
Theo Arends
7c3c3855c4 Fix console Firefox layout 2023-08-05 12:35:03 +02:00
Theo Arends
fc798540b7 Fix console min height 2023-08-05 11:56:06 +02:00
s-hadinger
70ced65aaf
Fix compilation when IPv6 is not supported (#19260) 2023-08-05 10:17:56 +02:00
s-hadinger
362326f004
Zigbee Berry minor fix and cleaning (#19257)
* Zigbee Berry minor fix and cleaning

* Fix compilation
2023-08-05 09:50:39 +02:00
Christian Baars
732e4106b8
add wifitest3 (#19259) 2023-08-04 20:17:36 +02:00
Theo Arends
e2c79b45e4 Save some more code bytes 2023-08-04 17:24:05 +02:00
Theo Arends
7736ba8af1 Change console height
Change console height from default 318 pixels to viewport (#19241)
2023-08-04 16:11:58 +02:00
Theo Arends
290f37abb9 Update changelogs 2023-08-04 09:26:23 +02:00
s-hadinger
1587bf5ba7
Matter fix auto-configuration Relay indices (#19255) 2023-08-04 09:13:20 +02:00
s-hadinger
b6129f2ab7
Matter support for large atribute responses (#19252)
Support for responses (arrays) that do not fit in a single UDP packer
Do not remove children fabrics
2023-08-03 18:28:25 +02:00
Theo Arends
39643611d4 Update changelogs 2023-08-03 12:12:55 +02:00
stefanbode
6572f0ed39
Fixing SHUTTERINVERT issues (#19243)
* fix wrong inverted shutter

* fix inverted shutter for esp32
2023-08-03 11:55:20 +02:00
Vincent de Groot
5e591ef7db
Integrate MAX17043 driver mechanisms in xsns_110 (#19219) 2023-08-03 11:54:41 +02:00
Theo Arends
57fb19f259 Update changelogs 2023-08-03 11:45:36 +02:00
s-hadinger
76662ab236
Matter support for fabric_filtered request (for Google compatibility) (#19249) 2023-08-02 23:00:26 +02:00
s-hadinger
df50a56c25
Fade would fail when the difference between start and target would be too small (#19246) 2023-08-02 17:48:12 +02:00
s-hadinger
58fce33312
Matter increased polling frequency for local switches/occupancy (#19242) 2023-08-02 09:02:08 +02:00
Jason2866
222b47627f
fix 4MB PIO script upload regression 2023-07-31 17:43:47 +02:00
s-hadinger
80617e96e1
Berry bytes get and set work for 3 bytes values (#19225)
* Berry bytes `get` and `set` work for 3 bytes values

* Fix error message
2023-07-31 13:57:07 +02:00
s-hadinger
148c1a2f74
Fix fabric saving exception (#19224) 2023-07-30 19:09:27 +02:00
stefanbode
355b1e3b74
unsigned overflow fixed (#19221)
fixed overflow on negative value with dimmer 100%
2023-07-30 15:01:21 +02:00
s-hadinger
2c15cfe4da
Reduced log level for TeleInfo (#19216) 2023-07-29 23:09:03 +02:00
Jason2866
2e9cd6a57d
Auto detect flash size and adjust FS (#349) (#19215) 2023-07-29 19:48:43 +02:00
msedv
fb45e73384
Four files which used #ifdef EPS8266 instead of #ifdef ESP8266 - which e.g. broke the MFRC522 functionality between 12.5 and 13.x. (#19209) 2023-07-29 16:50:27 +02:00
s-hadinger
f2ab3b36a9
Zigbee decode Aqara 0000/FF01 attribute 03 as Temperature (#19210)
* Zigbee decode Aqara 0000/FF01 attribute 03 as Temperature

* Changed to AqaraTemperature
2023-07-29 14:19:15 +02:00
stefanbode
de3b0a4b00
ensure minimum interrupt time (#19211)
prevent interrupts <30 micro seconds because sometimes see crashes on esp8266.
esp32 stop of interrupt >30microseconds and < 105microseconds
2023-07-29 14:15:00 +02:00
s-hadinger
c73fd88d1c
IRremoteESP8266 library from v2.8.5 to v2.8.6 (#19212) 2023-07-29 14:13:58 +02:00
s-hadinger
11f056040e
Make TCPStart ip filter more IPv6 friendly (#19199) 2023-07-26 22:52:48 +02:00
s-hadinger
1a91dc441b
Berry improve tasmota.scale_uint() (#19197) 2023-07-26 22:31:22 +02:00
s-hadinger
9f16f09f29
Berry mqtt.publish now distinguishes between string and bytes (#19196) 2023-07-26 19:54:14 +02:00
Theo Arends
0a664b3613 Update changelogs 2023-07-25 11:50:46 +02:00
Jason2866
3b9ae4c553
Core 2.0.11 (#19181) 2023-07-24 18:06:16 +02:00
Theo Arends
978a21240c Update changelogs 2023-07-24 15:30:48 +02:00
Theo Arends
0ddcea9905 Add alternative for PCA9685
Add alternative for PCA9685 as define PCA9685_V2 (#18805)
2023-07-24 15:11:20 +02:00
Theo Arends
17cf73595f Refactor MAX17043 driver
Refactor MAX17043 driver optional enable library (default off providing smaller footprint (-250 bytes)
2023-07-24 14:28:57 +02:00
Theo Arends
f626539c18 Refactor MAX17043 driver 2023-07-24 12:29:43 +02:00
Jason2866
c5be85f443
Update de_DE.h 2023-07-23 14:13:23 +02:00
gemu
994c105bda
fix empty line problem (#19171) 2023-07-23 11:55:01 +02:00
Vincent de Groot
547169c57d
changing reference to xsns109 (#19170) 2023-07-23 11:30:44 +02:00
bovirus
31c3555d4d
Update italian language (#19169) 2023-07-23 09:39:17 +02:00
s-hadinger
6d3aedcafe
Berry SK6812_GRBW crash (#19166) 2023-07-22 21:51:37 +02:00
Theo Arends
421c95a51b Update change logs 2023-07-22 14:55:20 +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
973ce106e7 Fix compilation (#19134) 2023-07-22 11:28:23 +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
s-hadinger
2cc0964a5f Solidified Code updated 2023-07-20 19:28:05 +00:00
s-hadinger
758b0237b4
Matter latency improvement for single attribute reads and single commands (#19158) 2023-07-20 21:26:55 +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
3da5124348
Berry add AES CCM decrypting in a single call to avoid any object allocation (#19153) 2023-07-19 21:15: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
s-hadinger
91f15d228b
Zigbee DIYRuZ_Geiger (#19151) 2023-07-19 20:41:49 +02:00
s-hadinger
0b59cda02a
Berry add metrics for memory allocation/deallocation/reallocation (#19150) 2023-07-19 20:41:41 +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
s-hadinger
410a6b99d9
Berry update grammar (#19129) 2023-07-16 15:32:59 +02:00
s-hadinger
00249ac3eb
Fix typo 2023-07-16 15:05:41 +02:00
s-hadinger
f4ff0010af
Berry fix syntax highlighting for escaped chars (#19126) 2023-07-16 11:15:33 +02:00
s-hadinger
315fe36727
Berry check arguments for range() (#19124) 2023-07-15 23:25:51 +02:00
s-hadinger
ca8ec6a006
Berry updated syntax highlighting plugin for VSCode (#19123) 2023-07-15 22:43:38 +02:00
s-hadinger
0c0ca82198
Update Berry windows exe to latest (#19121) 2023-07-15 19:20:59 +02:00
s-hadinger
46e17061b2
Berry extend range(lower, upper, incr) to arbitrary increment (#19120) 2023-07-15 19:09:52 +02:00
s-hadinger
af27d65a8a
Sync with Berry upstream (#19119) 2023-07-15 18:11:04 +02:00
s-hadinger
ada754c582
Berry add energy.update_total() to call EnergyUpdateTotal() from energy driver (#19117) 2023-07-15 17:06:10 +02:00
stefanbode
ebca2f0a07
Zero-Cross Dimmer fixes (#19109)
* Fix Zero-Cross flickering on Savedata

* Fix reboot on DIMMER usage with Zero-Cross

* Fix Flickering on dimmer 0
2023-07-14 09:10:20 +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
s-hadinger
8c31acd376
Berry minor fixes from upstream (#19091) 2023-07-11 08:21:09 +02:00
Theo Arends
cefd42c820 Update changelogs 2023-07-10 18:18:42 +02:00
Theo Arends
0937a6b82c Merge branch 'development' of https://github.com/arendst/Tasmota into development 2023-07-10 18:14:34 +02:00
Theo Arends
258976c014 Verify correct functionality 2023-07-10 18:14:23 +02:00
s-hadinger
7404b8ddbb
Berry _class can be used in static var initialization code (#19088) 2023-07-10 17:50: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
btsimonh
b1cc87d24f
File UI changes (#19014)
* Remove recursion into folders on Manage Files.  May be enabled with UFILESYS_RECURSEFOLDERS_GUI.  On Edit of a file, Save and Magane btuttons return to the folder containgint the file being edited.  On delete file, UI returns to the folder that the deleted file was in.

* Make newfile put in in the current folder, and return to current folder on save of manage button.

* Add folderOnly and FileOnly functions to reduce code duplication.
Enable folder delete.
Enable folder listing to be aborted (x in browser)
Disbale ESP32 Download Task.  Needs attention.
Allow folder create from newfile name.
2023-07-10 10:27:20 +02:00
s-hadinger
fcfc3ecb37
Matter fix session not being removed from memory (#19081)
* Matter fix session not being removed from memory

* Fix
2023-07-09 19:36:36 +02:00
sfromis
b7c9182c14
Update decode-status.py to synchronize SetOption154/155 (#19078)
I noticed that the translation for SetOption154/155 bits did not match tasmota_types.h:
https://github.com/arendst/Tasmota/blob/development/tasmota/include/tasmota_types.h#L190-L191
2023-07-09 14:03:18 +02:00
Theo Arends
c0160f2b5b Update changelogs 2023-07-09 10:43:39 +02:00
s-hadinger
8d161d04f7
Matter add mini-profiler (#19075) 2023-07-08 18:58:44 +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
Theo Arends
f726c904ab Enable ESP32 shutter driver
Enable ESP32 shutter driver (#18295)
2023-07-08 17:21:06 +02:00
s-hadinger
0502c15ce3
Matter increase logs when storing sessions (#19073) 2023-07-08 15:05:03 +02:00
s-hadinger
7afc4865e1
Matter improve latency for remote commands (#19072) 2023-07-08 12:00:23 +02:00
s-hadinger
a0c4d914e8
Matter fix bug when saving Force Static endpoints (#19071) 2023-07-08 11:25:33 +02:00
s-hadinger
2ecb697a3f
Berry added getgbl performance counter to debug.counters() (#19070)
* Berry add `getgbl` counter

* Berry added `getgbl` performance counter to `debug.counters()`
2023-07-08 11:25:25 +02:00
gemu
d9d9ca2651
fix modbus-tcp, add U32,U64 etc (#19063) 2023-07-07 19:50:51 +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
5c9c4e6dad
Matter increase logs in save_fabrics (#19060) 2023-07-06 22:15:37 +02:00
s-hadinger
d79c4a7cc6
ESP32 LVGL library from v8.3.7 to v8.3.8 (no functional change) (#19058)
* ESP32 LVGL library from v8.3.7 to v8.3.8 (no functional change)

* Update changelog
2023-07-06 22:03:05 +02:00
s-hadinger
57c4825ccd
BrRestart now supports web handlers to work after Berry restart (#19057) 2023-07-06 21:37:46 +02:00
xsp1989
862edddb56
Fix BUG: Zigbee devices cannot be added through routing nodes (#19036) 2023-07-06 21:10:57 +02:00
s-hadinger
f56307e321
Fix to Partition_Wizard for shelly (#19056) 2023-07-06 20:59:50 +02:00
MIzzzzon
f462fa772d
Create GC9A01_display.ini (#19043) 2023-07-06 16:05:38 +02:00
Jason2866
dd2dab4609
Revert "Hot fix for gitpod and CI (pio core v6.1.8 is faulty) (#19044)" (#19051)
This reverts commit c4f899a72107dec564e553f4788aef48d763db61.
2023-07-06 15:02:25 +02:00
Christian Baars
4c0535687f
Accelerate path.listdir() (#18927)
* Accelerate path.listdir()

* restore old behavior, push filename only and not the full path to the list
2023-07-06 11:10:26 +02:00
Jason2866
c4f899a721
Hot fix for gitpod and CI (pio core v6.1.8 is faulty) (#19044)
* Use pio v6.1.7
2023-07-05 23:14:16 +02:00
Theo Arends
67a62ef3c8 Update changelogs 2023-07-05 11:00:10 +02:00
s-hadinger
492759567a
Partition Wizard is now able to convert to safeboot from Shelly partition layout (#19034) 2023-07-05 09:55:17 +02:00
Theo Arends
41de111429 Update change logs 2023-07-03 21:27:47 +02:00
Theo Arends
522e6cf234 Implement deepsleep(0)
Implement deepsleep(0) as command ``restart 9`` (#19024)
2023-07-03 21:07:45 +02:00
s-hadinger
cc55cf0bb1
Revert "Berry var allowed in with walrus operator := (#19018)" (#19019)
This reverts commit 8f06552eeeedda4e8ac694e327d58b10bfc153a9.
2023-07-03 14:10:05 +02:00
s-hadinger
8f06552eee
Berry var allowed in with walrus operator := (#19018)
* Berry `var` allowed in with walrus operator `:=`

* fix regression
2023-07-03 12:28:41 +02:00
Theo Arends
fc9065d4c8 Fix miel_hvac
Fix miel_hvac (#18923)
2023-07-03 11:55:21 +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
s-hadinger
7cd2d78b26
Matter no Ack for Invoke Request (#19012) 2023-07-02 20:12:40 +02:00
Theo Arends
85aed3a17d Remove phase_count_virtual 2023-07-01 14:31:03 +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
6dd8aabeef Cleanup scripter logging 2023-07-01 14:04:27 +02:00
Theo Arends
3edb5bb096 Move SD card init up
Move SD card init up (#18934)
2023-07-01 12:48:33 +02:00
Jacek Ziółkowski
2705374160
add Energy.phase_count_virtual to berry energy module (#19004)
* add Energy.phase_count_virtual to berry energy module

* Update xdrv_52_3_berry_energy.ino

* Update xdrv_52_3_berry_energy.ino
2023-06-30 22:19:59 +02:00
Theo Arends
ad404dfc0c Allow disable of frequency
Allow disable of frequency in dummy driver
2023-06-30 11:55:48 +02:00
Theo Arends
1e3b41dd2d Fix PCF8574 mode2 init using scripts
Fix PCF8574 mode2 init using scripts (#18934)
2023-06-30 11:37:20 +02:00
Theo Arends
58e13edea0 Change loglevel message 2023-06-30 11:31:59 +02:00
Theo Arends
ca452c5e43 Add Energy->phase_count_virtual 2023-06-30 11:14:37 +02:00
s-hadinger
52392a2b48
Matter improve responsiveness (#19002) 2023-06-29 22:12:56 +02:00
s-hadinger
ff865d8005
Update pre-compiled Berry for Windows (#19001) 2023-06-29 16:39:59 +02:00
Theo Arends
465ae023ab Update change logs 2023-06-29 14:10:49 +02:00
s-hadinger
ef304a8ba8
Berry mark walrus operator as side-effect (#18999) 2023-06-29 13:01:07 +02:00
Jason2866
48e1dd4d7f
Add c3 env for rev. <3 (#18998)
* c3 env for rev <3
* no support for c3 rev <3
2023-06-29 12:11:58 +02:00
s-hadinger
c303c80add
Update CHANGELOG.md
Add support for SGP41 TVOC/NOx Sensor
2023-06-29 09:07:58 +02:00
s-hadinger
34456e6193
Berry import strict now detects useless expr without side effects (#18997) 2023-06-29 09:04:16 +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
s-hadinger
952811b4eb
Matter add option to disable bridge mode (#18992) 2023-06-28 14:49:47 +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
Theo Arends
a542122eb1 Update CHANGELOG.md 2023-06-28 10:52:45 +02:00
Theo Arends
fb0c14e9ec Update RELEASENOTES.md 2023-06-28 10:48:08 +02:00
s-hadinger
1e19e13c6f
Matter support for temperature in Fahrenheit (SetOption8 1) (#18987) 2023-06-27 23:16:40 +02:00
s-hadinger
b9588e6192
Berry bool( [] ) and bool( {} ) now evaluate as false (#18986) 2023-06-27 22:07:13 +02:00
Götz Gottwald
694bebb574
quote path (#18975) 2023-06-27 20:56:40 +02:00
Jason2866
b10b42ff34
warn for whitespaces in path (#18985) 2023-06-27 20:33:38 +02:00
s-hadinger
9cf3d16065
Berry various fixes for Walrus Operator (#18982) 2023-06-27 14:32:08 +02:00
jonschz
a51096e400
update light when VirtualCT is invoked (#18972)
Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2023-06-27 14:23:44 +02:00
Paul Blacknell
7892a38795
add HybridControllerPhase to json payload (#18842) 2023-06-26 21:56:07 +02:00
p2122
6ebd447bf2
Add files via upload (#18957) 2023-06-26 20:22:21 +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
b53a161106
remove solidify (#18973) 2023-06-26 10:15:34 +02:00
Theo Arends
1d74c35950 Update RELEASENOTES.md 2023-06-26 09:19:17 +02:00
s-hadinger
090a4bb4b5
Berry fix bug in walrus operator (#18969) 2023-06-25 23:14:33 +02:00
s-hadinger
339c1cedb7
Zigbee firmware for Sonoff-ZB-Pro v20230507 (#18968) 2023-06-25 21:24:08 +02:00
Christian Baars
e0619c8602
post_esp32.py: Allow renaming of files from URLs on the fly (#18965) 2023-06-25 21:21:27 +02:00
s-hadinger
30a65edd7a
Berry Walrus operator ':=' (#18963) 2023-06-25 17:30:42 +02:00
Christian Baars
99a0f2add1
MI32 legacy: Allow submitting WiFi credentials via BLE using Berry (#18962) 2023-06-25 14:31:04 +02:00
Theo Arends
abd3d6ff12 Update RELEASENOTES.md 2023-06-25 13:33:24 +02:00
gemu
3642d8ef37
fixes TS_FLOAT (#18961) 2023-06-25 12:08:42 +02:00
s-hadinger
89a815f196
Matter display the remote Device Name instead of IP address (#18960) 2023-06-25 10:52:51 +02:00
Theo Arends
81ded35a2c Prep release 13.0 2023-06-24 14:03:43 +02:00
Theo Arends
1b760bb696 Prep release 13.0 2023-06-24 13:55:32 +02:00
Jason2866
01abf97410
Revert "add matter builds to the env and gh actions (#18932)" (#18952)
This reverts commit 8ae819d7d9ad010df4f4a7835ab3cd3e2dfc4770.
2023-06-24 11:41:57 +02:00
Jason2866
b419ae3a92
add matter as a default option in most env (#18942) 2023-06-24 11:39:26 +02:00
s-hadinger
9a3d3988a2
Matter remove unused clusters labels (#18951) 2023-06-24 10:52:37 +02:00
Davide Beatrici
1f16693664
"Tamota" -> "Tasmota" (#18950) 2023-06-24 10:24:48 +02:00
s-hadinger
0ac5d0945b
Berry add option to remove source file name and save flash space (#18948) 2023-06-23 23:14:51 +02:00
s-hadinger
5792dad12b
Berry reduce bproto structure by 8 bytes (#18946) 2023-06-23 19:34:42 +02:00
s-hadinger
7d68c55b38 Solidified Code updated 2023-06-23 16:34:47 +00:00
s-hadinger
36de007909
Berry replace string.formatwith format (#18945)
* Berry replace `string.format`with `format`

* remove import.string
2023-06-23 18:33:31 +02:00
s-hadinger
bf36868813
Matter remove superfluous import.string (#18938) 2023-06-22 23:49:35 +02:00
s-hadinger
85f357096a
Berry added f-strings as an alternative to string formatting (#18937) 2023-06-22 22:50:05 +02:00
KDMcMullan
558f812ec2
Update gzip-firmware.py (#18936)
Small grammar fix.
2023-06-22 22:42:15 +02:00
Norbert
04521e5542
Change format of KNX Group address (#18928)
"%d.%d.%d" -> "%d/%d/%d"

Co-authored-by: Norbert <Noschvie@users.noreply.github.com>
2023-06-22 21:56:55 +02:00
Jason2866
8ae819d7d9
add matter builds to the env and gh actions (#18932)
* add matter builds

* fix OTA URL for CDC matter

* rm QIO from C3 CDC
2023-06-22 21:55:52 +02:00
Christian Baars
325ceef839
allow folders to be added to the filesystem (#18926) 2023-06-21 18:32:42 +02:00
Theo Arends
5248641836 Update RELEASENOTES.md 2023-06-21 16:12:36 +02:00
s-hadinger
1a460926f6
Update CHANGELOG.md 2023-06-21 14:22:41 +02:00
s-hadinger
410aadbf6d
Berry add global function format as a simpler syntax to string.format (#18925) 2023-06-21 14:12:39 +02:00
Ian Anderson
635e240293
Update Tuya_ZG-204ZL.zb (#18922)
Added in mapping for battery level on ZG-204ZL
2023-06-21 10:33:39 +02:00
s-hadinger
2d515dc91f
Matter show remotes as links (#18913) 2023-06-20 09:10:25 +02:00
Norbert Richter
1f5c1baeae
Fix NeoPool NPFiltration switch result (#18871) (#18908) 2023-06-19 22:53:51 +02:00
s-hadinger
d5c727129e
Fix compilation (#18905) 2023-06-18 23:14:19 +02:00
s-hadinger
6a8ceab0a3 Solidified Code updated 2023-06-18 21:04:53 +00:00
Barbudor
92ce18f87c
AND_list (#18904) 2023-06-18 23:03:45 +02:00
Jacek Ziółkowski
5059a11b9f
Add entry for Growatt 12KTL-3S (#18898) 2023-06-18 20:26:42 +02:00
s-hadinger
1e745807e4
Berry fixed parser error with upvals in closures (#18902) 2023-06-18 20:21:08 +02:00
s-hadinger
4a3b6457ca
Matter add friendly-name (NodeLabel) to each endpoint (#18897) 2023-06-18 18:45:47 +02:00
btsimonh
b2fd311186
Bugfix accessing zip paths with no characters after the hash (#18894)
Add passthrough of openNextFile, so that folders can be opened and read via the ZipFS proxied filesystems.
2023-06-18 18:42:39 +02:00
btsimonh
4452228dca
add path.isdir for berry, plus save ~87 bytes of flash ikn the process. (#18895) 2023-06-18 18:42:07 +02:00
s-hadinger
3fc932d38a
Berry string.format() now automatically converts type according to format (#18890) 2023-06-16 20:38:53 +02:00
s-hadinger
28861821a6
Zigbee fixed regression with SetOption101 (#18884) 2023-06-14 22:46:18 +02:00
s-hadinger
3a00dde3af
Matter add remote contact (#18883) 2023-06-14 22:32:54 +02:00
s-hadinger
bd6aff77f7
Matter add support for Contact Sensor (#18882) 2023-06-14 20:36:17 +02:00
stefanbode
156a3551b0
Repair SHUTTER Shelly 2.5 with manual relay change on switches (#18877)
* Repair manual relay change

* Repair manual relay change
2023-06-14 16:14:10 +02:00
Jason2866
bbd6fa7202
core 2.0.10 2023-06-14 14:45:54 +02:00
Jason2866
bec7d63847
core 2.0.10 (IDF 4.4.5.20230614) (#18878) 2023-06-14 14:43:35 +02:00
s-hadinger
558819c748
Add mention to OpenBK in UI (#18874) 2023-06-13 23:09:29 +02:00
s-hadinger
69b2b93d61
Matter UI and logs polishing (#18866) 2023-06-12 19:45:18 +02:00
stefanbode
0e3b32e848
Readded up/down/open/close commands (#18864)
* Update xdrv_27_shutter.ino

* fix shutterposition with up/down/open/close
2023-06-12 19:09:19 +02:00
Jason2866
bc213289cd
Update platformio_tasmota32.ini (#18863) 2023-06-12 16:20:03 +02:00
s-hadinger
ae773895f8
Minor change to Matter UI (#18858) 2023-06-12 08:40:59 +02:00
s-hadinger
badf064ab4
Matter fix local Occupancy sensor (#18857)
* Matter fix local Occupancy sensor

* Fix also OnOff
2023-06-11 23:10:26 +02:00
btsimonh
c88bff5a46
Berry: add path.rmdir(path), path.mkdir(path) (#18853)
(cherry picked from commit 7ce04b8624c88279c57d4a7556aabbe5f3317773)
2023-06-11 20:40:28 +02:00
s-hadinger
a014f5495b
Matter redesigned UI (#18855) 2023-06-11 19:10:12 +02:00
s-hadinger
5da84c52ff
Berry Allow comments in multi-line strings (#18848) 2023-06-10 22:23:43 +02:00
s-hadinger
5cb9bae72c
Matter alternate Illuminance calculation (#18847) 2023-06-10 19:40:57 +02:00
s-hadinger
827c14e4bd
Increase solidify buffer (#18843) 2023-06-10 18:23:33 +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
btsimonh
63cc575c8b
Berry Webclient: Change StreamBytes to StreamBeBytesWriter, and improve wc_getbytes (#18837)
This reduces allocation to a single allocaiton, but also theroetically allows the Bytes object to grow if content-length was unset.

(cherry picked from commit 936477f5977dd1a4f899498cc7cc0baf05b34a89)
2023-06-10 11:28:31 +02:00
Barbudor
6aed929e17
fix #18817 http response for status with retain (#18819)
* fix http response for status with retain

* take 2

* add a failsafe when JSONlen reach zero
2023-06-09 07:59:24 +00:00
btsimonh
fc92dc0995
Add wcclient.get_bytes() to Berry (#18829)
(cherry picked from commit 5903b21448a3f088b12bd47a04996ff84e467a3a)
2023-06-09 08:56:05 +02:00
s-hadinger
138b119c6d
Matter fix Illuminance to uint (#18830) 2023-06-09 08:55:43 +02:00
blakadder
676165f3f6
better way to support LSBJ (#18827) 2023-06-08 20:39:02 +02:00
blakadder
ae67c6cfa1
Add support for INMP441 MEMS microphone (#18823)
* Add INMP441 MEMS mic support

* add I2S audio defines as preview
2023-06-08 16:24:44 +02:00
Jason2866
2ffd4311c3
Enable more esp32 libs by default (#18821) 2023-06-08 13:01:24 +02:00
s-hadinger
4ce3e5c544
Matter fix Illuminance for 0 lux (#18818) 2023-06-07 22:32:09 +02:00
s-hadinger
f572d93ac6
Matter minor fixes (#18813) 2023-06-07 19:23:28 +02:00
blakadder
5a8f13d57f
Pdm_mic (#18807)
* add I2S LSB flag

* add support for PDM microphones
2023-06-07 12:34:44 +02:00
Ludovic BOUÉ
73c48ff5f0
Update be_matter_vendors.h - Adding Nabu Casa vendor id (#18804)
* Update be_matter_vendors.h

Adding Nabu Casa vendor id

* Update be_matter_vendors.h

Move it to the end of the list
2023-06-06 19:16:03 +02:00
s-hadinger
5c3a6d9170
Matter fix illuminance (#18806) 2023-06-06 18:28:49 +02:00
s-hadinger
18c2bc8320
Matter fix unchunked requests for OpenBK (#18803) 2023-06-06 15:13:13 +02:00
s-hadinger
a0a1b89dfb Solidified Code updated 2023-06-06 08:22:56 +00:00
Norbert
8d8870a6ee
Fix spelling. (#18800) 2023-06-06 10:21:34 +02:00
Norbert
a19079b2ec
Fix spelling. (#18799) 2023-06-06 10:21:12 +02:00
s-hadinger
31b93f8d48
Matter add controller's Vendor Name to logs and UI (#18794) 2023-06-04 23:05:52 +02:00
blakadder
24233924c5
add I2S LSB flag (#18793) 2023-06-04 23:01:46 +02:00
s-hadinger
844caf51f9
Fixed HASPmota event when value is non-integer (fixes #18229) (#18791) 2023-06-04 20:06:04 +02:00
s-hadinger
e66439cb50
Matter ability to add or remove endpoint in bridge mode (code only) (#18790) 2023-06-04 19:35:36 +02:00
s-hadinger
c09165c7b2
Matter fix saving config (#18786) 2023-06-03 19:47:10 +02:00
s-hadinger
6fdfdb8475
Matter Bridge mode always on (#18785) 2023-06-03 19:01:36 +02:00
s-hadinger
61f17221d0
Berry simplify I2S implementation (#18778) 2023-06-02 16:36:09 +02:00
Theo Arends
51286f2275 Update changelogs 2023-06-02 14:24:46 +02:00
s-hadinger
f8df9e5f00
Berry webclient.url_encode() is now a static class method, no change required to existing code (#18775) 2023-06-02 13:29:57 +02:00
Theo Arends
4e7475dbd4 Bump version v12.5.0.4 2023-06-02 10:25:02 +02:00
s-hadinger
82895c53e3
Berry add set_lsb_justified(bool) to AudioOutputI2S (#18774) 2023-06-02 09:58:39 +02:00
s-hadinger
541da60ca6
Fix Matter Berry solidification (#18773) 2023-06-02 09:38:43 +02:00
Jason2866
55b109de68
esptool v4.6.1 (#18771) 2023-06-01 23:35:14 +02:00
jonschz
9d57a19be3
Fix interaction of SO92, VirtualCT, and RGBWWTable (#18768)
* remove unused variable

* Relocate SO92 implementation
This way, SO92 does not ignore SO106

* Relocate RGBWWTable implementation
This fixes a bug related to RGBWWTable and SO92.
Also, the code is tidier this way

* Cleanup: Reduce code duplication

* more consistent behaviour for SO92 and free_cw

---------

Co-authored-by: jonschz <jonschz@users.noreply.github.com>
2023-06-01 22:12:57 +02:00
s-hadinger
b9d855ef79
Berry RS256 crypto algorithm (RSASSA-MCKS1_v1-5 with SHA256) used for JWT (#18763) 2023-06-01 10:02:23 +02:00
Jason2866
74f9973b8b
Core 2.0.9 from 2023.05.31 (#18762) 2023-05-31 22:41:35 +02:00
Jason2866
10821b7e24
fix factory file not removed (#18761) 2023-05-31 21:54:59 +02:00
s-hadinger
87547657ec
Matter add 0300/400A for CT (#18757) 2023-05-30 22:25:59 +02:00
Ludovic BOUÉ
596482284c
Update CHANGELOG.md (#18748)
Replace Border Router by bridge
2023-05-29 23:12:55 +02:00
s-hadinger
3c75bc92a2
Zigbee Berry mapping fix attributes (#18747) 2023-05-29 23:05:45 +02:00
s-hadinger
83e47fa4a8
Matter support for Occupancy via Switch (experimental) (#18742) 2023-05-29 19:24:06 +02:00
s-hadinger
3f094c9be1
Display descriptor for ST7735 128x160 display (#18741) 2023-05-29 18:50:03 +02:00
Theo Arends
07b7a7ee9a Fix initial ESP32 Energy kWh total time 2023-05-29 16:19:55 +02:00
Theo Arends
bf2982854b Fix #18737 2023-05-29 14:21:33 +02:00
Jason2866
8e741052b8
Core 2.0.9 from 2023.05.29 (#18736) 2023-05-29 13:04:23 +02:00
s-hadinger
b053cf87ec
Berry safeguard when freeing null pointer (#18735) 2023-05-29 11:00:20 +02:00
s-hadinger
fe570a1b26
Matter Border Router for ESP8266 (experimental) (#18734) 2023-05-29 10:40:24 +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
d91e1e8bcc Fix berry scheme select 2023-05-27 12:33:50 +02:00
Jason2866
7f8f75d196
checkout not needed for trigger 2023-05-26 21:10:45 +02:00
Jason2866
175bde932f
checkout not needed for trigger 2023-05-26 21:09:35 +02:00
Theo Arends
e87714dbcd Add TODO 2023-05-26 17:51:20 +02:00
Theo Arends
fcf3477165 Initial support for WS2812 scheme 14 2023-05-26 17:47:57 +02:00
Jason2866
7f312ba589
Fix wrong if placing 2023-05-25 23:11:03 +02:00
Jason2866
053f2b3b0b
Solidify only in branch development 2023-05-25 23:09:10 +02:00
Jason2866
ea08f2cbae
solidify only in branch development 2023-05-25 23:06:45 +02:00
s-hadinger
6fa22aae6b
adjust neopixel busy time (#18723)
* adjust neopixel busy time

* Adjust time for Berry
2023-05-25 19:21:18 +02:00
Theo Arends
e05d75248e Add undocumented feature 2023-05-25 17:13:31 +02:00
Jason2866
e932902351
add all map files to release in a single zip file
so it does not liter the release section with many files
2023-05-25 16:05:53 +02:00
Barbudor
75f634dc71
freeze readings before deepsleep (#18720) 2023-05-25 12:20:30 +02:00
Jason2866
478b378d7d
Trigger workflow is now "gh_actions" 2023-05-24 19:43:53 +02:00
Jason2866
ce136309eb
Trigger workflow is now "gh_actions" 2023-05-24 19:43:01 +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
4be618fe7b Fix WS2812 string distortions during analogRead()
Fix WS2812 string distortions during analogRead()
2023-05-24 15:09:26 +02:00
s-hadinger
b715f03db6 Solidified Code updated 2023-05-23 17:27:46 +00:00
Ludovic BOUÉ
f2edb2fb3c
Update Matter_HTTP_remote.be (#18719)
Fix log message for MTR HTTP sync/async request
2023-05-23 19:26:30 +02:00
Jason2866
8969bc66e2
Workflow needs the release binaries 2023-05-23 17:08:21 +02:00
Jason2866
4f05acd052
refactored GH action workflow 2023-05-23 16:55:19 +02:00
Theo Arends
10f9c20078 Fix ESP32 SPI initialization for MFRC522
Fix ESP32 SPI initialization for MFRC522 (#18711)
2023-05-23 14:34:47 +02:00
gemu
242eb3074a
fixes and enhancements (#18718)
* onewire fixes, webui radiobuttons

* fix regression
2023-05-23 11:30:59 +02:00
gemu
e969bf0e0e
optional prefix size and serial invert (#18717) 2023-05-23 08:46:00 +02:00
s-hadinger
c1ec35a086
Matter fix fabric provisioning from CASE session for iOS 16.5 (#18709) 2023-05-22 20:46:20 +02:00
Jason2866
2c8f9f8631
action moved 2023-05-22 17:00:20 +02:00
Theo Arends
44b33281b6 Even more bling bling 2023-05-22 16:21:50 +02:00
Jason2866
385cd45f60
Delete Tasmota_build_devel.yml.old 2023-05-22 15:54:39 +02:00
Jason2866
f0b5839408
Start needed not refactored GH workflows 2023-05-22 15:28:21 +02:00
Jason2866
71f7960663
New workflow -> firmware pull 2023-05-22 14:50:20 +02:00
Jason2866
1e374a43bf
Rename Tasmota_build_devel.yml to Tasmota_build_devel.yml.old 2023-05-22 14:43:37 +02:00
Jason2866
fd7b18a11f
start remote workflow with branch main 2023-05-22 13:22:15 +02:00
Jason2866
277261ff8f
try different curl API 2023-05-22 12:52:20 +02:00
Theo Arends
9a88677122 More AS608 bling bling
More AS608 bling bling (#18163)
2023-05-22 12:42:24 +02:00
Theo Arends
80afc8793f AdafruitFingerprint library from v2.0.4 to v2.1.0
AdafruitFingerprint library from v2.0.4 to v2.1.0 (#18163)
2023-05-22 11:48:03 +02:00
Jason2866
7c92a2186b
set env for remote dispatch 2023-05-22 11:25:11 +02:00
Jason2866
749f55283b
Try to dispatch workflow run in other repo 2023-05-22 11:04:03 +02:00
Theo Arends
a39d1eee0e Rename HttpClientLight 2023-05-21 16:51:16 +02:00
Theo Arends
22abc8ad99 Fix ESP32 InfluxDb initial connection delays
Fix ESP32 InfluxDb initial connection delays using HTTPClient (#18015)
2023-05-21 16:21:43 +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
stefanbode
a76ebaae48
Shutter continuous improvement (#18701)
* Update xdrv_27_esp32_shutter.ino

* Update xdrv_27_shutter.ino

* Update xdrv_01_9_webserver.ino

* Update xdrv_12_discovery.ino

* shutterinvert

removed slider display to driver
fix wrong invert display

* codereduction+refactor slider

removed webui slider into driver
optimized code

* update slide, fix invert shutters

- refactor sliders into driver
- fix percent calculation on iverted shutters

* fix on realpercent if inverted shutter

* fix ShutterPercentToRealPosition

fix on inverted shutter

* added shutter to bootloop reset

* bugfix integration

* bugfix
2023-05-21 12:25:11 +02:00
Bernhard Urban-Forster
d5ad79985b
haas: sync shutter discovery and fix for more than 4 shutter (#18694)
* discovery: hoist shutter computation out of loop

* haas: sync shutter discovery and fix for more than 4 shutter
2023-05-20 09:06:56 +02:00
Ian Anderson
63a83c7289
Added quirks file for Tuya_ZG-204ZL (#18693) 2023-05-20 07:51:46 +02:00
Theo Arends
f5d6578fb5 Fix correct JSON display of WifiPower float 2023-05-19 17:41:18 +02:00
Theo Arends
f3cc8997b0 Fix Berry solidify of berry_tasmota on Windows 2023-05-19 17:14:29 +02:00
Theo Arends
4afcdc11d6 Simplify Berry Mute option 2023-05-19 16:30:48 +02:00
Theo Arends
77103baa0a Add internal support for max log level 2023-05-19 15:20:21 +02:00
Jason2866
a07e17eff6
try to fix RPC failed in action 2023-05-19 13:27:31 +02:00
Theo Arends
2baba2b9c2 Fix berry mute option (#18684) 2023-05-19 12:48:19 +02:00
Jason2866
4bc324f5dc
Update Tasmota_build_devel.yml 2023-05-19 12:45:45 +02:00
Jason2866
ab0b2e26fc
Fix path 2023-05-18 18:55:22 +02:00
Jason2866
936267d42c
split upload of files 2023-05-18 18:27:37 +02:00
Jason2866
05bb8214c8
destination_branch_create: 'firmware' 2023-05-18 17:37:40 +02:00
Jason2866
521709dd9a
Update Tasmota_build_devel.yml 2023-05-18 15:45:57 +02:00
Jason2866
542294f3c8
create branch when not exists 2023-05-18 15:06:51 +02:00
Jason2866
b0058fd0a2
Try to fix copy firmware to other repo 2023-05-18 14:43:07 +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
s-hadinger
2d8ea8f51c
Berry persist hide errors when saving (#18686) 2023-05-17 22:43:13 +02:00
s-hadinger
2b76e8e668
HASPmota meta attribute and improved berry_run (#18685) 2023-05-17 21:40:05 +02:00
Jason2866
d48c826d42
Core 2.0.9 from 2023.05.17 (#18680)
Updated IDF components:
LittleFS v1.5.4
CAM v2.0.4
DSP latest commit
2023-05-17 13:24:58 +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
4e5c62ce33 Update changelogs 2023-05-17 09:53:42 +02:00
stefanbode
4d131fd543
zero-cross dimmer cleanup (#18674)
removed zero cross dimmer initialize
2023-05-17 08:54:22 +02:00
stefanbode
adff41f962
bugfix (#18673) 2023-05-16 22:34:07 +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
f40a63b5be Update changelogs 2023-05-16 14:05:16 +02:00
btsimonh
f8b26a90f6
Add mutex to many camera functions. (#18655)
* Add mutex to many camera functions.

* Allow stream to continue after wcinit command (and other commands which reconfigure).

* Adust retries on camera init, specifically log success if it retried.
Shorten messages to save rom.
I have seen fail of 0x103 and 0x20002 succeed on second try.
2023-05-16 12:21:25 +02:00
s-hadinger
81d7785f66
LED PWM ac_dimmer curve was wrongly applied instead of Gamma (#18666) 2023-05-15 22:51:14 +02:00
s-hadinger
98bfc172c1
Zigbee support for air sensors (#18665)
* Zigbee support for air sensors

* ppm
2023-05-15 22:04:13 +02:00
s-hadinger
951b9b4682
Matter support for async HTTP for bridged devices (#18656) 2023-05-14 23:02:58 +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
26508e55fc Merge branch 'development' of https://github.com/arendst/Tasmota into development 2023-05-14 14:42:23 +02:00
Theo Arends
7cad4f95b6 Enable I2c on webcam 2023-05-14 14:42:11 +02:00
CCTweaker
885737a1fd
Add support for PCA9557 8-bit IO expander (#18632)
* add PCA9557 driver

* text correction

* added switches and buttons

* update max devices to 8

* cleanup
2023-05-14 14:19:39 +02:00
Jeroen
f860722eba
Added Endianess Parameter (#18650)
https://github.com/arendst/Tasmota/discussions/18244

Co-authored-by: JeroenSt <nospam@nospam.org>
2023-05-14 14:18:45 +02:00
Jason2866
0bf27e70fe
fix logic when init cam was successful (#18653) 2023-05-14 14:08:53 +02:00
Jason2866
db1b9ffe49
Update gen.sh 2023-05-12 14:25:56 +02:00
Jason2866
9c819d6afb
push changed coc generated files back in repo (#18644) 2023-05-12 12:18:55 +02:00
Jason2866
979a15cf07
run "coc" before solidify (#18643)
* Run "coc"
* change artifact order
2023-05-12 11:06:20 +02:00
Theo Arends
86979646ff Energy power delta report delayed
Energy power delta report delayed by two seconds allowing hardware to stabilize (#17751)
2023-05-11 18:10:52 +02:00
Jason2866
c776885691
clang for berry binary compile (#18641) 2023-05-11 16:21:33 +02:00
Jason2866
71391d614c
Use clang for solidify 2023-05-11 15:24:44 +02:00
Jason2866
402306657e
continue if solidify fails 2023-05-11 09:32:57 +02:00
Christian Baars
79a826a206
Update xdrv_81_esp32_webcam.ino (#18637) 2023-05-11 09:28:33 +02:00
Jason2866
11bf16d162
Github Actions refactor artifact Up-/Download (#18640)
* multi artifact Up-/Download
2023-05-10 23:57:54 +02:00
f-reiling
3a6cd9b63c
start modus tcp bridge automatically (#18634)
* added default port for modbus tcp bridge to start automatically

* updated ifdef style

* renamed define for modbus default port
2023-05-10 14:38:52 +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
Jeroen
632176765d
Added define to adjust calibration precision. (#18613)
Co-authored-by: JeroenSt <nospam@nospam.org>
2023-05-10 09:38:27 +02:00
TID
bef49b4617
Update polish language (#18615) 2023-05-10 09:36:54 +02:00
Jason2866
e672e2fe9c
back to Ubuntu 20.04 2023-05-09 23:41:29 +02:00
s-hadinger
884b6713a8
Berry fix energy (#18628) 2023-05-09 23:24:23 +02:00
Jason2866
367acfcb74
Use Ubuntu 22.04 for Berry workflow 2023-05-09 22:58:39 +02:00
Jason2866
2c7369cb2d
Use Ubuntu 22.04 for all steps
The issue in Berry compile is fixed
2023-05-09 22:53:02 +02:00
s-hadinger
652a8edefa
Berry solidify for ubuntu 22.04 (#18627) 2023-05-09 22:21:39 +02:00
s-hadinger
c4d90d4636
Berry suppress warnings (#18626) 2023-05-09 22:10:16 +02:00
s-hadinger
11631cdb19 Solidified Code updated 2023-05-09 19:42:42 +00:00
s-hadinger
88593be79c
Matter fix autoconf_device_map (#18625) 2023-05-09 21:41:05 +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
s-hadinger
fec3a21c8a
Berry strtab test case (#18623) 2023-05-09 21:13:00 +02:00
SteWers
be27b4c488
Update de_DE.h (#18621) 2023-05-09 20:12:24 +02:00
Jason2866
267fe9d951
add LVGL solidify (#18616) 2023-05-08 23:11:34 +02:00
s-hadinger
4cd1136f4c
Berry fixed a rare condition when a GC causes a memory corruption (#18614) 2023-05-08 21:59:32 +02:00
s-hadinger
c5e6115597 Solidified Code updated 2023-05-08 19:12:02 +00:00
stefanbode
ffedb96702
introduced "inverted" setting (#18607)
ensure that matter support still works if the "inverted" flag is set on the shutter side
2023-05-08 21:11:19 +02:00
Jason2866
aac1b08074
wait for solidify 2023-05-08 20:49:21 +02:00
Jason2866
26f7eeba1b
wait for solidify 2023-05-08 20:48:09 +02:00
Jason2866
efc464e998
Berry code solidifying with GH actions (#18611) 2023-05-08 20:44:31 +02:00
Mateusz Bronk
faff39ca11
IRremoteESP8266 upgraded to v2.8.5 (#18610)
* IRremoteESP8266 upgraded to v2.8.5 (from v2.8.4)

* Fix ir panasonic esp8266 (#18013)

* revert part of #16179 for ESP8266

* Revert "revert part of #16179 for ESP8266"

This reverts commit b8e61264074f0dd92e5fca29a991d31c97f8f9ee.

* try to revert #16179 for esp8266

* Build: removed redundand USE_IR_REMOTE_FULL flag

Tasmota32-ir PIO had both FIRMWARE_IR and USE_IR_REMOTE_FULL defined.
The latter is redundand and yielded unnecessary build warns.
See: tasmota_configurations.h

---------

Co-authored-by: Mateusz Bronk <2566147+mbronk@users.noreply.github.com>
Co-authored-by: Barbudor <barbudor@barbudor.net>
2023-05-08 19:04:25 +02:00
Theo Arends
6fe1bbd617 Update changelogs 2023-05-08 15:10:15 +02:00
Jeroen
45eb82bc3f
Fix for not sending changes to mqtt (#18600)
Co-authored-by: JeroenSt <nospam@nospam.org>
2023-05-08 09:59:28 +02:00
Jeroen
6cb92ffe49
Fix for aligment at displayfloat command (#18601)
* Fix for wrong aligment at displayfloat command

* Added alignment parameter to prevent regression

---------

Co-authored-by: JeroenSt <nospam@nospam.org>
2023-05-08 09:58:26 +02:00
bovirus
cdc6ba7c96
Update italian language (#18605) 2023-05-08 09:57:13 +02:00
Christian Baars
cf60e34578
fix webcam init for some cases (#18606)
Co-authored-by: Christian Baars <christianbaars@MacBook-Pro-von-Christian.local>
2023-05-08 09:57:00 +02:00
s-hadinger
ae6d435aaf
autoconf extract display.ini to file system (#18604) 2023-05-07 22:58:27 +02:00
s-hadinger
ba9c7651a7
Fix solidification (#18603) 2023-05-07 22:13:27 +02:00
Jason2866
c42f959520
Framework esp32 2023.05.00 with Tasmota Core 2.0.9 (#18602)
* Platform 2023.05.00 with Tasmota Core 2.0.9
2023-05-07 21:12:33 +02:00
s-hadinger
97cbfe007f
Add windows berry binary (#18599) 2023-05-07 18:12:47 +02:00
stefanbode
4a85ac5f19
Matter TiltSupport fixes (#18598)
* Tilt bugfix

- enabled negative tilt values in tilt_min
- fix scale to 10.000

* Update solidified_Matter_Plugin_ShutterTilt.h

* Update solidified_Matter_TLV.h
2023-05-07 17:53:38 +02:00
Theo Arends
da5396a080 Add filesystem size to esp8266 GUI 2023-05-07 17:25:18 +02:00
s-hadinger
519ea557c7
Berry re (regex) add match2 and optional offset (#18596) 2023-05-07 16:18:34 +02:00
Theo Arends
91523fd90b Add GM861 optional heartbeat 2023-05-07 16:01:33 +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
gemu
a46b926530
fix i2c touch init (#18594) 2023-05-07 14:48:49 +02:00
Theo Arends
0287291cd9 Add GM861 optional AIMId decode 2023-05-07 14:11:29 +02:00
Theo Arends
e9d1e8c725 Change command FileUpload binary index 2023-05-06 18:09:11 +02:00
Theo Arends
b9464a21a8 GM861 add support for AIM 2023-05-06 17:18:52 +02:00
stefanbode
25e55ae073
#18548 fix shuttersetup (#18586)
- code optimization
- shuttersetup reluctant on relay to energy measure relation
2023-05-06 15:46:29 +02:00
s-hadinger
8b2539a35a
Partition_Manager.tapp fixed (#18588) 2023-05-06 12:18:12 +02:00
Theo Arends
32cd5a3452 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2023-05-05 17:41:22 +02:00
Theo Arends
7612dfabcf Remove coffee 2023-05-05 17:41:18 +02:00
Jason2866
08ce63863e
Fix CONFIG_BT_NIMBLE_NVS_PERSIST value unused
https://github.com/h2zero/NimBLE-Arduino/pull/520
2023-05-05 17:09:24 +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
s-hadinger
069278f966
Berry add tcpclientasync class for non-blocking TCP client (#18584) 2023-05-05 15:13:22 +02:00
stefanbode
07a9f33ae7
Update CHANGELOG.md (#18581)
Added my latest changes
2023-05-05 09:18:23 +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
s-hadinger
13de7a4863
Berry make add_driver() idempotent (#18580) 2023-05-04 21:27:55 +02:00
s-hadinger
c26ec44407
Matter POC for remote Relay (#18575) 2023-05-03 23:03:01 +02:00
stefanbode
9097f508fd
BugFix Garage + new shutterbuttons options (#18572)
* Fix GarageMode movements

* BugFix Garage + new shutterbuttons options

- Removed logging
- shutterbuttons support incremental change
- garage mode, fix #18539 and fix #18442
2023-05-03 21:44:09 +02:00
s-hadinger
fe1bc615f0
ESP32 LVGL library from v8.3.6 to v8.3.7 (no functional change) (#18573)
* ESP32 LVGL library from v8.3.7 to v8.3.7 (no functional change)

* Fix version
2023-05-03 21:18:26 +02:00
s-hadinger
0cbe2fc587
Matter support for Shutters with Tilt (#18569) 2023-05-03 18:30:34 +02:00
s-hadinger
3fa42072b1
Fix HASPmota demo for the new Berry rule engine (#18570) 2023-05-03 17:33:21 +02:00
Jason2866
ec00f0f7e2
esp8266 iram metrics (#18564) 2023-05-03 11:04:10 +02:00
stefanbode
c498995f79
Update xdrv_68_zerocrossDimmer.ino (#18556)
* Update xdrv_68_zerocrossDimmer.ino

* Address IRAM issue report

removed some IRAM from ESP8266. Further improvement to ESP32 as soon as measurement is available.
2023-05-02 15:53:17 +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
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
Jeroen
c5612a50fb
Fix for https://github.com/arendst/Tasmota/discussions/15703#discussioncomment-5713294 (#18534)
Added and fixed comments

Co-authored-by: JeroenSt <nospam@nospam.org>
2023-04-29 14:46:38 +02:00
Tim L
1d0c19311d
Add support for WT32_SC01 Plus display (#18538) 2023-04-29 14:45:10 +02:00
stefanbode
17d1d7f5fa
Update xdrv_68_zerocrossDimmer.ino (#18532) 2023-04-28 17:33:12 +02:00
bovirus
d206de52f1
Italian language update (#18531) 2023-04-28 08:38:46 +02:00
Theo Arends
f86bc7d8ab Prep GM861 2023-04-27 17:44:33 +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
s-hadinger
e4e2fcdc6d
Matter reduce logging for CASE authentication (#18527) 2023-04-27 08:54:57 +02:00
stefanbode
60855bf367
Enabled ZCDimmerSet for ESP8266 (#18518)
* Enabled ZCDimmerSet for ESP8266

- Increased interrupts time to get stablity. Savedata issue is gone. 
- Increased accuracy to trigger an on sinus curve.
- Enabled high resolution trigger ZCDimmerSet for ESP8266

* Update xdrv_68_zerocrossDimmer.ino
2023-04-27 08:03:00 +02:00
s-hadinger
6702321784
Matter shutter with tilt (#18525) 2023-04-26 22:53:26 +02:00
Jeroen
ee9d086aba
Solved: ModbusBridge reading int16 returns uint16 (#18524)
https://github.com/arendst/Tasmota/issues/18522

Co-authored-by: JeroenSt <nospam@nospam.org>
2023-04-26 22:27:53 +02:00
Theo Arends
4c685967e6 Update changelogs 2023-04-26 14:10:11 +02:00
stefanbode
afbdb3d54f
Added TILTCONFIG to status13 message for MATTER support (#18512) 2023-04-26 11:39:59 +02:00
stefanbode
bec24baa75
Changes JSON message to actual position and not outdated (#18502)
* Report actual position in JSON

* Update xdrv_27_shutter.ino

* Update xdrv_27_esp32_shutter.ino

* copy&paste error
2023-04-26 08:39:49 +02:00
Christian Baars
f6763eb37b
Berry: add BLE server/advertiser (#18494) 2023-04-26 08:39:29 +02:00
s-hadinger
c8318248bb
Matter add support for Shutters (without Tilt) (#18509) 2023-04-25 23:30:23 +02:00
Theo Arends
074831437f Update changelogs 2023-04-25 15:43:41 +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
s-hadinger
fba15dea71
Matter add UI to change endpoints configuration (#18498) 2023-04-24 23:01:02 +02:00
Jason2866
98cad1a192
Create ST7735S_Air101-LCD_display.ini 2023-04-24 16:53:37 +02:00
Jason2866
763a8671ab
fix c3 exceptions when using lvgl (#18493) 2023-04-24 16:11:54 +02:00
Theo Arends
c1db67ce37 Refactor GDK101 driver 2023-04-23 18:09:33 +02:00
Felix Laevsky
21bb822dec
Fix for ModuleAddress command (#18490) 2023-04-23 10:51:00 +02:00
gemu
799ba675eb
add xpt2046 option for spi bus 2 (#18480)
* allow spi bus 2

* xpt spi bus 2

* xpt option bus

* xpt option spi bus 2

* exclude c3

* exclude s2

* fix s3

* typo
2023-04-23 10:19:31 +02:00
s-hadinger
f9e3b25c9b
Matter persist plugins when fabrics (#18487) 2023-04-22 23:56:35 +02:00
s-hadinger
39094bc079
Matter persist plugins config (#18486) 2023-04-22 23:33:22 +02:00
s-hadinger
a2b9574ec9
Berry fix solidify script (#18476) 2023-04-22 10:14:39 +02:00
s-hadinger
045f8b4aec
Berry fix corruption in debug (#18475) 2023-04-21 23:05:25 +02:00
s-hadinger
d9eeb8bf57
Berry remove superfluous test (#18473) 2023-04-21 22:42:02 +02:00
s-hadinger
f5e6ba956d
Berry upstream (#18471) 2023-04-21 22:36:18 +02:00
s-hadinger
f46b9f4e2d
Update Berry tests from upstream (#18472) 2023-04-21 22:36:00 +02:00
s-hadinger
01ba3d28cd
Berry apply fixes from upstream (#18470)
* Berry apply fixes from upstream

* Fix
2023-04-21 21:59:45 +02:00
Jason2866
a6aa8924ea
Platform version 2023.04.03 (#18467) 2023-04-21 18:11:50 +02:00
Jason2866
112c254d54
refac firmware-metrics (#18466)
* refac firmware-metrics

* rm debugging print

* fix esp8266
2023-04-21 16:56:27 +02:00
Theo Arends
5a2266289e Update Sievert 2023-04-21 16:55:09 +02:00
Theo Arends
844db4bc54 Update changelogs 2023-04-21 14:57:59 +02:00
Jason2866
ca88aa2519
fix c3 map metrics (#18465) 2023-04-21 14:24:29 +02:00
s-hadinger
3c57755bb7
Berry fix rules for string comparisons (#18464) 2023-04-21 08:59:49 +02:00
Jason2866
49d5356ea3
Show Metrics for ESP32x firmware (#18461) 2023-04-20 20:26:07 +02:00
Jason2866
11a43ea99b
Tasmota Core 208 (#18460)
* Tasmota Core 2.0.8
* Fix Linker errors
2023-04-20 20:01:35 +02:00
s-hadinger
b235dffb29
Fix Berry hue_bridge (#18459) 2023-04-19 23:45:05 +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
s-hadinger
65eb9142a2
Matter fix RemoveFabric arg logging (#18452) 2023-04-18 23:00:36 +02:00
s-hadinger
a85412fce2
Matter allow Matter#Initialized rule once the device is configured (#18451) 2023-04-18 22:27:27 +02:00
Theo Arends
fb98d8954a Update changelogs 2023-04-18 17:23:37 +02:00
InHi66
eb40496e4b
Update xsns_20_novasds.ino (#18444) 2023-04-18 17:20:47 +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
2684141722 Fix ESP8266 Energy Export Active
Fix ESP8266 Energy Export Active no update regression from v12.3.1.3
2023-04-18 15:34:19 +02:00
Theo Arends
c5e09ef76d Update changelogs 2023-04-18 13:37:55 +02:00
s-hadinger
4bac940a40
Matter add sensors: Humidity, Pressure, Illuminance; optimize memory (#18441) 2023-04-17 21:49:12 +02:00
s-hadinger
9150de9df8
Matter try workaround for iOS 16.5beta1 (#18440) 2023-04-17 20:58:34 +02:00
Theo Arends
05f6bcf211 Bump v12.5.0.1 2023-04-17 10:10:55 +02:00
Theo Arends
8139c0756d Update changelogs 2023-04-17 09:56:56 +02:00
s-hadinger
e2e142f289
Zigbee fix compilation for future core (#18432)
* Zigbee fix compilation for future core

* More fixes for ESP32
2023-04-16 23:16:28 +02:00
s-hadinger
7f9f08fa87
Matter reduce memory usage (#18431) 2023-04-16 22:25:31 +02:00
s-hadinger
82e94108d4
Matter automatically exposes all detected Temperature sensors (#18430)
* Matter automatically exposes all detected Temperature sensors

* Read sensors every 30 seconds

* Fix sensor numbering
2023-04-16 22:09:09 +02:00
s-hadinger
de45a7af26
Berry add searchall() and matchall() to re module and pre-compiled patterns (#18429) 2023-04-16 17:43:49 +02:00
Theo Arends
96f6f69f13 Increase TasmotaClient receive buffer
Increase TasmotaClient receive buffer from 100 to 250 (#18427)
2023-04-16 14:39:29 +02:00
Theo Arends
e158b181d6 Add SDM72D_M config 2023-04-16 13:52:10 +02:00
Theo Arends
d95d56f3e4 Prep v12.5 2023-04-16 12:22:00 +02:00
ferix98
2a8b859e37
Added I2SRtttl command (#18423) 2023-04-16 12:04:22 +02:00
s-hadinger
3d0354b6fb
Matter increase CASE logs (#18426) 2023-04-16 09:53:52 +02:00
s-hadinger
0feba56d8e
Berry instrospect.name() to get names of functions, modules and classes (#18422) 2023-04-15 19:34:31 +02:00
s-hadinger
21c3812826
Matter reduce logging (#18420) 2023-04-15 18:33:29 +02:00
s-hadinger
35c3a62e9d
Matter fix conversion for peer_node_id (#18418) 2023-04-15 16:42:08 +02:00
Theo Arends
1e571e1d14 Update templates 2023-04-15 14:58:21 +02:00
s-hadinger
538b5a0aa6
Matter refactoring of IM messages (#18416) 2023-04-15 12:20:02 +02:00
bovirus
ae5dd61b8a
Update Italian language (#18415) 2023-04-15 12:16:54 +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
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
Theo Arends
36ae802924 Fix future compile error 2023-04-14 14:14:14 +02:00
Theo Arends
d88d42341d Fix future compile error 2023-04-14 12:01:47 +02:00
Jason2866
8402f49d0e
esp32 pre core 2.0.8 (#18408) 2023-04-14 10:27:52 +02:00
s-hadinger
009e07fd07
Berry json patches (#18407) 2023-04-13 22:51:55 +02:00
s-hadinger
0c0ab855f3
Matter refactor PASE parameters (#18406) 2023-04-13 22:21:33 +02:00
stefanbode
3da96a55d5
Fixes and enhancements autosetup from testbench (#18405) 2023-04-13 21:56:35 +02:00
Barbudor
870874d181
fix display of adcparam param4 for ct (#18397) 2023-04-13 09:04:17 +02:00
s-hadinger
b8483dfb6f
Matter refactoring of UDP sending (#18398) 2023-04-12 22:01:23 +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
s-hadinger
8ea91b7792
Berry fix rare crash in json parsing (#18395) 2023-04-11 23:13:02 +02:00
s-hadinger
f33ccac2df
Matter fix wrong unsupported messages (#18394) 2023-04-11 22:56:05 +02:00
Jason2866
5bf605340c
Fix S3 board name 2023-04-11 18:24:06 +02:00
stefanbode
1c0936c6d5
fix setting migration issue (#18383)
* fix setting migration issue

* next try to fix migration issue

@arendst: I saw you made also some changes to the xdrv122. I copied this and it looks like setting the crc32 was the root of the issue. You removed it and I do the same now. Looks much better.
2023-04-11 08:17:55 +02:00
s-hadinger
44dad1245d
Matter escape HTML farbic label (#18382) 2023-04-10 19:35:44 +02:00
s-hadinger
6007f2d970
Berry webserver.html_escape() reusing the internal HTML escaping function (#18381) 2023-04-10 19:16:01 +02:00
s-hadinger
0328915eab
Matter add fabric parent (#18380) 2023-04-10 18:59:42 +02:00
s-hadinger
3354e2acbf
Matter log unknown opcodes (#18379) 2023-04-10 16:20:11 +02:00
s-hadinger
4b272083d6
Berry fix solidify int type (#18378) 2023-04-10 15:45:07 +02:00
Theo Arends
a99274149f Minor Matter UI fixes 2023-04-10 15:09:18 +02:00
s-hadinger
506248be99
Matter various fixes (#18377) 2023-04-10 12:59:23 +02:00
gemu
f06104b0b7
Scripter update (#18374)
* bug fixes and enhancements

* tcp reconnect
2023-04-10 10:04:00 +02:00
s-hadinger
a8242d1ec5
Matter fix CASE with resumption (#18371) 2023-04-09 15:39:08 +02:00
Barbudor
52060259ce
improve ADC_CT (#18369) 2023-04-08 21:31:50 +02:00
stefanbode
86be6c8a3d
Additional limit check on tilt changes (#18364)
* limit check on tilt position

* limit check on tilt changes
2023-04-08 09:40:38 +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
bovirus
97993934f2
Italian language update (#18352) 2023-04-07 09:13:18 +02:00
s-hadinger
ff8f04eb41
Matter more logs (#18354) 2023-04-06 23:26:16 +02:00
s-hadinger
1a42320a16
Matter increase CASE logs (#18351) 2023-04-06 19:28:43 +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
Paul Blacknell
1be4d15f65
add: include EmergencyState in Thermostat sensor json payload (#18344) 2023-04-06 09:50:37 +02:00
s-hadinger
864c60c579
Matter remove fabric no reboot (#18345) 2023-04-05 23:02:26 +02:00
s-hadinger
822c6e702e
ESP32 LVGL library from v8.3.5 to v8.3.6 (no functional change) (#18342)
* ESP32 LVGL library from v8.3.5 to v8.3.6 (no functional change)

* Add changelog
2023-04-05 22:46:36 +02:00
s-hadinger
117d2550fc
Matter increase logs (#18343) 2023-04-05 22:35:31 +02:00
s-hadinger
6033be6e98
Matter minor fixes (#18341) 2023-04-05 22:09:42 +02:00
Theo Arends
9c6fdc7027 Sync discoveries 2023-04-05 14:06:43 +02:00
stefanbode
afd22b5b42
fix #18331 (Wrong discovery on ESP32_shutter (#18334)
* fix ESP32_shutter wrong discovery

* fix wrong discovers on ESP32 shutter

* fix wrong discovers on ESP32_shutter

* Update xdrv_12_discovery.ino
2023-04-05 13:47:12 +02:00
stefanbode
b287d05098
Enable motordelay for tilt operations (#18330)
* implement motordelay also for tilt operations

* enable motordelay for tilt operations

* Update xdrv_27_esp32_shutter.ino
2023-04-04 17:45:33 +02:00
stefanbode
f109d6ff72
Ensure Shuttermotorstop even on direct relay operation (#18329)
* Ensure motorstoptime also on direct relay change

When relay is triggered with button or switches it did not take the motorstoptime into account

* Ensure motorstoptime also on direct relay change

When relay is triggered with button or switches it did not take the motorstoptime into account

* Ensure motorstoptime also on direct relay change

When relay is triggered with button or switches it did not take the motorstoptime into account
2023-04-04 16:17:12 +02:00
Theo Arends
9993061c1a Update changelogs 2023-04-04 11:45:18 +02:00
Jason2866
d7af0ae077
Platformio small clean up and updates (#18325)
* clean up and updates
* no core 3.x settings
2023-04-03 18:54:43 +02:00
Zbyněk Kocur
b1ea413eae
Update xsns_86_tfminiplus.ino: FIX json output (#18321)
Fixes JSON measurement output. Output numbers like Distance and SignalStrength were published as a string. Now they have the right data type.
2023-04-03 16:47:44 +02:00
Theo Arends
542eca3154 Global fix http(s) connect issues 2023-04-03 16:12:29 +02:00
Theo Arends
6b2efa16dc Fix ESP32 WebQuery and WebGetConfig 2023-04-03 14:55:47 +02:00
Theo Arends
d9353cf1e3 Fix upload connection error 2023-04-03 14:17:08 +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
s-hadinger
1c72afbc1a
Matter support for Light and Relays (#18320) 2023-04-02 21:52:47 +02:00
s-hadinger
6499ec7142
Matter increase retries (#18317) 2023-04-02 16:50:13 +02:00
Theo Arends
326c605122 Prep support ESP32 enum SerialConfig 2023-04-02 14:20:03 +02:00
stefanbode
efa7ae492e
Fix webpage, when ESP32 driver used (#18305)
* Fix to enable ESP32 shutter

* required changes for dual operation with ESP32 shutter

* fix

* Fix missing information on webpage
2023-04-01 14:53:01 +02:00
s-hadinger
788208f131
Matter partial fix for Apple Homekit (#18313) 2023-04-01 11:51:34 +02:00
Jason2866
3dd154ab31
lib_archive = no (#18307) 2023-03-31 18:46:09 +02:00
stefanbode
d8f9a920ce
refactoring shutterbuttons completed (#18303)
* added support to set tilt with the shutterposition

Documentation will be changed.
OLD: shutterposition <position>
NEW: shutterposition <position>(optional)/<tilt>

e.g. shutterposition 50,-90

* refactoring of shutterbuttons completed

moved away from bitmatrix to struct Typedef to enable further development and functionality.
Added support to define tiltposition with shutterbuttons
2023-03-31 09:46:36 +02:00
Anton ACE
736ac74f53
xsns_103_sen5x bugfix (#18297) 2023-03-30 08:49:48 +02:00
Theo Arends
3cbe3dbf8b Create xdrv_27_esp32_shutter.ino 2023-03-29 15:58:46 +02:00
Theo Arends
2630c8e097 Delete xdrv_27_ESP32_shutter.ino 2023-03-29 15:58:26 +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
b321fab868 Refactor PCF8574 driver 2023-03-27 15:42:40 +02:00
Jason2866
50dfd30148
refac UPLOAD no build (#18277) 2023-03-27 11:46:40 +02:00
s-hadinger
9c01c3f6a0
Matter better logging for subscriptions (#18275) 2023-03-26 23:20:14 +02:00
s-hadinger
25b9bef597
Matter fix invoke_command by endpoint (#18274) 2023-03-26 21:57:27 +02:00
s-hadinger
90260e2381
Matter fix StatusReport and RemovFabric (#18271) 2023-03-26 19:57:43 +02:00
Jason2866
bbdd8e1eda
rm -Dxxxx=0settings (#18269)
* rm `-Dxxxx=0˙settings
* c3 no usb_mode
2023-03-26 17:09:45 +02:00
Theo Arends
61b8e95543 Fix ESP32 change baudrate (#17869) 2023-03-26 16:37:29 +02:00
s-hadinger
2afa863e54
Berry fix light.set() (#18268) 2023-03-26 15:59:18 +02:00
Theo Arends
0f08a07658 Fix PCF8574 input mode (#18232) 2023-03-26 15:05:16 +02:00
s-hadinger
537713caa8
Matter fix PartsList attribute (#18266) 2023-03-26 12:15:18 +02:00
Theo Arends
215c9cc30f Simplify base modes 2023-03-26 11:39:30 +02:00
s-hadinger
a04c771386
Matter implement counter_snd persistance (#18259) 2023-03-25 20:37:19 +01:00
Theo Arends
ebe308acfc refactor button/switch code 2023-03-25 18:15:24 +01:00
Theo Arends
4645af038c Add BASE 2 for absolute relays 2023-03-25 17:50:23 +01:00
pkkrusty
3daedae2da
Add speed and heading info to GPS driver (#18035)
* Add speed heading to driver

Added NAV-VELNED messages to driver, allowing speed and heading info on the main web page and JSON messages. Probably could be optimized; mostly another exercise in copy/paste

* wrap velocity code in #define USE_GPS_VELOCITY

Code space increases by 0k4, not sure about RAM (don't know how to measure). But added a struct with 320 bits, so maybe 40 bytes?

* Add documentation up top

---------

Co-authored-by: Theo Arends <11044339+arendst@users.noreply.github.com>
2023-03-25 15:37:38 +01:00
Theo Arends
1e1c536a50 Consolidate Energy Column Gui 2023-03-25 15:16:06 +01: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
pkkrusty
b456b97dda
Include fix state in JSON output (#18254)
Mirror the webpage display, and make fix status available for triggers and rules.
2023-03-25 10:23:58 +01:00
Theo Arends
56b3fbe917 Add MCP23xxx absolute buttons and switches 2023-03-24 18:00:24 +01:00
Theo Arends
938399e086 Add absolute button/switch support
Add absolute button/switch support (#18232)
2023-03-24 17:20:28 +01:00
stegerfa
0081022543
fixes building the sensor names in case of multiple channel thermostat function (#18248)
now it will follow SetOption64 (hyphen vs underscore)
hyphen is the standard - underscore the much safer option in my cases
as many user user underscore the mistake was not detected till now

Co-authored-by: Fabian Steger <git@fabian-steger.de>
2023-03-24 14:54:23 +01:00
s-hadinger
7abff936cd
Matter fix subscriptions (#18247) 2023-03-23 22:52:34 +01:00
bovirus
d7370e7211
Update italian language (#18240) 2023-03-22 20:11:00 +01:00
Theo Arends
eaeae1c0b7 Update changelogs 2023-03-22 13:39:46 +01:00
Theo Arends
00c60450c6 Consolidate messages
- Consolidate messages
- Fix sen5x
2023-03-22 13:25:55 +01:00
SteWers
ab03654e02
[Thermostat] Enhancement publishing of control method (#18235)
Enhancement publishing of control method. Independent, if hybrid mode is used or not.
2023-03-22 10:41:53 +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
s-hadinger
487ec87e4f
Matter support simple Relay on Apple Homekit (#18239) 2023-03-21 23:23:18 +01:00
s-hadinger
d6ed4adcf6
Berry add mdns.remove_service() (#18238) 2023-03-21 22:34:10 +01:00
s-hadinger
a36edadc0f
Berry fix tasmota.get_power(index) (#18237) 2023-03-21 22:30:50 +01:00
Jason2866
4fd6694efc
prevent crash when no firmware exits 2023-03-21 17:26:22 +01:00
Jason2866
985149c934
make sure to use actual env
for Upload without build
2023-03-21 16:43:45 +01:00
Jason2866
b71968729f
speed up erase flash 2023-03-21 15:04:22 +01:00
Jason2866
11645705e3
Flash firmware without run build (#18233)
* Flash without build
* Use firmwares from `build_output`
* simulate build with firmware from `build_output`
* rm debug code
2023-03-21 14:56:24 +01:00
Jeroen
a68bc49cab
Added option to output TCP requested modbus data to MQTT (#18231)
https://github.com/arendst/Tasmota/discussions/17369

Co-authored-by: JeroenSt <nospam@nospam.org>
2023-03-21 09:39:32 +01:00
Jeroen
fbbb4eaf84
Fix for issue: https://github.com/arendst/Tasmota/issues/18088 (#18228)
Co-authored-by: JeroenSt <nospam@nospam.org>
2023-03-20 21:26:38 +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
Jason2866
e0d67cee44
add Upload and Monitor to VSC Pio Menu bar 2023-03-19 23:26:32 +01:00
Barbudor
948a82d75e
Add virtual Buttons & Switches in Digtian driver (#18223)
* add support for virtual buttons or switches

* remove DINGTIAN key from SENSOR when using buttons-switches
2023-03-19 20:19:48 +01:00
Theo Arends
115105bf7c Consolidate energy messages 2023-03-18 18:26:43 +01:00
s-hadinger
e92e115451
Matter support Homekit commissioning (#18216) 2023-03-18 14:20:49 +01:00
Theo Arends
9a3a479c4f Reduce heap fragmentation 2023-03-17 21:17:53 +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
stefanbode
d0f4637611
Fix #18198 (#18204)
* Fix #18198

Fix wrong movement with tilt if additional endstop defined

* simplify
2023-03-16 14:38:04 +01:00
s-hadinger
09255d6373
Matter fix Network Featuremap (#18202) 2023-03-16 08:51:07 +01:00
Theo Arends
cc09ff21e1 Refactor RFSensor 2023-03-15 12:05:40 +01:00
Theo Arends
da4a1db300 Fix logging message 2023-03-15 10:01:17 +01:00
s-hadinger
1131ffada1
Matter refactor CASE sessions and QRCode (#18196) 2023-03-14 23:26:53 +01:00
s-hadinger
4ff9cf4e59
Berry coc support unicode (#18195) 2023-03-14 23:02:50 +01:00
Jason2866
0d3302ad04
Create settings.json (#18192) 2023-03-14 16:59:06 +01:00
Paul Blacknell
52227b0294
add: controller control method added to MQTT and Web UI (#18189) 2023-03-14 12:32:36 +01:00
Theo Arends
8d39ea2d66 Strict license (#18157) 2023-03-14 09:46:45 +01:00
Theo Arends
1a6076c253 Add flush before disabling tx (#17247) 2023-03-14 09:28:00 +01:00
Theo Arends
bda32739a8 Support for reset settings on filesystem 2023-03-13 15:41:21 +01:00
Pi57
2ce93bdddd
Teleinfo, update energy display (3 phases) (#18167)
Correct energy display and load bar display in case of 3 phases system
2023-03-13 08:24:10 +01:00
s-hadinger
0bc48d16c2
Berry add web_get_arg event to drivers when FUNC_WEB_GET_ARG event is processed (#18175) 2023-03-12 19:01:08 +01:00
s-hadinger
ded60556e2
Move matter strings to weak references (#18174) 2023-03-12 19:01:02 +01:00
s-hadinger
83812f158b
`UrlFetch` now follows redirects (#18173) 2023-03-12 18:48:12 +01:00
Theo Arends
76cea0c002 Fix Sonoff SC regression from yesterday
Update changelogs.
2023-03-12 11:11:57 +01:00
Gabriele Lauricella
7f64b6e04b
Enhanced TM1650 with 7-Segment commands like TM1637 (#18109)
* Enhanced TM1650 with 7-Segment commands like TM1637

* Fix point for display type 2
2023-03-12 09:22:40 +01:00
Edward Betts
b2deda94e2
Correct a spelling mistake (#18168) 2023-03-12 09:19:35 +01:00
s-hadinger
34bf941cd2
Berry add webclient collect_headers() and set_headers (#18166) 2023-03-11 21:46:08 +01:00
s-hadinger
4aa9aebae3
Berry add wc.set_follow_redirects(bool) (#18165) 2023-03-11 19:48:39 +01:00
Theo Arends
c74c92baed Add wifi current channel to GUI info screen (#18153) 2023-03-11 17:20:56 +01:00
Theo Arends
8a3546e5c4 Fix ESP32 energy period
Fix ESP32 energy period shows kWh value instead of Wh regression from v12.3.1.5 (#15856)
2023-03-11 17:01:43 +01:00
Theo Arends
2b89b7a134 Fix init order of device drivers (#18124) 2023-03-11 15:52:02 +01:00
Theo Arends
37d98bb52b Update changelogs 2023-03-11 14:29:33 +01:00
Christian Baars
52d341f87c
TFL: bugfix uninitialized pointer, some cleanups (#18161)
Co-authored-by: Christian Baars <christianbaars@MacBook-Pro-von-Christian.local>
2023-03-11 10:55:57 +01:00
Charles
f87cd7859a
Added special char to some values (#18145) 2023-03-10 15:05:27 +01:00
benderl
d25ef165b9
remove absolute url (#18148)
Co-authored-by: Lutz Bender <lutz@lutz-bender.de>
2023-03-10 15:04:13 +01:00
Jason2866
0456959fa8
Update platformio_tasmota32.ini (#18142) 2023-03-10 14:03:53 +01:00
s-hadinger
d7d23c7b9a
Zigbee send Tuya 'magic spell' to unlock devices when pairing (#18144) 2023-03-09 21:34:32 +01:00
s-hadinger
513b0fece1
Berry tasmota.cmd() can mute logs (#18143) 2023-03-09 21:29:18 +01:00
s-hadinger
ba1475f8cd
Berry refactor rule matcher (#18138) 2023-03-09 08:48:41 +01:00
s-hadinger
7167884f06
Haspmota change secondary colors for switch (#18133) 2023-03-07 19:16:59 +01:00
s-hadinger
be56618ace
Add I2C example for M5Stack DigiClock (#18132) 2023-03-07 19:04:35 +01:00
s-hadinger
77c654fcdc
Fix parameter for wire.endtransmission() (#18131) 2023-03-07 19:01:42 +01:00
s-hadinger
215838db1b
ESP32 LVGL library from v8.3.3 to v8.3.5 (no functional change) (#18128) 2023-03-06 20:04:02 +01:00
s-hadinger
af8dbe8724
Berry rule engine fix array index (#18123) 2023-03-05 22:35:16 +01:00
s-hadinger
eab1abadc0
Zigbee add Human presence sensor Zigbee (#18122) 2023-03-05 22:21:48 +01:00
s-hadinger
6bd73fc883
Refactored Berry rule engine and support for arrays (#18121) 2023-03-05 21:50:32 +01:00
Christian Baars
83f039cdf7
Berry: add tensorflow lite for microcontrollers (#18119)
Co-authored-by: Christian Baars <christianbaars@MacBook-Pro-von-Christian.local>
2023-03-05 16:46:18 +01:00
Barbudor
0f9bece011
fix topic comparison (#18114) 2023-03-05 07:52:30 +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
Jason2866
66b523ec2f
Back to pre core 2.0.7 (#18110)
since issues introduced with core 2.0.7
2023-03-04 21:18:09 +01:00
Jason2866
8df25ccf9c
esptool.py v4.5.1 for esp8266 (#18107)
to align with esp32 platform. No reinstall of pip installed packages
2023-03-04 16:52:12 +01:00
Theo Arends
ccdab295e7 Refactor PCF8574 driver 2023-03-04 15:06:52 +01:00
Theo Arends
6f44003cb5 Fix PZEM stabilize period on larger configs
Fix PZEM stabilize period on larger configs (#18103)
2023-03-04 11:56:54 +01:00
Jason2866
71e14d62fe
all scripts working (#18105)
* mv obj-dump.py
* add pre: and post: to scripts
2023-03-04 11:31:34 +01:00
Barbudor
6b016eb860
tariff command variant to force tariff (#18102) 2023-03-03 18:43:26 +01:00
Theo Arends
747ebae670 Add support for multiple PCF8574 as switch/button/relay 2023-03-03 17:40:27 +01:00
Theo Arends
cb988edba8 Prep PCF8574 virtual switch/button/relay 2023-03-03 16:54:57 +01:00
Jason2866
881c4f4a85
fix OTA_URL Safe Guard 2023-03-03 12:34:20 +01:00
Theo Arends
2e5501e9ab Add support for multiple MCP23008 as switch/button/relay 2023-03-03 10:44:35 +01:00
Theo Arends
c6f3fb7a86 Update changelogs 2023-03-03 10:32:19 +01:00
Theo Arends
453f0abad1 Revert "Update changelogs"
This reverts commit d07d4b06c9de730c27fdb6179363d930eb1d2b66.
2023-03-03 10:31:31 +01:00
Theo Arends
d07d4b06c9 Update changelogs
- Add MCP23008 virtual switch/button/relay support
2023-03-03 10:28:22 +01:00
Barbudor
edb2fad6c1
Tuya sequence fix (#18085)
* no additional command while waiting for response

* send wifi state 4 when mqtt is disabled
2023-03-03 08:42:27 +01:00
Charles
eb62555946
Added valid char check, not only use checksum (#18094) 2023-03-03 08:42:12 +01:00
Jason2866
fe46f4d654
Try to workaround extra_scripts issues 2023-03-02 20:57:17 +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
3cd8839b6d Fix ESP8266 compilation 2023-03-01 17:59:22 +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
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
Charles
873567a999
fix some errors (#18077)
fix some checksum errors in standard mode
fix format error counting for DATE field
2023-03-01 09:01:27 +01:00
Theo Arends
10cc10742f Extent virtual switch/button/relay support
Extent virtual switch/button/relay support using MCP23017. Can be used along side of current MCP23017 sensor driver,
2023-02-28 17:54:43 +01:00
Jason2866
deeed56610
Refactor set_partition_table.py (#18072) 2023-02-28 12:15:19 +01:00
Theo Arends
5cdd9791f4 Fix invalid apparent and reactive power 2023-02-28 10:17:30 +01:00
Jason2866
cadab815ef
pio script to set env PARTITIONS_TABLE_CSV (#18065) 2023-02-27 17:15:19 +01:00
Barbudor
39fd0cb0c4
add lt and gt signs is missing (#18064) 2023-02-27 16:33:31 +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
Charles
f574273bf9
display teleinfo stats on WEB UI (#18059) 2023-02-27 08:20:59 +01:00
Charles
1bfa110e73
fix compilation error with TELEINFO enabled (#18058) 2023-02-26 20:52:49 +01:00
Xavier MULLER
66271ca0dd
Update French localization (#18053) 2023-02-26 08:47:31 +01:00
Theo Arends
30504f090c update changelogs 2023-02-25 17:55:07 +01:00
Charles
1545f02fb3
Teleinfo, add stats and more checksum controls (#18052)
* added teleinfo config show_stats parameter

* Added new command and more checksum test
2023-02-25 17:39:33 +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
Charles
1b5c4768d1
Libteleinfo update to V1.1.5 (#18050)
* Updated to V1.1.5

* Updated to V.1.1.5

Added new End Of Transmission code from Standard Mode
Check back checksum before returning stored values (corruption checks)
Added error counters stats
Removed dirty linked list align #pragma for ESP target
2023-02-25 15:56:33 +01:00
gemu
0aaa616881
support for double and intergers (#18039) 2023-02-25 09:58:47 +01:00
gemu
c752610bb7
modbus tcp, uart select (#18038) 2023-02-25 09:58:33 +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
s-hadinger
faa41ea230
Matter adjustments (#18036) 2023-02-23 21:48:11 +01:00
s-hadinger
e80d053aa0
Matter finish subscription (#18027) 2023-02-23 09:38:58 +01:00
Jason2866
6a6d7a1521
add specific firmware image names (#18021)
* add image names
* rm duplicate define
2023-02-22 12:42:12 +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
dca1b5bcff Refactor ADE7953 for ESP8266 2023-02-22 10:30:47 +01:00
s-hadinger
9561098e3a
Matter support multi-fabric (#18019) 2023-02-21 23:27:13 +01:00
s-hadinger
8a15f0426f
Matter support subscription removal (#18018) 2023-02-21 23:02:13 +01:00
s-hadinger
103041cd1a
Matter support for subscriptions (#18017) 2023-02-21 21:46:54 +01:00
Theo Arends
2827bdec22 Update changelogs 2023-02-21 17:19:25 +01:00
Jason2866
47da60f280
ESP32 Framework (Core) v2.0.7 2023-02-21 13:27:03 +01:00
Jason2866
8f17820a43
Update to Tasmota Arduino ESP32 Core 2.0.7 (#18014)
* Tasmota Arduino ESP32 Core 2.0.7
2023-02-21 13:08:27 +01:00
Barbudor
dbcffa66e4
Fix ir panasonic esp8266 (#18013)
* revert part of #16179 for ESP8266

* Revert "revert part of #16179 for ESP8266"

This reverts commit b8e61264074f0dd92e5fca29a991d31c97f8f9ee.

* try to revert #16179 for esp8266
2023-02-21 09:13:00 +01:00
Jason2866
84442dcd39
OTA_URL safeguard (#18010) 2023-02-20 22:36:34 +01:00
Theo Arends
3ce011c2ce Attempt to stabilize Shelly Pro 4PM values 2023-02-20 18:02:43 +01:00
Jason2866
d2f450316c
Set correct OTA URL for all Tasmota build env (#18008)
* OTA URL Part 1

* typo

* OTA URL Part 2

* OTA URL Part 3

* fix s2 safeboot

* formatting

* rm whitespace

* more beautify

* last whitespace
2023-02-20 15:21:24 +01:00
Theo Arends
692e9090c8 Attempt to stabilize Shelly Pro 4PM values 2023-02-20 11:31:12 +01:00
AleXSR700
2d83c335bc
Update xdrv_79_esp32_ble.ino (#17990)
Increase maximum length of Alias as the short MaxAlias is not in line with name length and limits the user (e.g. if sensors have room names as appendix like "_master_bathroom").
2023-02-20 10:51:44 +01:00
gemu
c1dec03adb
fix epaper 29 non-universal display (#17999)
* make v1 configurable

* fix ep29 v1
2023-02-19 22:25:45 +01:00
s-hadinger
dcbf50a918
Matter automatic ifdefs (#18002) 2023-02-19 22:25:29 +01:00
Jason2866
64083c902e
Delete settings.json (#18001) 2023-02-19 21:52:35 +01:00
s-hadinger
a26458a136
Matter read/write and commands (#18000) 2023-02-19 21:37:33 +01:00
Theo Arends
a994c71de4 Refactor device_present calculation 2023-02-19 15:28:20 +01:00
Flobul
f0eef7771f
add BLE Qingping CGDK2 (#17981)
* add CGDK2

* Update xsns_62_esp32_mi_ble.ino

* Update xsns_62_esp32_mi_ble.ino
2023-02-19 14:09:12 +01:00
gemu
90dc644412
make v1 configurable (#17987) 2023-02-19 11:30:54 +01:00
Theo Arends
5eecd7f7b4 Update text 2023-02-18 22:56:53 +01:00
Theo Arends
dfe434bb92 Prep MCP23xxx interrupt support 2023-02-18 16:05:56 +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
drid
3be29dfecd
Fix 1-pin ultrasonic sensor detection (#17966)
* Fix 1-pin ultrasonic sensor detection

Signed-off-by: Ilias Daradimos <judgedrid@gmail.com>

* Fix typo

---------

Signed-off-by: Ilias Daradimos <judgedrid@gmail.com>
2023-02-17 22:34:40 +01:00
Barbudor
119aeca4d9
oversample ADC_RANGE by 32 like ADC_INPUT (#17975) 2023-02-17 22:33:06 +01:00
Philipp
d8d9c549ab
fix display colors; remove unnecessary lines (#17973) 2023-02-17 19:42:14 +01:00
Theo Arends
4c59b5b8d1 Fix Energytotals cannot be set to negative values
Fix Energytotals cannot be set to negative values (#17965)
2023-02-17 10:53:07 +01:00
gemu
19b183cbee
add gcm frame variant (#17964) 2023-02-17 08:38:02 +01:00
Tyeth Gundry
774fbfef92
fix floats, resolutions, and utilise common units (#17961) 2023-02-17 08:37:06 +01:00
Theo Arends
208c70adf2 Bump version v12.4.0.1 2023-02-16 14:19:31 +01:00
Theo Arends
8eb3879d98 Update changelogs 2023-02-16 13:07:47 +01:00
s-hadinger
beb1876815
Berry int64.fromstring() to convert a string to an int64 (#17953) 2023-02-15 20:52:02 +01:00
Theo Arends
e1b11a6fe7 Fix Tuya Exception 3 (#17941) 2023-02-15 16:33:29 +01:00
Theo Arends
0ea36d996c Change Dht driver from v6 to v7
- Change Dht driver from v6 to v7
- Add command ``DhtDelay<sensor> <high_delay>,<low_delay>`` to allow user control over high and low delay in microseconds (#17944)
2023-02-15 15:21:57 +01:00
Theo Arends
31f5b79bf8 Fix adding virtual switches 2023-02-15 11:06:53 +01:00
s-hadinger
fcec5a5b7b
LVGL allow access to lv.LAYOUT_GRID and lv.LAYOUT_FLEX (#17948) 2023-02-14 19:41:26 +01:00
s-hadinger
b9281e5186
Matter fix Wifi mdns announce (#17943) 2023-02-13 22:55:09 +01:00
Theo Arends
87686c0d52 update changelogs 2023-02-13 16:07:38 +01:00
s-hadinger
bc7ef89b3c
ESP8266 Fix TLS SNI which would prevent AWS IoT connection (#17936) 2023-02-12 21:33:13 +01:00
s-hadinger
3ea69f7d7b
Many matter improvements (#17935) 2023-02-12 20:45:28 +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
ec56473631 Refactor XxxSet and XxxCal energy commands 2023-02-12 14:05:33 +01:00
Theo Arends
dbffcac195 Shelly Pro 4PM reduce number of SPI updates 2023-02-12 12:19:02 +01:00
Barbudor
4ad6807d7e
Fixes GPS bad year + drift calculation (#17932) 2023-02-12 08:44:40 +01:00
Theo Arends
5d3f2cc316 ESP8266 increase number of discovery relays 2023-02-09 16:02:06 +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
d029d8bcbc Fix Shelly Pro 4PM switch states 2023-02-08 17:08:13 +01:00
Theo Arends
7a2b5177ac Fix Shelly Pro 4PM calibration regs 2023-02-08 14:14:49 +01:00
Jason2866
40be97e6d9
SD Card support for >1MB tasmota (#17916) 2023-02-08 12:38:10 +01:00
Theo Arends
1c1f6c638f Add commands PowerCal, VoltageCal and CurrentCall
Add commands PowerCal, VoltageCal and CurrentCall to CSE7766/HLW8032 energy driver
2023-02-08 10:50:34 +01:00
sfromis
387d3486d5
Typo in I2CDEVICES (#17908)
Sensor name TSL2591 was misspelled. Is this file automatically duplicated on docs, or should I fix the copy there?
2023-02-07 13:52:33 +01:00
gemu
ff165bfe8c
reduce display frequency (#17906) 2023-02-07 09:11:40 +01:00
gemu
6f0b646b56
fix missing comma (#17904) 2023-02-07 09:11:04 +01:00
s-hadinger
43b6f91cf2
Berry implement more attributes and commands (#17903) 2023-02-07 02:55:20 +01:00
s-hadinger
dc245c57b1
Berry allow bool key (#17902) 2023-02-07 02:55:12 +01:00
Jason2866
4cb9acec65
Fix PR#17893 (#17901) 2023-02-06 22:21:16 +01:00
SteWers
1d5da9b73b
[SolaxX1] Updated safety descriptions (#17887)
* [SolaxX1] Updated safety descriptions

Updated safety descriptions

* [Solax X1] disable `#define SOLAXX1_READCONFIG` by default

disable `#define SOLAXX1_READCONFIG` by default
2023-02-06 20:18:38 +01:00
Theo Arends
f76d7ee8cf Tune TM1638 key/leds 2023-02-06 18:07:05 +01:00
Theo Arends
289703c97a Update my_user_config.h 2023-02-06 16:03:50 +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
gemu
6ccacb4af1
Sml fix (#17893)
* fix compile with NO_USE_SML_DECRYPT

* dumplog info
2023-02-06 09:42:09 +01:00
s-hadinger
d23e598d6b
Matter support Privacy decryption (#17891) 2023-02-05 23:05:51 +01:00
Philipp
da81d25fb5
Use dark mode for Pro 4PM display (#17888)
Use dark mode by default for the Shelly Pro 4PM display
2023-02-05 19:17:35 +01:00
Theo Arends
9517677fb2 Fix initial displaydimmer state 2023-02-05 16:54:25 +01:00
Theo Arends
c699131103 Add Shelly Pro 4PM to lvgl binary 2023-02-05 16:22:18 +01:00
Theo Arends
57ff415d0e Merge branch 'development' of https://github.com/arendst/Tasmota into development 2023-02-05 15:13:56 +01:00
Theo Arends
0ebcf1dc03 Fix exception on empty topic (#17879) 2023-02-05 15:13:44 +01:00
s-hadinger
9126417836
Matter fully implement attribute 0030/0000 (#17885) 2023-02-05 15:11:51 +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
sfromis
5025e86d75
Meaning of SetOption15 swapped (#17884)
Noticed that the text incorrectly said value 1 for direct PWM control, and 0 for the default as a light.
2023-02-05 13:34:02 +01:00
Theo Arends
9bf1bd93c0 Add some display safeguards fixing power issues at restart 2023-02-05 12:52:21 +01:00
Theo Arends
36b9e4ab78 Fix universal display driver too early power control 2023-02-04 18:24:21 +01:00
Theo Arends
cfd34aa02c Fix Shelly Pro 4PM issues
- Fix random ADE7935 measurements
- Fix relay 1 toggle on restart
- Add Shelly Pro 4PM display.ini
2023-02-04 17:48:53 +01:00
bovirus
a581fc237d
Italian language update (#17877) 2023-02-04 16:09:56 +01:00
s-hadinger
a483991ba3
ESP32 preliminary support for Matter protocol, milestone 1 (commissioning) (#17871)
* ESP32 preliminary support for Matter protocol, milestone 1 (commissioning)

* Fix case
2023-02-04 00:00:21 +01:00
Fabrizio Amodio
e8056df1ad
Biopdu-v1.1.1 (#17868)
* Template Fix

* Removed common setting, use SetOption150 instead

* code cleaning

* BioPDU Factory Settings

* CHANGELOG update

* RELEASENOTES update
2023-02-03 17:52:26 +01:00
Norbert
de81eecc01
Change log option for "decrypted block" (#17863) 2023-02-03 10:50:53 +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
1147304781 Fix second voltage channel if SO150 set 2023-02-01 12:09:55 +01:00
David Gwynne
052b5c2926
reset recv parser if it takes too long for the message to arrive. (#17845)
i have a tuyamcu based device that occasionally gets a flipped bit in
messages it receives from the muc. those usually show up as checksum
failures, but if the bit flips in the length field then we wait for
bytes that just arent going to arrive, so we don't get to the cksum
field for that test to fail. instead, add a timeout that the tick
checks, and reset the recv state machine on a timeout.

if the message that was corrupted was a dp update, we'll end up with
an inconsistent view of the state of the DPs. maybe we should send a
request for all datapoint values when this or a cksum failure happens?
2023-02-01 11:48:07 +01:00
s-hadinger
293ae8064d
Berry webserver raw content (#17844) 2023-01-31 23:23:52 +01:00
s-hadinger
5ea9a95660
Berry add tasmota.locale() (#17843) 2023-01-31 23:23:36 +01:00
s-hadinger
bd07b05d40
Berry add `mdns` advanced features and query (#17842)
* Berry add ``mdns`` advanced features and query

* typo
2023-01-31 22:53:23 +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
SteWers
438b235dc8
[Solax X1] fix apparent power (#17833)
U*I from inverter is not valid for apparent power as U*I could be lower than active power
2023-01-31 22:23:31 +01:00
gemu
ae8041140f
Webcam fix (#17840)
* Update xdrv_81_esp32_webcam.ino

* fix single picture fetch

* delay not needed
2023-01-31 22:22:28 +01:00
Jason2866
b8677ce0d6
revert PR Olimex fix (#17841) 2023-01-31 14:46:09 +01:00
Jason2866
2207d08cfa
rm non existing env tasmota32-sensors 2023-01-31 11:41:41 +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
gemu
f09a083777
Sml ams (#17828)
* sml ams crypto support

* add ams library

* fix crc names

* fix TLS dependency

* Update library.properties

* Update xsns_53_sml.ino
2023-01-30 15:03:46 +01:00
Theo Arends
9e9afe88f1 Fix ESP32 energy monitoring over 3 phases 2023-01-30 14:16:13 +01:00
Theo Arends
5b0ee76173 Fix ESP32 energy monitoring migration 2023-01-30 13:14:02 +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
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
91559ec883
fix: detection of SPS30 serial number (#17809) 2023-01-29 13:48:33 +01:00
Jason2866
400f0e453e
IDF 4.4.3 changes (#17821)
- updated mDNS to version from esp-protocols
- added PHY driver
2023-01-29 13:06:13 +01:00
s-hadinger
03815d827a
Berry energy_ctypes fixed accordingly (#17820) 2023-01-29 12:09:29 +01:00
s-hadinger
b98b2838e8
Zigbee extend plug-in modifiers to 16 bits (#17817) 2023-01-29 10:46:06 +01:00
David Smith
19d5a363e1
Multicast address typo in my_user_config.h (#17816)
For ArtNet Multicast address the defined value and the value in the comment are different.
2023-01-29 08:48:23 +01:00
Tyeth Gundry
2ed602057c
Add SEN5X to I2C devices (#17736) 2023-01-29 08:06:25 +01:00
David Gwynne
9e522e8fa3
fix determination of the current weekday. (#17812)
the result of c logical expressions is 0 or 1, not the values of the
operands.
2023-01-29 07:58:20 +01:00
Theo Arends
78fe958d89 Fix energy dummy supporting 8 channels 2023-01-28 13:47:37 +01:00
Theo Arends
76a1c00917 Add more energy verbosity at restart 2023-01-28 11:30:42 +01:00
Theo Arends
e9f8cfa338 Enable ESP32 energy driver 2023-01-28 11:06:25 +01:00
Theo Arends
e77154f406 Enable ESP32 energy driver 2023-01-28 11:03:14 +01:00
Barbudor
4dd97a9e82
non-breaking fix year in DS3231 (#17803) 2023-01-28 08:04:34 +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
0b81236110 Prep ESP32 energy expansion 2023-01-27 16:41:55 +01:00
Theo Arends
5b977bf4e4 Merge branch 'development' into dev-energy 2023-01-27 16:00:44 +01:00
Theo Arends
f6827590f3 Prep new energy driver 2023-01-27 15:53:40 +01:00
gemu
103e3f616a
refactoring and bug fixes (#17798) 2023-01-27 11:10:43 +01:00
Theo Arends
9f538e9986 Add ESP32 support for four channels 2023-01-26 17:27:49 +01:00
Theo Arends
d70dbe979e Prep ESP32 energy for four+ phases 2023-01-26 15:26:10 +01:00
thkaiser
8d782caf15
Support ESPC3 and ESPS3 (#17791)
* Support ESPC3 and ESPS3

* remove debug comment

Co-authored-by: Jason2866 <24528715+Jason2866@users.noreply.github.com>
2023-01-26 09:58:59 +01:00
Theo Arends
2529759974 Prep energy for four+ phase support 2023-01-25 17:05:48 +01:00
Barbudor
973e4693c2
possibly fix sleep problem (#17786) 2023-01-25 08:36:14 +01:00
Theo Arends
e891830545 Prep ESP32 energy 2023-01-24 16:54:03 +01:00
Theo Arends
e81d59f658 Fix Shelly Pro 4PM initial button state 2023-01-24 16:34:24 +01:00
Theo Arends
ecac466e23 Fix Shelly Pro 4PM power on reset 2023-01-24 12:04:30 +01:00
Theo Arends
36c8ae98da Add dark theme logo 2023-01-24 10:48:38 +01:00
Theo Arends
5d98b8e05a Update RELEASENOTES.md 2023-01-24 10:27:47 +01:00
Theo Arends
f0bd418129 Dark logo 2023-01-24 10:19:46 +01:00
LenaWil
17a969dcc8
Add dark mode logo (#17780)
* Add dark mode logo

* Remove st from readme

Typo?
2023-01-24 08:58:31 +01:00
Barbudor
95dee75b0b
use dB value, not quality (#17777) 2023-01-24 08:55:44 +01:00
David Gwynne
1c39ff6cef
add tuyamcubr_web_sensor to do a simple display of the dp values. (#17776)
the format shows the type+dpid on the left hand side (eg, Bool1,
Value2, Enum3, etc), and the value with %u on the right hand side.
2023-01-24 08:55:28 +01:00
David Gwynne
36fd8358d6
TuyaMCUBr: support on/true/off/false/toggle in the tuyamcubool command. (#17775)
* support on/true/off/false/toggle in the tuyamcubool command.

i wanted a tasmotized wall switch to be able to blindly send "toggle" to
a fan/light and have it do the right thing. the dp value is kept by the
driver, so it can easily read, modify, and write it.

* "on"/"off"/"toggle" etc are parsed when XdrvMailbox is set up

so i don't have to do it, i just have to use the payload.
2023-01-24 08:54:19 +01:00
Barbudor
db0532de5f
ds3231 temperature sensor (#17778) 2023-01-24 08:52:43 +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
yvesdm3000
3f73d5a49d
Implement Zigbee tuya_time sync. (#17765) 2023-01-22 11:50:52 +01:00
gemu
d38a0c799c
Epaper deep sleep support (#17766)
* allow descriptor reload

* restart reason rrsn, database rewrite

* support for deep sleep

* revert

* restart reason
2023-01-22 10:56:06 +01:00
Theo Arends
8b96f68a5b Fix ESP8266 compilation 2023-01-21 15:42:31 +01:00
Theo Arends
c85003c67d Prep Shelly Pro 4PM 2023-01-21 14:30:35 +01:00
s-hadinger
0743b7d2b6
Berry add up flag to `tasmota.wifi() and tasmota.eth()`, always return MAC (#17759) 2023-01-21 13:41:36 +01:00
Jason2866
2605a7158c
Build solo1 variant as full Tasmota32 version 2023-01-21 12:02:39 +01:00
Theo Arends
aa78ffb733 Prep Shelly Pro 4PM 2023-01-20 14:28:58 +01:00
Benjamin Nestler
498b0e55b8
Add tuya commands CMD_GET_NETWORK_STATUS and CMD_TEST_WIFI (#17745)
* Add tuya commands CMD_GET_NETWORK_STATUS  and CMD_TEST_WIFI

* Assuming that nobody uses the tuya test wifi ssid, the payload is hardcoded.
2023-01-20 13:20:03 +01:00
Jason2866
6b4171fef9
Shelly has label fs_1 for spiffs (#17753)
* Shelly has label `fs_1` for spiffs
2023-01-20 13:19:38 +01:00
David Gwynne
51866026d5
TuyaMCUBr: Handle "Get local time" requests from the MCU (#17750)
* handle get local time requests from the MCU.

from what i can tell from the tuya serial communication protocol
documentation, we only have to send the time if MCU requests it. this is
unlike how TUYA_SET_TIME is implementing in xdrv_16, where if
USE_TUYA_TIME is enabled it will send unsolicited time updates every
minute as well as in response to a request from the MCU.

i couldn't find an easy to check flag to see if tasmota was synced to a
real clock, so this blindly tells the MCU that our time is valid and
copies it over, the same as xdrv_16.

the tuya doco also describes a "Get system time in GMT" request and
response structure which would be mostly a copy of this code if i knew
if and where tasmota keeps track of UTC/GMT.

lastly, i'm not convinced RtcTime.day_of_week is right. it's friday
here which should be 6 if you start counting sunday as 1, but i read 2

* local time sync is implemented, but not gmtime
2023-01-20 10:07:42 +01:00
TID
e2983f2835
Update pl_PL.h (#17747)
Fix traslation
2023-01-20 10:03:05 +01:00
s-hadinger
61be95841f
Berry crypto.EC_P256 ECDSA signature ASN.1 (#17740) 2023-01-18 20:50:01 +01:00
gemu
bc1b35d2ff
Update xdsp_05_epaper_29.ino (#17738) 2023-01-18 08:50:22 +01:00
gemu
853909cb35
Epaper update (#17727)
* update epaper descriptors

* epaper rewrite

* add busy invert option

* fix v2 partial refresh

* prepare for large descriptors
2023-01-17 10:19:06 +01:00
gemu
beb021210d
fix shine macros (#17725) 2023-01-17 09:06:20 +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
s-hadinger
457f706d17
Berry `crypto.EC_P256` ECDSA signature (required by Matter protocol) (#17723) 2023-01-16 21:48:28 +01:00
Theo Arends
e2c9a71c3b Prep virtual button handler 2023-01-16 18:29:51 +01:00
Theo Arends
044606d8b8 Fix BMP deepsleep regression 2023-01-16 13:32:44 +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
Barbudor
2d1d49504b
fix free() too early (#17710) 2023-01-15 16:20:35 +01:00
Theo Arends
e0b17af307 Fix first sensor in case GlobalTemp is set wrong
Fix first of two sensors in case GlobalTemp is set wrong (#17694)
2023-01-14 16:11:08 +01:00
Theo Arends
f71465a182 Repurpose SO39 for import active bandwidth
Repurpose SO39 for import active bandwidth (#17659)
2023-01-14 15:39:54 +01:00
s-hadinger
4e60bd7465
Berry add static class to declare inner classes (#17699) 2023-01-14 11:38:51 +01:00
Theo Arends
6c04cf7076 Update xdrv_122_file_settings_demo.ino 2023-01-13 17:19:46 +01:00
Theo Arends
13c16fd37b Fix xdrv_122_file_settings_demo (#17692) 2023-01-13 17:19:14 +01:00
Theo Arends
ce5e1df673 Fix DNS lookup for `upload`
Fix DNS lookup for ``upload`` from ota server using http regression from v12.3.1.1
2023-01-13 17:06:16 +01:00
gemu
3bddbdc5c0
fix sml dumpmode (#17690) 2023-01-13 13:23:25 +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
s-hadinger
9ba3c26a8a
Berry fix crash when generating bytecode of empty class (#17688) 2023-01-12 22:51:43 +01:00
s-hadinger
1acd9b867c
Berry add implicit _class parameter to static methods (#17683)
* Berry add implicit ``_class`` parameter to static methods

* Handle bytecode
2023-01-11 22:59:07 +01:00
Reinhard
ef3d30c44f
Update xsns_47_max31865.ino (#17661)
MAX31865 - make use of the already defined element 'ErrorCode' to transport the MAX31865 Fault Status Register to the JSON element 'Error'
2023-01-11 11:50:16 +01:00
Theo Arends
f1763d34cf Update changelogs 2023-01-11 10:31:39 +01:00
Jason2866
0a0c8c6efd
Rename tasmota4MB to tasmota-4MB (#17674) 2023-01-10 17:28:56 +01:00
Jason2866
922fd6ca5c
add Tooltipps and more Commands 2023-01-10 15:39:31 +01:00
Theo Arends
f9177dfa3a Revert CSE7766 8N1 support - not needed 2023-01-10 09:48:49 +01:00
Ralph Maschotta
b0094a0ddf
fix (PR #17643) BMP/BME sensors on two I2C buses: copy/paste typo (#17663) 2023-01-10 08:59:33 +01:00
bovirus
12b2dd2e50
Update italian language (#17662) 2023-01-10 08:58:52 +01:00
Barbudor
de900e17bb
add CCS811_V2 in I2CDevices list (#17651) 2023-01-09 13:55:06 +01:00
Theo Arends
8b70608e58 Add more ESP32 logging 2023-01-09 13:53:07 +01:00
Theo Arends
a4fe1b88f9 Add HLW8032 8N1 2023-01-09 11:04:52 +01:00
Theo Arends
24105a74b2 Save some RAM on ESP8266 2023-01-08 17:51:17 +01:00
Theo Arends
9f8c8efac1 Delete .xdrv_65_tuyamcubr.ino.swp 2023-01-08 17:37:23 +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
12d7651758 Fix shutter JSON responses 2023-01-08 14:35:09 +01:00
Theo Arends
1fb7c13f4c Merge branch 'development' of https://github.com/arendst/Tasmota into development 2023-01-07 17:31:23 +01:00
Theo Arends
95690ab1b9 Add recursive rule MQTT subscribe support (#16943) 2023-01-07 17:31:10 +01:00
Jason2866
2b0234c299
Tasmota VSCode settings.json (#336) (#17640)
* Tasmota VSC custom menu
2023-01-07 17:13:22 +01:00
Theo Arends
dad059737d Change PID temperature update (#17636) 2023-01-07 16:11:30 +01:00
Theo Arends
2e7496a052 Keep webserver enabled on command `upload` 2023-01-07 15:37:52 +01:00
gemu
7465ff0c7f
some fixes on counters (#17628) 2023-01-07 11:32:26 +01:00
gemu
2f1e36e1bf
Epaper29 v2 (#17627)
* support for v2

* Update ST7262_rgb16_display.ini
2023-01-07 11:31:48 +01:00
s-hadinger
5e89578403
Extend fix #17619 to non-IPv6 (#17621) 2023-01-06 19:03:07 +01:00
Theo Arends
edc7cd5bc3 Add a coffee 2023-01-06 17:08:53 +01:00
Theo Arends
0b2a375dee Update changelogs 2023-01-06 16:04:04 +01:00
Theo Arends
0b3c237627 Change strtod() into CharToFloat() saving 8k code
Change strtod() into CharToFloat() saving 8k code
2023-01-06 15:28:44 +01:00
Theo Arends
af733afbe5 Fix PID-Control parameter destruction
Fix PID-Control parameter destruction and replace all atof() by CharToFloat() saving 8k code size (#17618)
2023-01-06 14:58:19 +01:00
s-hadinger
33d6dbed3d
No IP address shown when in AP moode (#17599) (#17619) 2023-01-06 14:03:16 +01:00
Theo Arends
7d94a2c89e Fix Slovak language Id 2023-01-06 10:15:12 +01:00
Theo Arends
8275cb776e Fix rule mqtt subscribe payload size
Increase rule event buffer from 100 to 256 characters (#16943)
2023-01-05 15:02:55 +01:00
Jason2866
6b5f0e4e7c
Prepare support for JL1101 PHY (#17607) 2023-01-05 13:04:06 +01:00
s-hadinger
7104d10d61
Berry add spake2+ mods needed for Matter (#17598) 2023-01-04 21:22:07 +01:00
Theo Arends
ae1c38aea8 Removed SetOption177 debugging (#17500) 2023-01-04 15:29:27 +01:00
Theo Arends
ff8291f77d Add support for filesystem calib.dat 2023-01-04 15:00:43 +01:00
Theo Arends
cd182a5814 Add TfsLoadString() 2023-01-04 12:00:09 +01:00
s-hadinger
d59caa7203
Berry `crypto.AES_CCM` (required by Matter protocol) (#17586) 2023-01-03 20:26:46 +01:00
s-hadinger
f570dcc913
Berry bytes() now evaluates to false if empty (#17585) 2023-01-03 19:43:41 +01:00
Theo Arends
481cc63bf4 Add script support to Energy Modbus 2023-01-03 17:50:39 +01:00
gemu
82ed5f0d06
Modbus section (#17583)
* modbus section

* Update xnrg_29_modbus.ino

* Update xnrg_29_modbus.ino

* Update xnrg_29_modbus.ino
2023-01-03 17:41:37 +01:00
Theo Arends
65476c3b32 Add energy modbus configs 2023-01-03 17:05:18 +01:00
Theo Arends
18c38ec05d Add support for filesystem file modbus.json 2023-01-03 15:10:05 +01:00
Theo Arends
3810b78ef8 Add energy var update at power on next day 2023-01-03 12:24:34 +01:00
s-hadinger
dfc01cd3a4
Fix crash when getting IP address (#17576) 2023-01-03 09:33:31 +01:00
Theo Arends
555b434361 Fix Energy single column values 2023-01-02 17:48:51 +01:00
Theo Arends
ea6a5a2d4e Removed delays in TasmotaSerial and TasmotaModbus Tx enable switching 2023-01-02 15:08:40 +01:00
Theo Arends
e375448090 Update change logs 2023-01-02 12:31:46 +01:00
Theo Arends
10af47f8f4 Fix swapped voltage/power in energy dummy 2023-01-02 12:26:40 +01:00
Theo Arends
404589c860 Enable USE_WE517 in tasmota32.bin 2023-01-02 11:38:08 +01:00
Theo Arends
cb6dd75d8b Fix Orno-we-517 serial config
Fix Orno-we-517 serial config on esp32
2023-01-02 09:50:21 +01:00
Theo Arends
ed0b7d69b6 Tune Tx Enable timing 2023-01-01 15:12:15 +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
kaedwen
25b4040283
Light driver for PCA9632 (#17557)
* added PCA9632 driver

* compiling

* added BUILD and DEVICES section

* added PCA9632 module

* use I2C_SDA/SCL

* light driver working

* bulk write and pin mapping

* remove debugging

* remove debugging

* adjust comments

Co-authored-by: Pascal Heinrich <kaedwen@heinrich.blue>
2023-01-01 14:02:22 +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
gemu
ca82877362
fix multiple subscribes (#17567) 2023-01-01 09:54:17 +01:00
Jason2866
a334826906
fix board type 2022-12-31 16:51:53 +01:00
Theo Arends
20a50ffc2e Revert Tuya rewrite
- Update changelogs
2022-12-31 16:08:59 +01:00
Alexey Baturin
04c90dc67d
Add alternative wiring of TM1650 (#17556)
303WIFILC01 model of clock used different wiring which needs remapping
2022-12-31 12:45:59 +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
587e8299d6 Add debugging info to modbus.ino 2022-12-30 16:56:36 +01:00
gemu
22803e3e3d
Sml update (#17541)
* fix sysvarsbug, update sml

* major rewrite
2022-12-30 08:41:54 +01:00
Barbudor
99d33e3023
PCF8574 Overridable address ranges (#17539)
* pcf8574 overridable address ranges

* fix comment

* better test on USE_MCP230xx

* missing change
2022-12-29 21:55:28 +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
Theo Arends
31a53148c6 Add NRG modbus features
- User JSON name needs to be different from embedded register names
- If no user GUI name is given it will only show in JSON
2022-12-28 17:45:13 +01:00
Theo Arends
35b4bfcb3f Fix initial user added modbus field:value pair 2022-12-28 17:06:54 +01:00
Theo Arends
c1484f761c Fix exception 9 when modbus tx enable is used 2022-12-28 15:19:09 +01:00
Theo Arends
2e1f8fd756 Update changelogs
Change ESP32 Framework (Core) from v2.0.5.4 to v2.0.6 (IPv6 support)
2022-12-28 14:31:49 +01:00
Jason2866
fa466d91ff
Tasmota core 2.0.6 (#17493)
* Tasmota core 2.0.6

* PR template core 2.0.6
2022-12-28 14:10:45 +01:00
Theo Arends
2fd63ff01f Fix Modbus transmit enable GPIO
Fix Modbus transmit enable GPIO enabled once during write buffer
2022-12-28 14:07:30 +01:00
s-hadinger
ef4138bdaa
Support for IPv6 only networks on Ethernet (not yet Wifi) (#17527) 2022-12-27 21:59:34 +01:00
s-hadinger
ef1211b51f
Change compile options for ESP8266 IPv6 (#17526) 2022-12-27 21:27:03 +01:00
s-hadinger
790b6feae6
Change NTP default servers to dual-stack (IPv4/IPv6) (#17525) 2022-12-27 20:59:56 +01:00
s-hadinger
1ae8b381ba
Fix warnings when compiling Zigbee (#17524) 2022-12-27 20:55:51 +01:00
Theo Arends
1f8a303faf Add SO177 for debugging (#17500) 2022-12-27 17:57:21 +01:00
Barbudor
bd4fe78775
fix typo (#17511) 2022-12-27 12:07:37 +01:00
Theo Arends
c1ce983bef Reduce code size by removing duplicate code 2022-12-24 15:59:29 +01:00
Barbudor
4a47514a25
PCF8574 input pin initialization fix (#17499)
* step1 - quick test patch

* mistake, pullup should be disabled

* 2nd test version

* refactoring

* final
2022-12-23 21:17:24 +01:00
Jason2866
9f23151f78
Fix tasmota32-zbbrdgpro compile with core 2.0.6 (#17496)
* Fix tasmota32-zbbrdgpro compile with core 2.0.6

* only ESP32
2022-12-23 20:03:58 +01:00
s-hadinger
1832c4b2f0
Berry crypto add `SPAKE2P_Matter` for Matter support (#17497) 2022-12-23 19:40:12 +01:00
s-hadinger
f5f7ff4fb8
Minor changes to Berry crypto (#17494) 2022-12-23 18:31:19 +01:00
Theo Arends
234d6e20e0 Extent Generic Energy Modbus Driver
- Add support for up to 3 single phase modbus energy monitoring device using generic Energy Modbus driver
2022-12-23 16:56:18 +01:00
Theo Arends
940d2397fa Fix addressed register 1
- Add example for PZEM-0014
2022-12-23 14:26:25 +01:00
Theo Arends
0dc3b8d7e1 Add fieldpair "F" replacing "M" 2022-12-23 11:39:13 +01:00
StoyanDimitrov
768820061b
Update bg_BG.h (#17485) 2022-12-23 09:53:53 +01:00
stefanbode
0c588f2ff4
better fix on init (#17488)
try to avoid get  5000 if the init value is 65535. More focus on setting the standard of 500 on nearly any case
2022-12-23 09:53:10 +01:00
s-hadinger
42e3862970
Berry hkdf (#17487)
* Berry crypto add `HKDF_HMAC_SHA256`

* add HKDF option
2022-12-22 22:39:06 +01:00
s-hadinger
970e36f44d
Berry crypto add `random` to generate series of random bytes (#17482) 2022-12-22 18:57:20 +01:00
Theo Arends
23e0bc27e7 Update changelogs 2022-12-22 17:54:54 +01:00
Jason2866
c574e24cad
minor clean up in scripts (#17483) 2022-12-22 17:50:40 +01:00
stefanbode
3c1531bf1c
shuttermotorstop init value, new max 5000 (#17484)
new max value (5 seconds)
shuttertilt logic check (avoid Theo's indefinite running shutter)
2022-12-22 17:02:01 +01:00
Theo Arends
b3f12476cc Remove debug logging 2022-12-22 16:09:41 +01:00
Jason2866
163456c3fc
Pio: Target: Erase and Upload (#17474) 2022-12-22 11:12:45 +01:00
s-hadinger
f06c07996c
Berry crypto add `EC_P256 and PBKDF2_HMAC_SHA256` algorithms required by Matter protocol (#17473) 2022-12-22 10:09:13 +01:00
Theo Arends
ad97f7b95f Add NRG_MODBUS datatypes
Add NRG_MODBUS datatypes (#17467)
2022-12-21 18:11:35 +01:00
Theo Arends
8ffff8b857 Change Tasmota OTA scripts
Change Tasmota OTA scripts now support both unzipped and gzipped file uploads (#17378)
2022-12-21 17:22:54 +01:00
Theo Arends
b2d3921778 Fix shutter logging 2022-12-21 15:26:42 +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
Jason2866
9fa29c4f39
rm upload_port defaults (#17443)
* rm upload_port defaults
2022-12-20 09:27:10 +01:00
s-hadinger
d670f476ba
Berry add crypto AES_CTR, HDMAC_SHA256, MD5 (#17451) 2022-12-19 22:30:54 +01:00
stefanbode
59fc09acc4
Fix on init procedure (#17447)
* fix output

* Avoid wrong init parameter

#17403
2022-12-19 20:31:02 +01:00
Jason2866
dbdc2f02d4
Fix capitalization (#17446) 2022-12-19 17:58:32 +01:00
Jason2866
3a98fbbe38
rm AutodetectUploadPort (#17442) 2022-12-19 15:51:57 +01:00
Jason2866
29705c15af
revert Platformio changes (#17433) 2022-12-18 17:56:24 +01:00
Barbudor
ff02873af3
fix failure building cenv in linux (#17432) 2022-12-18 17:05:32 +01:00
s-hadinger
318c83cb36
Revert UDP begin() (#17431) 2022-12-18 14:28:05 +01:00
Theo Arends
b33d2d540f Update changelogs 2022-12-18 14:18:14 +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
Theo Arends
a6602249a3 Update changelogs 2022-12-18 14:05:31 +01:00
s-hadinger
93ee524de1
Berry support for crypto.SHA256 (#17430) 2022-12-17 23:40:41 +01:00
s-hadinger
30ace5a3f3
Berry support for crypto.SHA256 (#17430) 2022-12-17 23:38:57 +01:00
s-hadinger
5048777e06
Fix IPV6 compilation on ESP8266 (#17429) 2022-12-17 22:41:21 +01:00
blakadder
c908dc289e
remove manual upload port and switch to autodiscovery in platformio (#17427) 2022-12-17 21:52:12 +01:00
Jason2866
1b3eedd635
reduce memory footprint for MI32 builds (#17426)
by disabling (default) Ethernet support
2022-12-17 19:28:25 +01:00
Jason2866
509ce597a0
ESP32 Core 2.0.5.4 2022-12-17 16:28:16 +01:00
Jason2866
176e886e81
Tasmota ESP32 core 2.0.5.4 (#17422)
* core 2.0.5.4

* enable IPv6 for all ESP32x builds
2022-12-17 16:24:44 +01:00
Jason2866
8cedee3a62
Revert "CI: Delay start of Linux builds (#17316)" (#17423)
This reverts commit eee86f01a7b5288da45c095fd5f0d014043a7bb6.
2022-12-17 15:16:35 +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
Jason2866
ebf87bdfc8
changes FS for Arduino stage (#17413) 2022-12-16 18:10:57 +01:00
sedderz
72c9bca4d3
ArtNet DMX - Added RGBWW support for single lights (#17398)
* ArtNet DMX - Added RGBWW support for single lights

* ArtNet DMX - Fix offset for single light

Co-authored-by: sedgi <james@jsedgwick.com>
2022-12-16 17:30:59 +01:00
Jason2866
458c0cfe0e
fix needed depend. base32-images 2022-12-16 12:00:33 +01:00
Theo Arends
4e5c1f7a2d Bump version to v12.3.1.1 2022-12-16 10:20:51 +01:00
s-hadinger
f8b56e1058
Zigbee fix crash on ESP8266 #17397 (#17405) 2022-12-15 22:52:19 +01:00
Jason2866
6658c8d269
use https for esp32x for OTA (#17404) 2022-12-15 18:17:39 +01:00
Jason2866
673966df09
Use latest devel IPv6 frameworks (#17396) 2022-12-14 17:12:27 +01:00
Jason2866
d2068b1c42
Add safeboot firmware to release (#17392) 2022-12-14 15:14:14 +01:00
Theo Arends
bca659adf7 Bump version v12.3.0.1 2022-12-14 15:04:15 +01:00
Theo Arends
571502114c Bump version v12.3.0.1 2022-12-14 14:46:08 +01:00
Theo Arends
1ad8b7713e Add support for ME007-ULS
Add support for ME007-ULS narrow FoV ultrasonic distance sensor by Mathias Buder (#17376)
2022-12-14 12:18:49 +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
Theo Arends
f6d385250e Update changelogs 2022-12-14 11:31:25 +01:00
Jason2866
c0b695432a
enable ETHERNET in more esp32 env (#17391) 2022-12-14 11:26:09 +01:00
stefanbode
2902c93b29
functionality upgrade (#17380)
* 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
2022-12-14 11:25:41 +01:00
Theo Arends
ce4197459f Update changelogs 2022-12-14 11:25:12 +01:00
s-hadinger
ce0a0d05a9
MQTT now uses Tasmota's DNS resolver instead of LWIP (#17387) 2022-12-13 21:46:20 +01:00
s-hadinger
0a57545e11
Berry tcpclient uses Tasmota resolver (#17386) 2022-12-13 21:41:20 +01:00
s-hadinger
b1fca09ad2
Ping use ip_addr_t (#17385)
* Ping use ip_addr_t

* Fix non-IPv6 compilation
2022-12-13 21:41:12 +01:00
Jason2866
e71913ed42
add option to gz esp32 firmware files (#17379)
* add option to gz esp32 fimrware files

* reverse esp32 gz logic
2022-12-13 16:40:48 +01:00
Theo Arends
5f581fa7f2 Update http-uploader.py 2022-12-13 15:41:11 +01:00
Theo Arends
711b1bb432 Update platformio_override_sample.ini 2022-12-13 15:02:01 +01:00
Theo Arends
b332029664 Create upload-tasmota.php 2022-12-13 14:56:46 +01:00
Theo Arends
8ad0e8b9ec Change espupload from curl to requests 2022-12-13 14:54:20 +01:00
s-hadinger
f429d41a32
Fix IPv6 compilation for ESP8266 (#17374) 2022-12-13 09:31:43 +01:00
s-hadinger
7e27945e5a
ESP32 fix `Ping` (#17373) 2022-12-12 23:07:14 +01:00
Theo Arends
9898cb0bed
Merge pull request #17366 from mnowa/development
Update xsns_53_sml.ino to use maximum bytes count for binary modbus CRC calculation in relation to SML_BSIZ value
2022-12-12 17:54:32 +01:00
mnowa
370debc0e2
Update xsns_53_sml.ino
Maximum bytes count for binary modbus CRC calculation in relation to SML_BSIZ value
2022-12-12 16:13:04 +01:00
Theo Arends
630987302a Fix Analog MQ exception
Fix Analog MQ exception (#17271)
2022-12-12 10:57:21 +01:00
s-hadinger
d83119897e
Merge pull request #17351 from s-hadinger/fix_dns_ipv4
Fix IPv4 DNS resolution when IPv6 is enabled
2022-12-11 19:54:42 +01:00
Theo Arends
b78886b0f1 Add TasmotaModbus hardware fallback to GPIO13/15 2022-12-11 16:44:36 +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
s-hadinger
958c41a9f6
Merge pull request #17348 from s-hadinger/berry_autoconf_crlf
Berry autoconf remove crlf
2022-12-11 15:27:28 +01:00
Stephan Hadinger
c9b838d3dc Remove all trailing \r and \n 2022-12-11 15:09:26 +01:00
Stephan Hadinger
782b10128b Berry autoconf remove crlf 2022-12-11 14:46:46 +01:00
Theo Arends
d8d45078fb Update changelogs 2022-12-11 12:23:01 +01:00
Theo Arends
062a2e3a7e Fix RtcNtpServer induced exception on ESP32
Fix RtcNtpServer induced exception on ESP32 (#17338)
2022-12-11 12:19:03 +01:00
Theo Arends
4f70f4d33e
Merge pull request #17342 from stefanbode/shutterdev
Code optimizatons
2022-12-11 10:49:04 +01:00
Theo Arends
d14f8cd6be
Merge pull request #17345 from darkxst/st7789
Add ST7789 135x240 display
2022-12-11 10:48:51 +01:00
Tim Lunn
2d64a00d12 Add ST7789 135x240 display 2022-12-11 17:21:03 +11:00
stefanbode
c20d789fde
Update support.ino 2022-12-10 23:54:09 +01:00
stefanbode
c4bb3366a2
Update xdrv_27_shutter.ino 2022-12-10 23:52:53 +01:00
s-hadinger
7f29840bb0
Merge pull request #17339 from s-hadinger/berry_webclient_refactor_PUT
Berry refactor webclient POST/PUT/PATCH/DELETE
2022-12-10 21:33:09 +01:00
Stephan Hadinger
32bfd2a27b Berry refactor webclient POST/PUT/PATCH/DELETE 2022-12-10 18:58:42 +01:00
Theo Arends
e018b61a9d Update changelogs 2022-12-10 17:16:42 +01:00
Theo Arends
41d79183f3 Delete xdrv_90_dingtian_relay.ino 2022-12-10 16:56:12 +01:00
Theo Arends
5e23d78bf2 Update credits 2022-12-10 16:55:04 +01:00
s-hadinger
a40ea33fcb
Merge pull request #17332 from s-hadinger/ipv6_improv
IPv6 improvements
2022-12-10 14:02:04 +01:00
Stephan Hadinger
4a32623a51 IPv6 improvements 2022-12-10 13:44:16 +01:00
Theo Arends
6e6cbf0988
Merge pull request #17326 from gemu2015/udisplay_update
Makerfabs esp32-s3 p16 ili9488
2022-12-10 11:23:36 +01:00
gemu2015
742302c53f Makerfabs esp32-s3 p16 ili9488 2022-12-10 07:20:37 +01:00
Theo Arends
423945233c Fix RFrecv exceptions 0 and/or 6 (#17285) 2022-12-09 17:35:57 +01:00
Theo Arends
1098ec2098
Merge pull request #17184 from fightforlife/development_eb3ble_retries
BLE eQ3 - allow to set retries at runtime
2022-12-09 10:55:18 +01:00
Theo Arends
b06a511a44
Merge pull request #17182 from fightforlife/development_eb3ble_hassmode
BLE eQ3 - fix hassmode, idle no longer supported
2022-12-09 10:54:37 +01:00
Theo Arends
68e0fa0e56
Merge pull request #17322 from gemu2015/display_update
fix text escape
2022-12-09 09:43:19 +01:00
gemu2015
561f6fd480 fix text escape 2022-12-09 09:32:14 +01:00
Jason2866
eee86f01a7
CI: Delay start of Linux builds (#17316) 2022-12-08 20:24:48 +01:00
s-hadinger
28b4d8d600
Merge pull request #17313 from s-hadinger/ipv6_ethernet
IPv6 support for Ethernet (ESP32)
2022-12-08 19:56:30 +01:00
Stephan Hadinger
20c8348654 Fix compilation 2022-12-08 19:42:04 +01:00
Stephan Hadinger
2f1b2ec5fd IPv6 support for Ethernet (ESP32) 2022-12-08 19:06:51 +01:00
stefanbode
d2472ef56f
Update xdrv_27_shutter.ino 2022-12-08 18:54:45 +01:00
stefanbode
c98164a400
Update xdrv_27_shutter.ino 2022-12-08 18:36:17 +01:00
stefanbode
27bbec0d40
Update xdrv_27_shutter.ino 2022-12-08 18:08:12 +01:00
stefanbode
8320a944d8
removed index from shuttermode 2022-12-08 12:55:34 +01:00
Theo Arends
de408921ec
Merge pull request #17308 from gemu2015/scripter_fix
fix regression from latest commit
2022-12-08 08:35:08 +01:00
gemu2015
a83c45e3ad fix regression from latest commit 2022-12-08 06:43:26 +01:00
Theo Arends
599793954d
Merge pull request #17304 from barbudor/add-missing-closing-brace
HMC5883 add missing closing brace
2022-12-07 19:23:27 +01:00
barbudor
5916d72598 add missing closing brace 2022-12-07 19:01:17 +01:00
Theo Arends
5ea6fe6b13
Merge pull request #17300 from bovirus/development
Update italian language
2022-12-07 14:10:47 +01:00
bovirus
aa19bbf970
Update italian language
Please check and merge, Thanks.
2022-12-07 09:20:25 +01:00
Theo Arends
5eb55d6b69
Merge pull request #17299 from gemu2015/scripter-fix
fix crash on websend in >E
2022-12-07 09:08:02 +01:00
gemu2015
237695de22 fix recursion 2022-12-07 08:52:13 +01:00
Theo Arends
9cce6ad0eb
Merge pull request #17296 from barbudor/patch-1
Fix HMC5883 sensor json
2022-12-06 20:54:36 +01:00
Barbudor
513d6239b3
Fix HMC5883 sensor json
Fix https://github.com/arendst/Tasmota/issues/17295
2022-12-06 20:07:18 +01:00
Theo Arends
c41afa1d07
Merge pull request #17294 from stefanbode/patch-1
Avoid ghost switching in position 0 and 100
2022-12-06 16:37:59 +01:00
stefanbode
35475d9353
Avoid ghost switching in position 0 and 100
confirming the position and setting the tilt in 0 and 100% causes ghost switching of the relays. #16435
2022-12-06 16:27:34 +01:00
Theo Arends
9d9d46db9c
Merge pull request #17288 from stefanbode/patch-4
Fix #17282
2022-12-06 09:31:56 +01:00
stefanbode
687e38f6b5
Fix #17282
fix reboot on "shutter" command
2022-12-06 09:27:51 +01:00
s-hadinger
e7d40b8d11
Merge pull request #17270 from s-hadinger/berry_crypto_def
Berry crypto module, with AES_GCM by default and EC_CC25519 optional
2022-12-04 19:43:27 +01:00
s-hadinger
8fe30532fd
Merge pull request #17269 from s-hadinger/zigbee_fix_BinaryInValue
Fix type for BinaryInValue
2022-12-04 19:32:50 +01:00
Stephan Hadinger
ec17440662 Berry crypto module, with AES_GCM by default and EC_CC25519 optional 2022-12-04 19:20:11 +01:00
Stephan Hadinger
70f73edf9e Fix type for BinaryInValue 2022-12-04 19:15:42 +01:00
s-hadinger
2a1b900775
IPv6 improvements (#17268)
* IPv6 improvements

* Fix esp8266 compilation

* grrr

* Fix compilation issue

* Fix declaration

* Fix esp32c3
2022-12-04 16:57:34 +01:00
Theo Arends
a7eaca59e6
Merge pull request #17267 from stefanbode/patch-3
Fix rounding error on tiltmovement
2022-12-04 15:13:01 +01:00
Theo Arends
e1221b924d Changed removed leading spaces on commands `(S)SerialSend1 to 6`
Removed leading spaces on commands ``(S)SerialSend1 to 6`` but keep on duplicate commands ``(S)SerialSend11 to 16`` (#16723)
2022-12-04 15:09:39 +01:00
stefanbode
496aeeff07
Fix rounding error on tiltmovement
fix #17191
2022-12-04 14:41:38 +01:00
Theo Arends
b4a688f495
Merge pull request #17265 from stefanbode/patch-2
Support Setoption13 1 on shutters to immediate feedback
2022-12-04 13:33:29 +01:00
stefanbode
9be44131b9
Support Setoption13 1 on shutters to immediate feedback 2022-12-04 13:25:20 +01:00
Theo Arends
5f8ef0c5cb Fix LD2410 bad reception detection 2022-12-04 12:37:50 +01:00
Theo Arends
fca19401b7 Increase user input energy max values (#15856) 2022-12-04 12:25:17 +01:00
Theo Arends
bb88034669 Fix LD2410 Hardware Watchdogs 2022-12-04 10:50:58 +01:00
Theo Arends
186aef0ad4
Merge pull request #17256 from gemu2015/scripter_fix
fix google chart
2022-12-04 08:25:32 +01:00
gemu2015
0015b5fc04 fix google chart 2022-12-04 08:16:21 +01:00
Theo Arends
5af13ee4bd
Merge pull request #17255 from gemu2015/sml_update
optional TRX enable
2022-12-04 08:01:24 +01:00
gemu2015
1aeee69c08 optional TRX enable 2022-12-04 07:47:21 +01:00
Theo Arends
25ab45288b
Merge pull request #17249 from kurkav/development
Invalid processing of received value.
2022-12-03 12:46:38 +01:00
Theo Arends
bbde894628 Add serial Modbus transmit enable GPIOs
Add serial Modbus transmit enable GPIOs to all modbus energy drivers and modbus bridge (#17247)
2022-12-03 12:33:42 +01:00
kurkav
6da636d685 Invalid processing of received value.
Int64 value was read from Float buffer.
Also units received were Wh, struct needs kWh.
2022-12-03 11:54:30 +01:00
Theo Arends
816fd78fbb Fix LD2410 using HardwareSerial on ESP8266 2022-12-01 16:18:38 +01:00
s-hadinger
baed1e06a8
Merge pull request #17230 from s-hadinger/ipv6_preview
IPv6 preview for ESP32, also working for ESP8266
2022-11-30 20:01:14 +01:00
Stephan Hadinger
d3be3dfe8f IPv6 preview for ESP32, also working for ESP8266 2022-11-30 19:40:58 +01:00
Theo Arends
7fab7bbf36
Merge pull request #17224 from enseitankado/development
Update en_GB.h
2022-11-30 09:42:07 +01:00
Theo Arends
3247ae13eb
Merge pull request #17225 from stefanbode/patch-2
Update ZeroCross Dimmer calibration on physical measurement
2022-11-30 09:37:26 +01:00
stefanbode
3569927403
Update ZeroCross Dimmer calibration on physical measurement
Alligned with physical measurement of 1KW heating
2022-11-30 09:15:34 +01:00
Özgür Koca
7ea813c778
Update en_GB.h
Writing mistake fixed.
2022-11-30 03:09:46 +03:00
Theo Arends
af9f83e7e4 Bump version v12.2.0.6 2022-11-29 11:11:39 +01:00
Theo Arends
143373b0d3 Reduce LD2410 Hardware Watchdogs 2022-11-29 10:51:56 +01:00
Theo Arends
47ee69137b Fix TasmotaSerial::read(buffer, size) 2022-11-28 18:14:44 +01:00
Theo Arends
86fcaa1a8d
Merge pull request #17203 from anton-v-a/development
Adding RF protocol for DEWENWILS Power Strips and Power stakes
2022-11-28 12:32:38 +01:00
Theo Arends
da50ff821f
Merge pull request #17204 from gemu2015/sml_update
sml_obis_line software flag
2022-11-28 08:52:29 +01:00
gemu2015
fcf12e1adb sml_obis_line software flag 2022-11-28 07:41:37 +01:00
Anton
ac187d6829
Adding RF protocol for DEWENWILS Power Strips and Power stakes 2022-11-28 00:56:22 -05:00
Theo Arends
a1ffd88819
Merge pull request #17201 from stefanbode/patch-1
Bugfix for Zero-Cross Power correction
2022-11-27 18:39:27 +01:00
s-hadinger
86413d374f
Merge pull request #17202 from s-hadinger/berry_mdns
Berry add module `mdns`
2022-11-27 18:36:12 +01:00
Stephan Hadinger
b1eac8eb05 Fix Berry mdns comments 2022-11-27 18:17:41 +01:00
Stephan Hadinger
a0ed383840 Berry add module mdns 2022-11-27 18:08:53 +01:00
stefanbode
3446b0b78c
bugfix 2022-11-27 17:14:51 +01:00
stefanbode
fe8229ea30
bugfix zero cross 2022-11-27 17:13:23 +01:00
Theo Arends
220a03f043 Add LD2410 debugging info 2022-11-27 12:11:48 +01:00
Theo Arends
79c348beb7
Merge pull request #17196 from bovirus/development
Update italian language
2022-11-27 08:58:29 +01:00
bovirus
ac52f67c7e
Update italian language 2022-11-27 08:52:45 +01:00
Theo Arends
53563d44d8 Add support for HLK-LD2410 24GHz smart wave motion sensor
Add support for HLK-LD2410 24GHz smart wave motion sensor
2022-11-26 17:49:25 +01:00
Theo Arends
18453eec97 Add config commands to POC LD2410 2022-11-26 17:17:59 +01:00
Theo Arends
244e3ed010
Merge pull request #17186 from stefanbode/patch-1
Allow to maintain venetian tilt also on end-position 0 and 100
2022-11-26 16:19:22 +01:00
Theo Arends
30f64d3c42 POC HLK-LD2410 2022-11-26 10:52:42 +01:00
Theo Arends
48ae4b247c Fix intermittent hardware watchdogs
Fix intermittent hardware watchdogs in case of high speed software serial flooding
2022-11-26 09:48:23 +01:00
stefanbode
46b0584282
Allow to maintain venetian tilt also on end-position 0 and 100
Requested by user
2022-11-25 17:04:57 +01:00
Frederik
075140e3b7
fix valve is closed condition 2022-11-24 18:33:13 +01:00
Frederik
339b8a0b96 fix hassmode, idle no longer supported 2022-11-24 18:19:12 +01:00
Frederik
1c29be8749 remove hassmoda changes to create seperate PR 2022-11-24 18:15:43 +01:00
Frederik
e3cddc4208 introduce configurable retries and change hassmode 2022-11-24 18:05:00 +01:00
Theo Arends
430396832f Fix thermostat ramp-off time
Fix thermostat ramp-off time (#16424)
2022-11-24 15:09:39 +01:00
Theo Arends
a381da3a39 Revert GUI file accept 2022-11-24 14:47:26 +01:00
Theo Arends
f0f1a85984
Merge pull request #17177 from stefanbode/patch-1
AC-Dimmer Power lookup table
2022-11-24 14:35:29 +01:00
Theo Arends
dc93d310c9
Merge pull request #17163 from hallard/teleinfo_fix
Teleinfo Fix BBR and EJP detection
2022-11-24 14:29:04 +01:00
stefanbode
fce966800f
bugfix in comment 2022-11-24 14:09:56 +01:00
stefanbode
e3f0445a5d
fix duplicate line 2022-11-24 13:56:34 +01:00
stefanbode
b5448535b2
Update dimmer loockup table 2022-11-24 10:51:58 +01:00
stefanbode
8bc46aa0d9
AC-Dimmer update
change to linear power distribution on PWM
2022-11-24 09:39:46 +01:00
stefanbode
7dd0003617
Update AC-Dimmer power calculation
Power on AC-Dimmer is based on integral over the sinus. Implement mapping table to get a more linear power behavior.
2022-11-24 09:37:07 +01:00
Jason2866
93c81a716a
Merge pull request #17174 from Jason2866/esptool
esptool v4.4 / Platform versioning change
2022-11-23 22:40:25 +01:00
Jason2866
cb53e0ba4e
esptool v4.4 / Platform versioning change 2022-11-23 22:26:58 +01:00
s-hadinger
0e7e950c4f
Merge pull request #17171 from s-hadinger/mdns_log
Improve mdns logging
2022-11-23 22:17:22 +01:00
Stephan Hadinger
5c3df72675 Disable MQTT_HOST_DISCOVERY by default 2022-11-23 21:57:40 +01:00
Stephan Hadinger
87de264146 Improve mdns logging 2022-11-23 21:41:35 +01:00
Charles
9b37690039 Fix BBR and EJP detection in historique 2022-11-22 23:29:52 +01:00
Theo Arends
a93a94666f Fix LD2410 labels 2022-11-22 12:35:30 +01:00
Theo Arends
215a6ce027
Merge pull request #17160 from hallard/teleinfo_histo
Teleinfo new TEMPO (BBR) contract
2022-11-22 09:11:07 +01:00
Charles
200221acc2 Added TEMPO and status register decoding for standard mode 2022-11-22 00:41:58 +01:00
s-hadinger
1cdc03f835
Merge pull request #17159 from barbudor/berry_wc_put_delete_patch
Adding PUT, PATCH and DELETE to Berry webclient
2022-11-21 20:28:48 +01:00
Charles
aa4ff5cede Added Tempo/BBR contract, fixed display BASE bug 2022-11-21 20:06:50 +01:00
barbudor
743c162499 Adding PUT, PATCH and DELETE to Berry webclient 2022-11-21 19:42:46 +01:00
Theo Arends
21290de9c4 Prep HLK-LD2410 2022-11-21 14:07:25 +01:00
Theo Arends
06b6e31cad
Merge pull request #17147 from joba-1/rgx-fix-wifimanager-handling
don't touch AP_STA mode only if Rgx is up
2022-11-21 10:33:19 +01:00
Theo Arends
40294e13fc Fix Serial Bridge Skip count 2022-11-21 10:32:13 +01:00
s-hadinger
e58bf69112
Merge pull request #17150 from s-hadinger/artnet_berry
Berry ArtNet implementation
2022-11-20 22:12:08 +01:00
Stephan Hadinger
d40c24d6d3 Berry ArtNet implementation 2022-11-20 22:04:30 +01:00
s-hadinger
e00529c1b6
Merge pull request #17148 from s-hadinger/zigbee_plugin_mul16
Zigbee plugin mul/div extended to 16 bits
2022-11-20 18:55:40 +01:00
Stephan Hadinger
e4bae0cca6 Moved to uint16_t 2022-11-20 18:32:37 +01:00
Stephan Hadinger
923ef8202e Zigbee plugin mul/div extended to 16 bits 2022-11-20 18:21:46 +01:00
joba-1
4b52be6a5e don't touch AP_STA mode only if Rgx is up 2022-11-20 16:28:59 +01:00
Theo Arends
6e9394984d Update changelogs 2022-11-20 15:52:40 +01:00
Theo Arends
f9138984bf Add accept filename extensions to GUI
Add accept filename extensions to GUI file upload input fields (#16875)
2022-11-20 15:07:38 +01:00
Theo Arends
4f31e7a1b2 Add command `SetOption35 0..255`
Add command ``SetOption35 0..255`` to skip number of received messages in Serial Bridge (default 0) (#17140)
2022-11-20 12:52:24 +01:00
s-hadinger
7d1e5cf487
Merge pull request #17143 from s-hadinger/zigbee_fiw_aqara_syn
Zigbee fix attribute not reported
2022-11-19 15:14:47 +01:00
Stephan Hadinger
16b34963d5 Fix identaiton 2022-11-19 15:01:01 +01:00
Theo Arends
425f83bf85 Update Serial Bridge code size 2022-11-19 14:59:36 +01:00
Stephan Hadinger
82df1a9152 Zigbee fix attribute not reported 2022-11-19 14:59:07 +01:00
Theo Arends
cf2d135f33
Merge pull request #17142 from joba-1/rgx-port-forward-with-ip
allow port forwarding to an ip
2022-11-19 14:29:39 +01:00
joba-1
4844209a3b rgx add port forward with ip and "dry" refactoring 2022-11-19 12:47:53 +01:00
Theo Arends
5662a3965c
Merge pull request #17113 from joba-1/rgx-port-forward-for-esp8266-too
Rgx port forward for esp8266 too
2022-11-19 10:06:36 +01:00
Theo Arends
215db46966
Merge pull request #17136 from Staars/mi_disco
MI32 legacy: hide BLE sensors from discovery to do this in Berry
2022-11-19 10:05:53 +01:00
Theo Arends
9d1d9d0f5a
Merge pull request #17139 from anton-v-a/development
Bugfix: RfSend command to support bits>32 for decimal command format
2022-11-19 10:05:26 +01:00
Anton
b2adcdcee5
Adding protocol for DOOYA 2700AC remote
Adding protocol for DOOYA 2700AC remote (used with DT82TV curtain motors)
This remote uses 40-bit code
PR #17139 is needed to support it in decimal format of RfSend command (JSON format works as is)
2022-11-19 01:56:17 -05:00
Anton
52faed8c08
Bugfix: RfSend command to support bits>32 for decimal command format 2022-11-19 01:40:24 -05:00
s-hadinger
eac0bbc1d9
Merge pull request #17137 from s-hadinger/malloc_fix_2
Avoid crash if malloc fails take 2
2022-11-18 21:58:59 +01:00
Christian Baars
7129c64048 hide sensors from discovery to do this in Berry 2022-11-18 20:46:42 +01:00
Stephan Hadinger
774decee21 Avoid crash if malloc fails take 2 2022-11-18 17:27:09 +01:00
Theo Arends
783631903d Add user control over Serial Bridge buffers
- Add optional define ``SERIAL_BRIDGE_BUFFER_SIZE`` to set Serial Bridge internal buffer size (Default ESP8266 = 256, ESP32 = 800)
- Add command ``SSerialBuffer 256..SERIAL_BRIDGE_BUFFER_SIZE`` to change serial bridge rx buffer size (#17120)
2022-11-18 16:21:54 +01:00
Theo Arends
69f903618d Fix intermittent wifi AP starts 2022-11-18 14:31:49 +01:00
Theo Arends
0674f9b0b6 Add command `SSerialBuffer 64..256`
Add command ``SSerialBuffer 64..256`` to change software serial bridge receive buffer size from default (64) to max local buffer size (256) (#17120)
2022-11-18 13:00:59 +01:00
s-hadinger
3a20159dd5
Merge pull request #17128 from arendst/revert-17124-malloc_fix
Revert "Avoid crash if malloc fails"
2022-11-18 07:43:54 +01:00
s-hadinger
cb234a2694
Revert "Avoid crash if malloc fails" 2022-11-18 07:43:38 +01:00
s-hadinger
d46f6ea6b0
Merge pull request #17127 from s-hadinger/zigbee_plugin_default
Zigbee add default plugin in flash
2022-11-18 00:34:47 +01:00
Stephan Hadinger
7e9e7b8e3e Zigbee add default plugin in flash 2022-11-18 00:21:01 +01:00
s-hadinger
24126efc4d
Merge pull request #17126 from s-hadinger/zigbee_fix_autoresponder
Fix Zigbee auto-responder frame direction
2022-11-18 00:12:08 +01:00
Stephan Hadinger
d1c71ca91b Fix Zigbee auto-responder frame direction 2022-11-18 00:04:54 +01:00
s-hadinger
50565f4e65
Merge pull request #17124 from s-hadinger/malloc_fix
Avoid crash if malloc fails
2022-11-17 21:31:01 +01:00
s-hadinger
c2ec0d5fd1
Merge pull request #17121 from s-hadinger/ssdp_unishox
Include Wemo SSDP presentationURL in Unishox
2022-11-17 20:41:25 +01:00
Stephan Hadinger
e144b57b53 Avoid crash if malloc fails 2022-11-17 20:29:31 +01:00
Stephan Hadinger
c607a67024 Include Wemo SSDP presentationURL in Unishox 2022-11-17 20:26:00 +01:00
Theo Arends
619c5431d7 Add Wemo SSDP presentationURL
Add Wemo SSDP presentationURL for easy access using Windows Networks Other Device device double click (#17084)
As implemented only works when USE_UNISHOX_COMPRESSION is disabled.
2022-11-17 17:54:42 +01:00
Theo Arends
16b796ccd5 Fix emulation regression from ArtNet implementation 2022-11-17 17:30:44 +01:00
joba-1
ffac19855b
Merge branch 'arendst:development' into rgx-port-forward-for-esp8266-too 2022-11-17 16:53:35 +01:00
Theo Arends
9e65dd51e9
Merge pull request #17114 from curzon01/modbus
Fix generic modbus single phase register output
2022-11-17 15:21:36 +01:00
Norbert Richter
0cd97d3890
Fix generic modbus single phase register output 2022-11-17 15:14:28 +01:00
Theo Arends
d1c7ee882b Reset energy today at midnight (#16791) 2022-11-17 14:58:16 +01:00
Theo Arends
e578171a16 Update changelogs 2022-11-17 12:47:09 +01:00
Theo Arends
d4bfd88256
Merge pull request #17112 from curzon01/DS18x20_ESP32_parasite_power
Add DS18x20 parasitic power usage on ESP32
2022-11-17 12:42:25 +01:00
joba-1
2df095d57a
Merge branch 'arendst:development' into rgx-port-forward-for-esp8266-too 2022-11-17 12:40:10 +01:00
Norbert Richter
b149da46c6
Add DS18x20 parasitic power usage on ESP32 2022-11-17 12:24:11 +01:00
Theo Arends
acca26f9cd
Merge pull request #17108 from curzon01/patch1
Fix linker error using #undef USE_WS2812 for ESP32
2022-11-17 12:06:36 +01:00
Theo Arends
34ededb9d8 Add comment for future use 2022-11-17 12:01:09 +01:00
Theo Arends
91953e2658
Merge pull request #17103 from joba-1/rgx-preserve-ap-connections-on-sta-reconnect
preserve AP connections if STA side reconnects
2022-11-17 11:50:26 +01:00
Theo Arends
a924e41ff3 Bump version v12.2.0.5
- Fixed ModbusBridge baudrates over 76500 baud (#17106)
- Bump version v12.2.0.5
2022-11-17 11:44:51 +01:00
Norbert Richter
be7581b377
Fix linker error using undef USE_WS2812 for ESP32 2022-11-17 11:13:40 +01:00
joba-1
b1ebda8524 Range extender port forwarding also for ESP8266 2022-11-16 23:51:54 +01:00
s-hadinger
c304319f5d
Merge pull request #17105 from s-hadinger/artnet_fix
Fix ArtNet crash
2022-11-16 21:43:41 +01:00
Stephan Hadinger
7344fd54dc Fix ArtNet crash 2022-11-16 21:24:57 +01:00
joba-1
552c44425b
Merge branch 'arendst:development' into rgx-preserve-ap-connections-on-sta-reconnect 2022-11-16 19:41:59 +01:00
s-hadinger
35fca6c816
Merge pull request #17104 from s-hadinger/esp32_artnet
Add ArtNet to Tasmota32 precompiled
2022-11-16 19:08:49 +01:00
Stephan Hadinger
5f0b92568e Add ArtNet to Tasmota32 precompiled 2022-11-16 18:41:07 +01:00
joba-1
4eb0bf80dc preserve AP connections if STA side reconnects 2022-11-16 17:28:03 +01:00
Jason2866
04b6034909
action-gh-release@v1.2
fix deprecation warning "Node12"
2022-11-16 16:43:25 +01:00
Theo Arends
f044ccdeec Remove commands ArtNetStop and ArtNetStart 2022-11-16 16:26:12 +01:00
Theo Arends
a0e7191d4e Add command ArtNet
- Fix ArtNetStop
2022-11-16 16:15:31 +01:00
Theo Arends
99378308f7 Update changelogs 2022-11-16 14:26:49 +01:00
Theo Arends
56a71c3ca9
Merge pull request #17092 from joba-1/rgx-portmap
add command RgxPort to setup port forwarding
2022-11-16 14:17:55 +01:00
s-hadinger
0f5a7e4a77
Merge pull request #17096 from s-hadinger/zigbee_doc
Zigbee doc
2022-11-16 14:03:21 +01:00
Stephan Hadinger
56e06b7fc5 Fix command name bug 2022-11-16 13:45:59 +01:00
Stephan Hadinger
a26e634408 Doc is off by default 2022-11-16 13:44:06 +01:00
Stephan Hadinger
0b18c60ba2 Zigbee ZbProbe for unknown devices and doc helper 2022-11-16 13:43:36 +01:00
Theo Arends
229c2cce06 Revert Art-Net to ArtNet 2022-11-16 10:55:56 +01:00
Theo Arends
b92d5ab12c Fix ArtNet compilation on ESP32 2022-11-16 10:47:55 +01:00
s-hadinger
d8d191b1c7
Merge pull request #17095 from s-hadinger/berry_udp_close
Rename to udp.close()
2022-11-16 09:06:09 +01:00
Stephan Hadinger
0849b6e5ef Rename to udp.close() 2022-11-16 08:33:13 +01:00
s-hadinger
1162c36fb2
Merge pull request #17094 from s-hadinger/berry_udp_stop
Berry add ``udp->stop()`` method
2022-11-15 23:41:41 +01:00
Stephan Hadinger
f7fa09ebbe Berry add `udp->stop()` method 2022-11-15 23:28:34 +01:00
joba-1
8af22a1904 remove unneeded return 2022-11-15 20:12:07 +01:00
joba-1
e468cf53ee add command RgxPort to setup port forwarding 2022-11-15 18:53:38 +01:00
Theo Arends
5f3d504c30 Add support for HMC5883L
Add support for HMC5883L 3-Axis Digital Compass sensor by Andreas Achtzehn (#17069)
2022-11-15 11:11:32 +01:00
Theo Arends
5e61ee6086
Merge pull request #17069 from AndreasAchtzehn/pr-hmc5883l
Support for I2C device HMC5883L (3-axis magnetic sensor)
2022-11-15 10:38:30 +01:00
Theo Arends
e88d1682e9 Add command `SwitchMode 16`
Add command ``SwitchMode 16`` sending only MQTT message on inverted switch change (#17028)
2022-11-15 10:10:29 +01:00
Theo Arends
5bbc734edc
Merge pull request #17073 from s-hadinger/zigbee_aqara_plug
Zigbee improved Aqara plug support and completed cluster 0x0702
2022-11-15 09:27:47 +01:00
Theo Arends
79c1bd2ae8
Merge branch 'development' into zigbee_aqara_plug 2022-11-15 09:27:40 +01:00
Theo Arends
c7543ff963
Merge pull request #17076 from joba-1/rgx-esp8266
add RgxClients for ESP8266
2022-11-15 09:21:14 +01:00
Theo Arends
ab94d9265a
Merge pull request #17044 from thomashargrove/sevensegment
Modify the 7-segment font to be 16 pixels wide instead of 17
2022-11-15 09:18:52 +01:00
joba-1
4f343fd7b7 add RgxClients for ESP8266 2022-11-14 23:56:38 +01:00
Stephan Hadinger
d2d384dc72 Zigbee improved Aqara plug support and completed cluster 0x0702 2022-11-14 22:46:08 +01:00
s-hadinger
bbaad1caa2
Merge pull request #17071 from s-hadinger/lvgl_833
ESP32 LVGL library from v8.3.2 to v8.3.3 (no functional change)
2022-11-14 21:26:18 +01:00
Stephan Hadinger
7950800cb2 ESP32 LVGL library from v8.3.2 to v8.3.3 (no functional change) 2022-11-14 21:15:38 +01:00
s-hadinger
2398fd8714
Merge pull request #17066 from cyrilpawelko/development
Zigbee plugin to fix Moes-Tuya KCTW1Z Humidity
2022-11-14 20:46:55 +01:00
Andreas Achtzehn
20d9975d6f Support for I2C device HMC5883L (3-axis magnetic sensor) 2022-11-14 20:20:04 +01:00
Cyril Pawelko
62c3a92ae7
Zigbee plugin to fix Moes-Tuya KCTW1Z Humidity
For device
Should work with TS0201:_TZ3000_itnrsufe , regarding https://zigbee.blakadder.com/Tuya_KCTW1Z.html
2022-11-14 18:42:57 +01:00
Theo Arends
5b1aff5141 Add RTC logging to energy 2022-11-14 17:11:38 +01:00
Theo Arends
c92d51f050 Rename ArtNet to Art-Net 2022-11-14 14:20:41 +01:00
Theo Arends
c63aad49c1
Merge pull request #17048 from joba-1/range-extender-clients-list
Range extender clients list
2022-11-14 13:55:30 +01:00
joba-1
aad82c027f change rgx client mac format in list as requested 2022-11-14 13:02:04 +01:00
Theo Arends
bfbdd49aaf Revert change 2.7.4.9 2022-11-14 12:52:25 +01:00
Theo Arends
60ff102807 Update changelogs 2022-11-14 12:04:36 +01:00
joba-1
f48e86f0c7 ap sta list header esp_wifi.h is ESP32 only 2022-11-14 02:25:24 +01:00
joba-1
cc6f8840f9 add rssi for each entry of RgxClients list 2022-11-14 01:47:00 +01:00
joba-1
912574f8d7 unconditional RgxClients, ip dict with mac as key 2022-11-14 01:18:32 +01:00
Jason2866
458aa1b0b4
Merge pull request #17057 from Jason2866/rm_pip
Rm pip "zopfli" install from pio script
2022-11-13 18:57:00 +01:00
s-hadinger
b77ba79a67
Merge pull request #17059 from s-hadinger/artnet
Added WS2812 and Light ArtNet DMX control over UDP port 6454
2022-11-13 18:55:59 +01:00
Stephan Hadinger
2549203c13 Added WS2812 and Light ArtNet DMX control over UDP port 6454 2022-11-13 18:22:39 +01:00
s-hadinger
6846bee84d
Merge pull request #17056 from s-hadinger/leds_fix_setbytes
Fix to Leds set_bytes, and added persistance to ArtNet Berry
2022-11-13 18:20:53 +01:00
s-hadinger
bace42b9a4
Merge pull request #17055 from s-hadinger/ws2812_smaller
WS2812 sends signal to only ``Pixels`` leds instead of sending to 512 leds
2022-11-13 18:20:42 +01:00
Stephan Hadinger
0e5f79da9c Fix to Leds set_bytes, and added persistance to ArtNet Berry 2022-11-13 18:05:13 +01:00
Jason2866
6738eec4c3 Change version naming 2022-11-13 18:04:44 +01:00
Stephan Hadinger
0cfa2aba74 WS2812 sends signal to only `Pixels` leds instead of sending to 512 leds 2022-11-13 18:00:49 +01:00
Jason2866
9a10436450
rm pip install zopfli 2022-11-13 16:46:26 +01:00
Theo Arends
b2239b4dce Disable TUYA_MORE_DEBUG 2022-11-13 15:15:10 +01:00
Theo Arends
13c27194ec TuyaMcu rewrite by btsimonh (#17051) 2022-11-13 12:55:18 +01:00
joba-1
4c376350a7 add RgxClients to tasmota32-rangeextender pio env 2022-11-12 23:17:15 +01:00
joba-1
172ea9a80d add RgxClients command for range extenders 2022-11-12 23:15:57 +01:00
Theo Arends
2e84433522
Merge pull request #17047 from Jason2866/zopfli
ues zopfli to gz firmware
2022-11-12 17:33:45 +01:00
Theo Arends
aecc36141b
Merge pull request #17046 from Jason2866/clock_160
Increase MCU clock for esp32 and esp32solo1
2022-11-12 17:18:22 +01:00
Jason2866
e5219fb8be
ues zopfli to gz firmware 2022-11-12 17:12:15 +01:00
Theo Arends
4e5193fdad Remove SkipSleep() in favour of FUNC_SLEEP_LOOP 2022-11-12 15:57:46 +01:00
Theo Arends
b0dbe32f22 Fix serial bridge tee not wanted resolve 2022-11-12 15:03:42 +01:00
Jason2866
47dc00bd99 increase clock 2022-11-12 14:04:47 +01:00
Thomas Hargrove
066b98fe78
re-add tab 2022-11-11 12:06:44 -08:00
Thomas Hargrove
25be8709cf
Shave off the leftmost pixel of the 7 segment font 2022-11-11 12:03:28 -08:00
Theo Arends
50b0a983b2 Add uart info 2022-11-11 16:10:39 +01:00
Theo Arends
9b64c4eb4c Refactor some logging 2022-11-11 14:34:58 +01:00
Theo Arends
3d6bc2f842 Update API.md 2022-11-11 12:10:10 +01:00
Theo Arends
9ef0f2aa09 Consolidate AddLogBuffer 2022-11-11 11:47:11 +01:00
Theo Arends
082380a800
Merge pull request #17041 from s-hadinger/func_network_up
Added ``FUNC_NETWORK_UP`` and ``FUNC_NETWORK_DOWN`` events
2022-11-11 11:39:29 +01:00
Stephan Hadinger
0628d2f1a5 Use XdrvXsnsCall 2022-11-11 11:34:32 +01:00
Stephan Hadinger
3731894486 Added `FUNC_NETWORK_UP and FUNC_NETWORK_DOWN` events 2022-11-11 11:15:05 +01:00
Theo Arends
c1ea8953cb Refactor uint8_t to uint32_t 2022-11-11 10:44:56 +01:00
Theo Arends
6f00b455e7 Add serial receive poll during sleep
Add serial receive poll during sleep for tuya and serial bridge
2022-11-11 09:57:00 +01:00
Theo Arends
b7f6a7b00a Clean up logging functions 2022-11-11 09:30:31 +01:00
Theo Arends
89e8f4b429
Merge pull request #17036 from bovirus/development
Update italian language
2022-11-10 21:49:06 +01:00
bovirus
c5963d6f27
Update italian language 2022-11-10 21:27:42 +01:00
Theo Arends
986a9d10ae Refactor serial raw data representation 2022-11-10 16:02:00 +01:00
Theo Arends
e83882b655 Update changelogs 2022-11-10 13:54:05 +01:00
Jason2866
1146955312
Core 2.0.5.3 2022-11-10 12:52:38 +01:00
Jason2866
f16c555f2b
Tasmota core v2.0.5.3 2022-11-10 12:49:13 +01:00
Jason2866
e5cbc21396
Merge pull request #17034 from Jason2866/core_2053
Tasmota Core 2.0.5.3
2022-11-10 12:47:22 +01:00
Jason2866
2ae8faca2a
Tasmota Core 2.0.5.3 2022-11-10 11:52:47 +01:00
Theo Arends
0033766b93
Merge pull request #17033 from thomashargrove/s8
Fix for error on first command sent to S8 module
2022-11-10 09:50:15 +01:00
Theo Arends
41e44d0f9f
Merge pull request #16971 from thomashargrove/pmsx003t
Add support for Plantower PMSx003T AQI models with temperature and humidity
2022-11-10 09:42:28 +01:00
Theo Arends
7c6962cfef
Merge pull request #17032 from barbudor/dingtian_driver
Dingtian relay board driver
2022-11-10 09:18:22 +01:00
Thomas Hargrove
b5ce17112f
Fix for error on first command sent to S8 module 2022-11-09 15:33:16 -08:00
barbudor
41c4af7dfe change mqtt DINGTIAN_CHG to STAT 2022-11-09 22:01:01 +01:00
Theo Arends
dd1586fbfc Bump version to v12.2.0.4
- Reverted Flash Mode back from ``DIO`` to ``DOUT`` for ESP8266/ESP8285 (#17019)
2022-11-09 12:19:33 +01:00
Theo Arends
64a609eae2 Revert "DIO as default for ESP82xx"
This reverts commit 5673e11fac48d2fbc1786abfc7970a6c391b2b1c.
2022-11-09 11:57:34 +01:00
Theo Arends
67c4b1be1f Fix VL53L1X compilation 2022-11-08 18:08:45 +01:00
Theo Arends
381bfbf5bd Redesign distance sensors VL53LXX, TOF10120, HRXL and DYP
Redesign distance sensors VL53LXX, TOF10120, HRXL and DYP to use cm instead of mm (#17021)
2022-11-08 16:59:46 +01:00
Theo Arends
64ed79debc Make distance floats with one decimal (#17021) 2022-11-08 16:16:15 +01:00
Theo Arends
05b43fb143 Redesign distance sensors HRXL and DYP
Redesign distance sensors HRXL and DYP to use cm instead of mm (#17021)
2022-11-08 15:27:40 +01:00
Theo Arends
c14e50820b
Merge pull request #17003 from pkkrusty/patch-5
Add options to display section
2022-11-08 10:12:48 +01:00
Theo Arends
45628065d7
Merge pull request #17019 from Jason2866/esp8266_dio
`DIO` as default flash mode for ESP82xx
2022-11-08 10:11:40 +01:00
Barbudor
83a07895f9 take care of Relay1 is not 1st power 2022-11-07 23:27:16 +01:00
Barbudor
b03476ff6f Merge branch 'development' into dingtian_driver 2022-11-07 22:33:35 +01:00
pkkrusty
6c2cecf294
Fixed comment spacing 2022-11-07 12:03:36 -08:00
Jason2866
5673e11fac DIO as default for ESP82xx 2022-11-07 16:47:43 +01:00
Theo Arends
e8f24fdb6c Update ESP8285 processor detection 2022-11-07 15:02:03 +01:00
Theo Arends
7698178b90 Update ESP8285 device detection 2022-11-07 15:00:47 +01:00
Theo Arends
4ebd7a9cd3 Update ESP32 processor detection 2022-11-07 12:46:24 +01:00
Theo Arends
1c47744eeb Clean up 2022-11-07 11:56:27 +01:00
Theo Arends
18ec24b86b
Merge pull request #17016 from reimerp/deepsleepfix
fix for deepsleep first calculation #13955
2022-11-07 11:54:10 +01:00
Theo Arends
a469b35f02 Bump version to v12.2.0.3 2022-11-07 11:06:17 +01:00
Theo Arends
45b48811af
Merge pull request #17011 from Cossid/bp1658cj
Add support for BP1658CJ LED Driver
2022-11-07 10:46:33 +01:00
Reimer Prochnow
479b8f4015 fix for #13955
Signed-off-by: Reimer Prochnow <reimer-github@ideenhal.de>
2022-11-06 18:38:40 +01:00
Theo Arends
8f920220db Fis default sserialconfig on new installs 2022-11-06 17:41:53 +01:00
Cossid
1e2e5c308c BP1658CJ - Add missing language translation for ca_AD. 2022-11-06 09:26:37 -06:00
Cossid
79928150cb BP1658CJ - Remove debugging define. 2022-11-06 09:18:52 -06:00
Cossid
a600403d65
Merge branch 'arendst:development' into bp1658cj 2022-11-06 09:14:47 -06:00
Cossid
0e32763a4e BP1658CJ - Add support for BP1658CJ RGBCW led driver control as used in Orein OS0100411267 Bulb 2022-11-06 09:14:03 -06:00
Theo Arends
fa8837c04e
Merge pull request #17007 from curzon01/modbusbridge
Fix ModbusBridge buffer overflow (#16979)
2022-11-06 15:46:16 +01:00
Norbert Richter
050f2e7e61
Fix ModbusBridge buffer overflow (#16979) 2022-11-06 12:32:30 +01:00
Norbert Richter
f76bed338b
Localize ModbusBridge global func/var names 2022-11-06 12:32:30 +01:00
Norbert Richter
31516f2d34
Add ModbusBridge malloc error notes 2022-11-06 12:32:30 +01:00
Theo Arends
a69032d2a1
Merge pull request #16982 from hrandib/development
Add TM1637 driver written in Berry
2022-11-06 12:26:54 +01:00
s-hadinger
aaafd1ddb8
Merge pull request #17004 from s-hadinger/berry_dyn
Berry add ``dyn`` class
2022-11-06 11:11:10 +01:00
Stephan Hadinger
e910f3071c Berry add `dyn` class 2022-11-06 10:52:17 +01:00
pkkrusty
4bb9b86149
Add options to display section
Section was missing a few defines, and cleaned up the formatting.
2022-11-05 15:38:07 -07:00
s-hadinger
d0cd3d3778
Merge pull request #16990 from s-hadinger/artnet_optimization
ESP32 DMX ArtNet optimization to avoid any object allocation and avoid garbage collector pauses
2022-11-03 22:18:18 +01:00
s-hadinger
0b2e7fd293
Merge pull request #16991 from s-hadinger/berry_reduce_logs
Berry reduce detailed GC logs
2022-11-03 22:17:31 +01:00
Stephan Hadinger
e7ac249f8f Berry reduce detailed GC logs 2022-11-03 22:01:24 +01:00
Stephan Hadinger
a5e7917704 ESP32 DMX ArtNet optimization to avoid any object allocation and avoid garbage collector pauses 2022-11-03 21:54:21 +01:00
Theo Arends
1caffb353c Add more SO47 info 2022-11-03 17:50:47 +01:00
Theo Arends
4e9cfc7629 Add command `SetOption47 1..255`
Add command ``SetOption47 1..255`` to delay power on relay state in seconds reducing power surge
2022-11-03 17:26:54 +01:00
s-hadinger
438656dcdc
Merge pull request #16987 from s-hadinger/zigbee_router_fix
Zigbee fix checksum in ZBBridge Pro router firmware
2022-11-03 14:25:18 +01:00
Stephan Hadinger
9bd458337f Zigbee fix checksum in ZBBridge Pro router firmware 2022-11-03 14:24:41 +01:00
Dmytro Shestakov
f3b6cd1d73 Add TM1637 driver written in Berry
It allows to use this type of display in addition to any standard
Tasmota display simultaneously
2022-11-03 10:25:14 +02:00
s-hadinger
0b7284ea5e
Merge pull request #16984 from s-hadinger/artnet_module
Support for DMX ArtNet Led matrix animations
2022-11-02 22:52:39 +01:00
Stephan Hadinger
b2e9001ca2 Support for DMX ArtNet Led matrix animations 2022-11-02 22:37:53 +01:00
Theo Arends
0632377192 Fix serial initialization
Fix serial initialization for baudrate and config (#16970)
2022-11-02 11:24:24 +01:00
s-hadinger
fe6aecc0c3
Merge pull request #16977 from s-hadinger/berry_bytes_reverse
Added Berry ``bytes().reverse()`` method
2022-11-02 08:12:49 +01:00
Stephan Hadinger
4c896cd8bc Added Berry `bytes().reverse()` method 2022-11-01 23:07:15 +01:00
Theo Arends
da65c8798b Shelly Pro better light show 2022-11-01 17:19:42 +01:00
s-hadinger
c3215a9d6f
Merge pull request #16976 from Staars/fix_ulp_compile_c3
ignore USE_BERRY_ULP on unsupported platforms
2022-11-01 17:00:25 +01:00
Christian Baars
1011ee2cbb ignore USE_BERRY_ULP on unsupported platforms 2022-11-01 15:55:01 +01:00
Thomas Hargrove
644f9da9af
Change define name to be more consistent with existing defines 2022-10-31 13:41:37 -07:00
Thomas Hargrove
2d3b5c5a76
Add comment to endif 2022-10-31 10:58:13 -07:00
Thomas Hargrove
0e5592fbff
Add support for PMSx003T modules that have temperature+humidity 2022-10-31 10:56:26 -07:00
Theo Arends
42f9090b71
Merge pull request #16968 from md5sum-as/operate_16_bytes
xsns_40_pn532.ino Saving the PN532 password and PACK in Settings
2022-10-31 17:53:12 +01:00
md5sum-as
a3391ddc2b Fixed a compilation error: added conditional compilation 2022-10-31 19:07:03 +03:00
md5sum-as
ad484ad194 Saving the PN532 password and PACK in Settings 2022-10-31 18:37:46 +03:00
Theo Arends
e9d99a088b Fix hardware watchdog at power on 2022-10-31 15:02:29 +01:00
Theo Arends
9db8a23401 Fix Shelly Pro detection when using buttons (#16733) 2022-10-31 14:01:15 +01:00
Theo Arends
817819e603 Add PN532 persistent slots (#16939) 2022-10-31 13:38:26 +01:00
Theo Arends
c351c62baf Fix possible serial watchdogs 2022-10-31 11:25:00 +01:00
Theo Arends
79536d8714 Update changelog 2022-10-31 10:59:49 +01:00
s-hadinger
3f65ba4d4b
Merge pull request #16961 from Staars/ulp-riscv
Berry: Expose the ULP on ESP32S2 and ESP32S3 (RISCV version)
2022-10-31 10:22:09 +01:00
Theo Arends
214b3b2680
Merge pull request #16939 from md5sum-as/operate_16_bytes
xsns_40_pn532.ino small refactoring and add support for NTAG2xx tags
2022-10-31 09:49:27 +01:00
Christian Baars
0b063f62df
allow ULP on ESP32, S2 and S3 2022-10-30 18:43:37 +01:00
Christian Baars
ed6c21ad80
allow ULP not only for ESP32 2022-10-30 18:42:47 +01:00
Christian Baars
87b403f10d
support RISCV ULP for ESP32S2 and ESP32S3 2022-10-30 18:40:32 +01:00
md5sum-as
f1f8d27079 Added prefix to all functions 2022-10-30 20:09:52 +03:00
Theo Arends
7167eb2f46 Changed ADE7953 monitoring
Changed ADE7953 monitoring from instant power to accumulated energy (#16941)
2022-10-30 12:20:56 +01:00
Theo Arends
41b65fd6b7 Add support for two phase power calibration
Add support for two phase power calibration using commands ``PowerSet2``, ``VoltageSet2`` and ``CurrentSet2``
2022-10-30 11:15:17 +01:00
Jason2866
cd14c15c41
rm cam_hal.h...
since not needed anymore with core 2.0.5.2
2022-10-30 11:03:05 +01:00
Theo Arends
09c8ec1b8c
Merge pull request #16953 from bovirus/development
Update italian language
2022-10-30 10:43:34 +01:00
bovirus
5711fe65a2
Update italian language 2022-10-30 10:17:01 +01:00
Theo Arends
ebfbba3fdc
Merge pull request #16952 from Staars/webcam
allow webcam to reuse and share I2C bus 2
2022-10-30 09:32:12 +01:00
barbudor
f861e8330a dingtian driver take 1 2022-10-29 21:38:22 +02:00
Christian Baars
1378d57377 allow webcam to reuse and share I2C bus 2 2022-10-29 20:13:00 +02:00
Theo Arends
314dbf5e6b Add support for second energy channel calibration 2022-10-29 19:08:06 +02:00
Theo Arends
7fac661b2e Update changelogs 2022-10-29 16:00:47 +02:00
Theo Arends
644761e22b
Merge pull request #16938 from eeak/dali
DALI support for Tasmota
2022-10-29 15:29:25 +02:00
eeak
06350618b7 cleanup tasmota_template.h 2022-10-29 16:12:10 +03:00
eeak
4e98cbb387 moved D_CMND_xx to i18n.h 2022-10-29 16:09:09 +03:00
Theo Arends
5791645788
Merge pull request #16934 from barkow/development
Support SML modbus read coil messages
2022-10-29 14:30:21 +02:00
Theo Arends
2c114d3243
Merge pull request #16914 from cybermaus/Deduplicate-and-fix-%timerN%
Deduplicate and fix %timer n%
2022-10-29 14:21:41 +02:00
Theo Arends
8863d758e6
Merge pull request #16928 from hallard/tic_standard
Teleinfo standard mode bug fixes
2022-10-29 14:19:21 +02:00
Jason2866
ecc8849996
Merge pull request #16944 from Staars/post_esp32
check for valid cdc config: board vs env
2022-10-29 12:32:42 +02:00
eeak
6c0e38e38d Data struct rebuilded. Thanks barbudor for help 2022-10-29 12:50:41 +03:00
Staars
5dc5e11dc9 check for valid cdc config: board vs env 2022-10-29 10:56:53 +02:00
eeak
404db7965e Timer number is now declared in my_user_config.h 2022-10-28 21:57:40 +03:00
eeak
76c5be7634 Packed global variables into a struct 2022-10-28 20:16:45 +03:00
eeak
c1c0b25c17 Clean up some comments and little refactor 2022-10-28 19:47:55 +03:00
eeak
1bf69fd310 dali 2022-10-28 17:08:02 +03:00
Jason2866
7cd934fd16
Tasmota ESP32 Core v2.0.5.2 2022-10-28 15:00:34 +02:00
Jason2866
8e86104489
Merge pull request #16936 from Jason2866/core2502
Tasmota Core 2.0.5.2
2022-10-28 14:53:53 +02:00
Jason2866
cc98326349 Tasmota Core 2.0.5.2 2022-10-28 11:51:51 +02:00
md5sum-as
25079bb86b Ready for PR 2022-10-28 01:26:24 +03:00
md5sum-as
d152199aee Edit formats 2022-10-28 01:24:22 +03:00
md5sum-as
0d22a16240 Disable in default config 2022-10-28 01:13:27 +03:00
md5sum-as
116affb2fa 16 bytes operational 2022-10-28 01:12:33 +03:00
barkow
3cccdd9c4f
Change modbus rx message length check
Start evaluating messages already after message length information byte is received. Necessary to support read coil status messages.
2022-10-27 21:46:07 +02:00
barkow
32fbb03471
Merge branch 'arendst:development' into development 2022-10-27 21:28:52 +02:00
md5sum-as
b877c174b1 Ready fo test (32 bytes) 2022-10-27 19:23:11 +03:00
Theo Arends
90a9ebc3e1 Fix Shelly Pro ethernet stability 2022-10-27 17:52:44 +02:00
Charles
09b02b3325 standard mode bug fixes
Increase serial buffer size for standard mode
trimmed values for standard mode
fix (hopefully) negative total kWh counter
save energy on reset
update energy total every hour
fixed contract label display for Standard mode
2022-10-27 14:16:37 +02:00
md5sum-as
cc7936bd7e Add password operations 2022-10-27 00:48:22 +03:00
md5sum-as
97230fe456 Removed the duplicated functionality 2022-10-26 19:21:50 +03:00
Theo Arends
cef18060a0 Bump version to v12.2.0.2
Prepare for extended calibration and move some persistent data (PowerLow)
2022-10-26 17:59:43 +02:00
Theo Arends
c5f7195d77 Add support for Shelly Pro 1/1PM and 2/2PM (#16773) 2022-10-26 17:16:36 +02:00
Jason2866
e2391c33e7
use actual builded safeboot firmwares for all esp32 env (Github Actions only) (#16915) 2022-10-26 15:50:44 +02:00
Theo Arends
0d45590ac4 Fix Shelly Pro led functionality 2022-10-26 12:45:06 +02:00
md5sum-as
0887ec31f5 Reduced 16 bytes 2022-10-26 01:29:10 +03:00
md5sum-as
9534838c19 renamed the commands Sensor40, increased recording to 32, stage 2 2022-10-26 00:56:44 +03:00
md5sum-as
0487cf9eaa renamed the commands Sensor40, increased recording to 32 2022-10-26 00:50:07 +03:00
md5sum-as
37df680a80 Refactoring mifare classic, stage 3 2022-10-26 00:15:04 +03:00
cybermaus
a47f6baf2f
Deduplicate xdrv_09_timers.ino also
Turns out even TimerGetTimeOfDay was duplicate code from ApplyTimerOffsets
Did add a fix for the permanent day/night situation
2022-10-25 22:39:30 +02:00
cybermaus
0eebdf8620
Deduplicate code from xdrv_10_rules.ino
Turns out this code was already done in xdrv_09_timers.ino
2022-10-25 22:34:08 +02:00
md5sum-as
b35479559d Delete #define USE_PN532_DATA_RAW 2022-10-25 23:15:58 +03:00
md5sum-as
3e3dfa35d3 refactoring mifare classic stage 2 2022-10-25 23:14:27 +03:00
md5sum-as
5db8fcd0d0 refactoring mifare classic 2022-10-25 22:38:59 +03:00
md5sum-as
c10f53eb4e
Merge branch 'arendst:development' into development 2022-10-25 20:19:50 +03:00
md5sum-as
b419e69759 Defines 2022-10-25 20:18:31 +03:00
md5sum-as
e7600ac83a Add support NTAG21x and NTAG20x cards.
NTAG21x support password authentication
2022-10-25 20:16:23 +03:00
Jason2866
89d4e87195
Update to stale@v6.0.1 2022-10-25 13:11:40 +02:00
s-hadinger
07d07b896c
Merge pull request #16911 from s-hadinger/berry_gpio_fix
Fix Berry `gpio.INPUT` conflict
2022-10-25 12:07:33 +02:00
Jason2866
3ea108193f
Merge pull request #16910 from Jason2866/development
add python version to CI
2022-10-25 12:01:30 +02:00
Jason2866
e4b9ef6014 macOS-12 2022-10-25 12:00:37 +02:00
Stephan Hadinger
549f13f7a8 Fix Berry gpio.INPUT conflict 2022-10-25 11:49:39 +02:00
Jason2866
81b363f2cb add python version 2022-10-25 11:41:21 +02:00
s-hadinger
610173629d
Merge pull request #16903 from s-hadinger/prep_artnet
Prepare for DMX Artnet support on ESP32
2022-10-25 09:00:37 +02:00
Stephan Hadinger
2bf7ea1154 Prepare for DMX Artnet support on ESP32 2022-10-24 23:05:23 +02:00
Jason2866
4ec5c16ef8
actions/setup-python@v4 2022-10-24 15:06:05 +02:00
Jason2866
432bd6b0f3
actions/setup-python@v4 2022-10-24 15:04:43 +02:00
Jason2866
115caf2bc9
actions/setup-python@v4 2022-10-24 15:03:19 +02:00
s-hadinger
90a79341fe
Merge pull request #16900 from s-hadinger/zigbee_zbbridgepro_router
Add Zigbee router firmware for Sonoff ZBBridgePro
2022-10-24 13:55:42 +02:00
s-hadinger
2295806569
Fix changelog 2022-10-24 13:55:28 +02:00
s-hadinger
a341ca3660
Merge branch 'development' into zigbee_zbbridgepro_router 2022-10-24 13:53:38 +02:00
Stephan Hadinger
72b4ea2ee3 Add Zigbee router firmware for Sonoff ZBBridgePro 2022-10-24 13:52:05 +02:00
Theo Arends
d173b93758 Fix shelly pro button double press 2022-10-24 12:21:25 +02:00
Theo Arends
b4269d262c Add support for Shelly Pro 1/2
Add support for Shelly Pro 1/2 (#16773)
2022-10-24 11:32:10 +02:00
Theo Arends
bfb40f16dc
Merge pull request #16899 from Jason2866/NimBLE
update NimBLE v1.4.1
2022-10-24 11:16:05 +02:00
Jason2866
646e2006ec NimBLE v1.4.1 2022-10-24 10:56:42 +02:00
s-hadinger
ee1ce20f94
Merge pull request #16892 from s-hadinger/berry_setbytes
Berry add `bytes().setbytes()`
2022-10-23 20:01:51 +02:00
Stephan Hadinger
2ef866e3b8 Berry add bytes().setbytes() 2022-10-23 19:43:40 +02:00
s-hadinger
c0c8f922c3
Merge pull request #16891 from s-hadinger/fix_display_calibrate
Fix DisplayCalibrate
2022-10-23 18:47:54 +02:00
Stephan Hadinger
2692ef4486 Fix DisplayCalibrate 2022-10-23 18:47:04 +02:00
Theo Arends
28df9112ee
Merge pull request #16889 from Noschvie/patch-10
Fix typo
2022-10-23 18:33:33 +02:00
Norbert
9192e529a6
Fix typo 2022-10-23 18:21:12 +02:00
Theo Arends
8fd1c600b9
Merge pull request #16878 from hallard/teleinfo_std
Teleinfo fix contract display and percent bargraph standard mode
2022-10-22 16:19:49 +02:00
Charles
cd44b262b8 fix current tariff display in standard mode 2022-10-22 16:04:47 +02:00
Charles
a982c560dc fix contract in standard mode 2022-10-22 15:51:12 +02:00
barkow
82f8125965
Merge pull request #1 from arendst/development
Update from tasmota original
2022-10-21 23:27:44 +02:00
Theo Arends
203b040ca2
Merge pull request #16874 from barbudor/overridable_dht_max_sensor
allow DHT_MAX_SENSORS to be overridden
2022-10-21 21:52:28 +02:00
barbudor
90eb8e0c70 allow DHT_MAX_SENSORS to be overridden 2022-10-21 21:25:57 +02:00
Theo Arends
e347665148 Add 2 CSs 2022-10-21 15:10:21 +02:00
Theo Arends
47456a54ee Prep ADE7953 using SPI 2022-10-21 15:06:52 +02:00
Theo Arends
549e6d9c18 Add USE_SHIFT595 to tasmota32.bin 2022-10-21 13:40:01 +02:00
Theo Arends
6d4f36164f
Merge pull request #16860 from curzon01/patch-1
Update CHANGELOG.md
2022-10-19 14:01:33 +02:00
Norbert Richter
bee7c09098
Update CHANGELOG.md 2022-10-19 13:56:07 +02:00
Theo Arends
a57fb5e50e
Merge pull request #16859 from curzon01/dev-neopool
Update xsns_83_neopool.ino
2022-10-19 13:45:32 +02:00
Norbert Richter
b4dfd87912
Update NeoPool register desc 2022-10-19 10:46:08 +02:00
Norbert Richter
2fa0a6edf3
Add MBV_TIMER_OFFMB_TIMER_ENABLE countdown keys 2022-10-19 10:46:08 +02:00
Norbert Richter
3fb19a633a
Rework register const 2022-10-19 10:46:08 +02:00
Norbert Richter
720b3f7c9b
Change json unlocalized 2022-10-19 10:46:08 +02:00
Norbert Richter
1e2f2385b8
Add filtration toggle 2022-10-19 10:46:07 +02:00
Theo Arends
100e95f2cf Update xdrv_02_9_mqtt.ino 2022-10-19 10:44:08 +02:00
Theo Arends
753f4bee31 Change compiling with reduced boards manifests
Change compiling with reduced boards manifests in favour of Autoconfig (#16848)
2022-10-19 10:21:31 +02:00
Theo Arends
a9bff109b0
Merge pull request #16848 from Jason2866/boards_refac
Reduce Boards manifests
2022-10-18 19:58:31 +02:00
Theo Arends
f5621b786d
Merge pull request #16858 from Staars/webcam_widget
MI32 legacy: add webcam widget to dashboard
2022-10-18 19:58:12 +02:00
Christian Baars
970f85037b add webcam widget to dashboard 2022-10-18 19:27:24 +02:00
Jason2866
c445a88176
Merge branch 'development' into boards_refac 2022-10-18 17:52:17 +02:00
Jason2866
279b3494ed
Merge pull request #16857 from Jason2866/rm_webcam_lib
remove webcam lib
2022-10-18 17:49:59 +02:00
Jason2866
f77a5c96f6
remove webcam lib 2022-10-18 17:30:39 +02:00
Theo Arends
2104256b74 Add DS18x20 support on up to four GPIOs
Add DS18x20 support on up to four GPIOs by md5sum-as (#16833)
2022-10-18 16:36:45 +02:00
Theo Arends
df24aef75c
Merge pull request #16833 from md5sum-as/development
Adding support multiple GPIO for DS18x20 sensors. Aliases of DS18x20 optimization.
2022-10-18 15:40:32 +02:00
Theo Arends
7b6f724685 Update changelogs 2022-10-18 15:34:07 +02:00
Jason2866
402a311d14 rm not needed *.h files from lib 2022-10-18 11:53:50 +00:00
s-hadinger
329f0e6b1c
Merge pull request #16852 from s-hadinger/lvgl_fix_get_text
LVGL fix get text
2022-10-18 10:29:17 +02:00
Stephan Hadinger
1d34a80f65 Fix only for returned string 2022-10-18 10:04:04 +02:00
Stephan Hadinger
f87324f874 LVGL fix get text 2022-10-18 09:55:08 +02:00
Theo Arends
68f8b684a3
Merge pull request #16850 from christiankarsch/development
Added stop-condition before start-condition
2022-10-17 21:17:17 +02:00
Christian Karsch
4ba3b58ea8
Added stop-condition before start-condition
Bp5758d does not support repeated-start-condition.
Therefore it overwrite the next register ('current range setup' of red-channel)

A stop-condition is always needed before next start-condition
2022-10-17 21:01:25 +02:00
Theo Arends
a9ba035474 refactor NTP fraction 2022-10-17 17:59:18 +02:00
Jason2866
9487465517 s3cdc safeboot 2022-10-17 16:49:55 +02:00
Theo Arends
0be740850a
Merge pull request #16847 from LeonPoon/development
Support nanos in rtc for sync from ntp
2022-10-17 16:48:05 +02:00
Jason2866
c7a2d04972 fix [env:tasmota32s3] 2022-10-17 16:15:27 +02:00
Jason2866
b8d594b868 fix [env:tasmota32s3cdc] 2022-10-17 16:12:18 +02:00
Jason2866
724b0342c7
Reduce Boards manifests
## Description:

by using the 4MB default safeboot partition scheme layout. Tasmota will increase the FS partition with
the new Autoresize feature introduced with PR #16838 #16842

So it is possible to reduce the boards mainifest since it is no more needed to have different ones for boards with different flash sizes. Added generic S3 Flash / PSRAM boards variants. Removed all S3 boards specific variants. Configuration is done via Autoconfig. For a few special use cases maybe an [env] needs to be defined. Examples for are in file `platformio_tasmota_cenv_sample.ini`

@s-hadinger @arendst @staars please test. Since it is a major change how the firmwares are build, there is maybe something i overlooked. So i do not check all below.

## Checklist:
  - [x] The pull request is done against the latest development branch
  - [x] Only relevant files were touched
  - [ ] Only one feature/fix was added per PR and the code change compiles without warnings
  - [ ] The code change is tested and works with Tasmota core ESP8266 V.2.7.4.9
  - [ ] The code change is tested and works with Tasmota core ESP32 V.2.0.5
  - [x] I accept the [CLA](https://github.com/arendst/Tasmota/blob/development/CONTRIBUTING.md#contributor-license-agreement-cla).

_NOTE: The code change must pass CI tests. **Your PR cannot be merged unless tests pass**_
2022-10-17 16:04:11 +02:00
Leon Poon
18fdc4a176 support nanos in rtc for sync from ntp
so that all tm1637 6-digit clocks tick simultaneously at real second boundary.
2022-10-17 21:45:29 +08:00
Theo Arends
f998a457db Disable SspmPowerOnState for v1.0.0 main 2022-10-17 15:41:46 +02:00
Jason2866
6b1deb5e5e
Revert "refac (#16845)" (#16846)
This reverts commit bc4fb77db0c91c6d9418b6ed700261a74f4fcf18.
2022-10-17 15:38:30 +02:00
Jason2866
bc4fb77db0
refac (#16845)
* Update sensor.h

* Update esp_camera.h

* refactor boards manifests

* fix s3 safebooot env

* fix env
2022-10-17 15:37:26 +02:00
Theo Arends
065396ff73 Bump version v12.2.0.1 2022-10-17 11:25:22 +02:00
Theo Arends
d4559fea5a Prep release v12.2 2022-10-17 10:34:48 +02:00
s-hadinger
714e3210fa
Merge pull request #16842 from s-hadinger/flash_32_128
Support for Flash size 32/64/128 MB in Partition Wizard and auto-resize
2022-10-16 18:44:58 +02:00
Stephan Hadinger
eb3de9c73a Support for Flash size 32/64/128 MB in Partition Wizard and auto-resize 2022-10-16 18:32:46 +02:00
Theo Arends
2cda2e2ce7
Merge pull request #16816 from Jason2866/webcam
rm Domoticz / ad Counter in `env: webcam`
2022-10-16 15:05:10 +02:00
Theo Arends
f07a90bd4a
Merge pull request #16837 from barbudor/ina219_any_shunt_value
INA219 enhancement : any shunt value
2022-10-16 15:04:34 +02:00
Theo Arends
411a7f0788 Update xdrv_86_esp32_sonoff_spm.ino 2022-10-16 15:03:05 +02:00
Theo Arends
480fae6804 Add command `SspmPowerOnState<relay> 0|1|2`
Add command ``SspmPowerOnState<relay> 0|1|2`` to set Sonoff SPM 4Relay module v1.2.0 power on state overruling tasmota  global power on state. 0 = Off, 1 = On, 2 = Saved state (#13447)
2022-10-16 12:57:17 +02:00
s-hadinger
0bd57a3787
Merge pull request #16838 from s-hadinger/resize_fr_bootcount_0
Resize FS to max at initial boot
2022-10-16 12:38:45 +02:00
Stephan Hadinger
39a05984ca Automatically resize FS to max flash size at initial boot (ESP32x) 2022-10-16 12:19:08 +02:00
Stephan Hadinger
5e03066883 Resize FS to max at initial boot 2022-10-16 11:49:30 +02:00
Barbudor
2921832912 spacing 2022-10-16 00:21:30 +02:00
Barbudor
8742770fb4 take 1 2022-10-16 00:03:07 +02:00
md5sum-as
1f8012482e Fix compilation error 2022-10-15 19:27:06 +03:00
md5sum-as
fa649ec174 naming optimization 2022-10-15 19:05:35 +03:00
md5sum-as
c7404049eb
Merge branch 'arendst:development' into development 2022-10-15 19:02:12 +03:00
md5sum-as
d4f3bc732b ESP32 don't support dual pin mode 2022-10-15 18:57:29 +03:00
md5sum-as
4b2181482f Ready for test on esp8266 and esp32 2022-10-15 18:40:17 +03:00
md5sum-as
c4ba1457a1 Ready for test on esp8266 and esp32 2022-10-15 18:39:37 +03:00
md5sum-as
61027810fa Ready for test on esp8266 and esp32 2022-10-15 18:38:47 +03:00
Jason2866
e1af7ba12a USE_LIGHT needed for flashlight 2022-10-15 16:26:02 +02:00
Theo Arends
90d6b7572d
Merge pull request #16822 from christiankarsch/development
[BP5758D] Fix Sleep
2022-10-15 14:38:34 +02:00
Theo Arends
169e65a922 Add ESP32 non-persistent phy selection 2022-10-15 14:33:21 +02:00
md5sum-as
5c9c7f2e26 Ready for test esp8266 2022-10-15 14:58:23 +03:00
md5sum-as
8c81ee7487 Ready for test esp8266 2022-10-15 14:52:45 +03:00
md5sum-as
59c7488e70 Corrections based on sensor sorting 2022-10-15 14:25:43 +03:00
md5sum-as
d8a3560497 Ready fo tests 2022-10-15 12:06:07 +03:00
Christian Karsch
ee55903e0d
[BP5758D] Fix Sleep
If all channels are set to 0, disable all channels on the driver and then set the driver into sleep-mode
Otherwise wake up the driver when it is sleeping and active all channels
2022-10-14 23:37:30 +02:00
md5sum-as
eccccdad37
Merge branch 'arendst:development' into development 2022-10-15 00:00:23 +03:00
md5sum-as
9ae38a9797 tests 2022-10-14 23:58:53 +03:00
md5sum-as
1cdbb980f1 Add support DS18x20_MULTI_GPIOs for esp8266 2022-10-14 23:58:53 +03:00
s-hadinger
2523a29da3
Merge pull request #16819 from s-hadinger/berry_restart_flag
Berry add access to `restart_flag`
2022-10-14 08:59:21 -07:00
Stephan Hadinger
6783a90ccc Add bootcount 2022-10-14 17:31:15 +02:00
Stephan Hadinger
65672b62ae Berry add access to restart_flag 2022-10-14 17:14:35 +02:00
Jason2866
8d59dd800f
rm Domoticz / ad Counter 2022-10-14 15:32:57 +02:00
Theo Arends
2456280139
Merge pull request #16810 from barbudor/fix_script_topic
get correct topic var
2022-10-14 15:02:51 +02:00
Theo Arends
d36ce4977a Update TEMPLATES.md 2022-10-14 14:21:28 +02:00
Theo Arends
2dec4ac057 Add clock change execution to webcam 2022-10-14 13:54:37 +02:00
barbudor
a0de32e67d get correct topic var 2022-10-13 21:27:06 +02:00
Theo Arends
2ad018816b Add command `WcClock 10..200`
Add command ``WcClock 10..200`` set webcam clock in MHz. Default is 20
2022-10-13 17:58:16 +02:00
Theo Arends
3dd32a1ebd Update xdrv_10_rules.ino 2022-10-13 17:13:19 +02:00
Theo Arends
799dea913a
Merge pull request #16807 from cybermaus/Make-%timerN%-solar-aware
Fix %timerN% rule variables for SunRise/Sunset timers
2022-10-13 17:06:43 +02:00
s-hadinger
4032ac2354
Merge pull request #16788 from s-hadinger/berry_re_fix
Berry regex `re` fix
2022-10-13 07:10:04 -07:00
Theo Arends
5e2eb016a5
Merge pull request #16806 from Jason2866/webcam_fix
abort webcam if no pin config
2022-10-13 15:57:50 +02:00
Theo Arends
d307be0cf6 Refactor ADE7953 2022-10-13 15:48:23 +02:00
cybermaus
deaba8471d
Update xdrv_10_rules.ino
Enhance %timerN% rule variables to also work for timers with SunRise/SunSet configuration
2022-10-13 14:59:51 +02:00
Theo Arends
bf644d8052 Add Export Active report to Shelly EM (#16794) 2022-10-13 14:32:35 +02:00
Theo Arends
cf5169b3ae Restore Shelly 2.5 low reactive power channels 2022-10-13 12:58:59 +02:00
Jason2866
7e12fbbb6d
abort webcam if no pin config
avoids crashing if no valid config is provided
2022-10-13 11:54:27 +02:00
Theo Arends
4471868580 Fix Shelly 2.5 low reactive power channels 2022-10-13 09:42:42 +02:00
Theo Arends
d0ee5776e5
Merge pull request #16802 from WinMin/development
fix stack overflow vulnerability
2022-10-12 19:31:16 +02:00
swing
066878da4d fix stack overflow vulnerability 2022-10-13 00:40:17 +08:00
Theo Arends
0768f5bc4f Clean up debugging 2022-10-12 17:18:27 +02:00
Theo Arends
a856275c48 Fix ADE7953 VAr no load detection 2022-10-12 16:31:51 +02:00
Theo Arends
6202211c31 Fix Shelly EM polarity (#16486) 2022-10-12 15:46:33 +02:00
Theo Arends
5cfbbd4302 Add command `Sunrise 0..3` to select sunrise dawn angle
- Bump version to v12.1.1.5
- Add command ``Sunrise 0..3`` to select sunrise dawn angle between Normal, Civil, Nautical or Astronomical (#16795)
2022-10-12 11:02:54 +02:00
Jason2866
40f7cfba4c
download-artifact@v3 2022-10-11 18:48:39 +02:00
Theo Arends
2f1eea2eaf Add more docu to energy modbus driver 2022-10-11 18:39:48 +02:00
Jason2866
579c8d0141
Merge pull request #16792 from Jason2866/updt_actions
Updt actions
2022-10-11 18:36:15 +02:00
Jason2866
2e6ec47273 upload-artifact@v3 2022-10-11 18:31:44 +02:00
Jason2866
091597bcab
upload-artifact@v3 2022-10-11 18:29:40 +02:00
Jason2866
77f434577f
Fix getPower return value
Power level -3 returned the wrong value.
2022-10-11 17:50:34 +02:00
Jason2866
ce46d0a089
Fix build with esp32c3 2022-10-11 17:46:15 +02:00
Theo Arends
186566226b Remove debug from energy modbus 2022-10-11 11:15:25 +02:00
Theo Arends
0085e02a5b Fix possible buffer overflows with exception 2022-10-11 11:12:54 +02:00
Theo Arends
3c7a5ebfd3 Fix possible buffer overflows with exception 2022-10-11 11:10:47 +02:00
Theo Arends
7e67f33d76
Merge pull request #16786 from barbudor/ina3221
INA3221 3-channel DC voltage and current sensor
2022-10-11 09:59:54 +02:00
Barbudor
2105b318d2 saving 48 code bytes 2022-10-10 22:05:50 +02:00
Barbudor
cd44be8a1f add code usage 2022-10-10 21:24:20 +02:00
Barbudor
b63d925cf0 log clean up 2022-10-10 21:18:41 +02:00
Theo Arends
ba1bf81764 Enlarge USB Serial RxBuffer from 256 to 800 2022-10-10 16:39:31 +02:00
Theo Arends
61113e6918 Fix serial on ESP32C3/S2/S3 using USB console 2022-10-10 14:21:25 +02:00
Stephan Hadinger
f4dee20d0a Berry regex re fix 2022-10-10 14:20:30 +02:00
Theo Arends
f505f7a034
Merge pull request #16762 from StoyanDimitrov/patch-1
Update bg_BG.h
2022-10-10 10:20:45 +02:00
s-hadinger
b2f1cc2c55
Merge pull request #16778 from s-hadinger/zigbee_plugin_optim
Zigbee plugin optimize memory
2022-10-09 22:03:31 +02:00
Stephan Hadinger
8432ab1aec Zigbee plugin optimize memory 2022-10-09 21:52:56 +02:00
Barbudor
5f6d0f8310 Merge branch 'development' into ina3221 2022-10-09 20:02:27 +02:00
Barbudor
fb6f7515eb my_user_config.h 2022-10-09 20:00:34 +02:00
Barbudor
5967d15320 Index should start at 1 + JSON array 2022-10-09 19:32:54 +02:00
Barbudor
746b5389be driver ina3221, take 1 2022-10-09 19:11:43 +02:00
Theo Arends
3c258f4e31 Try to fix energy modbus warchdogs 2022-10-09 18:38:30 +02:00
s-hadinger
058432c641
Merge pull request #16772 from sfromis/Epoch-in-Berry-time-map
Epoch in Berry time map
2022-10-09 18:21:43 +02:00
Theo Arends
98ae77037d Merge branch 'development' of https://github.com/arendst/Tasmota into development 2022-10-09 17:59:30 +02:00
Theo Arends
2d15697de4 Increase serial console fixed input buffer size from 520 to 800 2022-10-09 17:59:27 +02:00
sfromis
4a3a52cd3e
Epoch in Berry map for time
Inserts input epoch value directly into the output map, for consistently having epoch in this data structure
2022-10-09 16:12:16 +02:00
sfromis
409c9888dd
Epoch in Berry map for time
Uses mktime to calculate the epoch value from the broken-down time structure, could potentially be tuned if deemed too inefficient in case of the caller already having the epoch value nearby.
2022-10-09 16:09:29 +02:00
s-hadinger
789075ee6b
Merge pull request #16769 from s-hadinger/zigbee_plugin_wildcard
Zigbee plugin allow matches to 'starts wth'
2022-10-09 15:11:19 +02:00
s-hadinger
8bb7587bff
Merge pull request #16770 from s-hadinger/zigbee_ts0001
Zigbee plugin for TS0001 switches
2022-10-09 15:04:43 +02:00
Stephan Hadinger
79896fcd3e Add trailing cr 2022-10-09 15:03:30 +02:00
Stephan Hadinger
4f4c6dd150 Zigbee plugin for TS0001 switches 2022-10-09 15:02:14 +02:00
Stephan Hadinger
e0a2a0928d Zigbee plugin allow matches to 'starts wth' 2022-10-09 14:59:15 +02:00
Jason2866
3b597a9a50
Merge pull request #16761 from Staars/MI32
Mi32 legacy: remove some legacy code
2022-10-08 23:24:45 +02:00
StoyanDimitrov
eca450886e
Update bg_BG.h 2022-10-08 19:07:34 +00:00
Theo Arends
36ed0cba7d Add tasmota resolution option to energy modbus 2022-10-08 17:17:15 +02:00
Theo Arends
3427e1bee3 Support for Modbus Energy Monitoring devices
Support for Modbus Energy Monitoring devices using a rule file. See ``xnrg_29_modbus.ino`` for more information
2022-10-08 16:14:11 +02:00
s-hadinger
b101c7ab62
Merge pull request #16759 from s-hadinger/haspmota_ttf
HASPmota support for TTF fonts
2022-10-08 16:03:50 +02:00
Stephan Hadinger
fac1b89afa HASPmota support for TTF fonts 2022-10-08 15:19:38 +02:00
s-hadinger
4b70df115c
Merge pull request #16758 from s-hadinger/lvgl_pixel_perfect
LVGL/HASPmota add tiny "pixel perfect" fonts for small screens
2022-10-08 14:31:39 +02:00
Stephan Hadinger
d71c06d03d LVGL/HASPmota add tiny "pixel perfect" fonts for small screens 2022-10-08 14:20:52 +02:00
s-hadinger
4687f98223
Merge pull request #16754 from s-hadinger/lvgl_fix_screenshot_bmp
LVGL Fix BMP format for `lv.screenshot()`
2022-10-08 09:57:54 +02:00
Stephan Hadinger
6cc52e0128 LVGL Fix BMP format for lv.screenshot() 2022-10-08 09:44:32 +02:00
s-hadinger
4c00bf54d5
Merge pull request #16748 from s-hadinger/lvgl_haspmota_antiburn_update
LVGL HASPmota demo and antiburn update
2022-10-07 17:52:03 +02:00
Stephan Hadinger
0c1ad0254f LVGL HASPmota demo and antiburn update 2022-10-07 17:50:25 +02:00
Christian Baars
08ef839cd1 do not expose unknown sensors to HK 2022-10-07 17:06:50 +02:00
Christian Baars
08ae94ff5b cleanups and handle unknown sensors 2022-10-07 16:10:19 +02:00
s-hadinger
0876360f44
Merge pull request #16745 from s-hadinger/ccronexp_fix
Fix ccronexpr
2022-10-07 13:58:17 +02:00
Stephan Hadinger
1fe07cbf7c Fix ccronexpr 2022-10-07 13:41:37 +02:00
Theo Arends
8162365960 Revert "Merge pull request #16744 from DSchndr/development"
This reverts commit ba8729f8d8962252028f098448d7864a5109436d, reversing
changes made to bc8cc520a2ade285cd71abfc4681d09eb6bd496a.
2022-10-07 11:23:59 +02:00
Theo Arends
625824caec Generic Energy Modbus rename config JSON 2022-10-07 10:46:25 +02:00
Theo Arends
ba8729f8d8
Merge pull request #16744 from DSchndr/development
[BP5758D] Fix Sleep
2022-10-07 09:03:31 +02:00
DSchndr
e4778deb42
[BP5758D] Fix Sleep
BP5758D outputs have to be disabled before sleep.
See https://github.com/openshwprojects/OpenBK7231T_App/issues/221
2022-10-07 02:33:32 +02:00
Theo Arends
bc8cc520a2 Add energy driver info during init 2022-10-06 23:27:43 +02:00
Theo Arends
77cfe80064 Add common voltage to generic energy modbus driver 2022-10-06 23:26:54 +02:00
Theo Arends
a1420e06fd Initial generic modbus energy driver 2022-10-06 23:17:04 +02:00
s-hadinger
7f0852dca5
Merge pull request #16743 from s-hadinger/lilygo_s3_display
Add Lilygo-S3-Display template
2022-10-06 19:54:03 +02:00
Stephan Hadinger
64123e5435 Add Lilygo-S3-Display template 2022-10-06 19:53:18 +02:00
Theo Arends
0265cab7dc Prep generic energy modbus interface 2022-10-06 19:22:46 +02:00
Theo Arends
b75c71c731
Merge pull request #16703 from TheChatty/patch-2
Specify ModBus Bridge code sizes
2022-10-06 16:59:17 +02:00
Theo Arends
18d37ea584
Merge pull request #16713 from gemu2015/par_udisplay
universal display driver Parallel display support
2022-10-06 16:58:37 +02:00
Jason2866
0019ca6c0c
S3 Display has 16MB flash 2022-10-06 16:49:41 +02:00
Jason2866
9df016a989
Merge pull request #16742 from Jason2866/Lily_S3_display
add LilyGO T-Display-S3 boards json
2022-10-06 16:19:10 +02:00
Jason2866
6ac293084b add LilyGO T-Display-S3 boards json 2022-10-06 16:16:30 +02:00
s-hadinger
35c6d148c4
Merge pull request #16741 from s-hadinger/lvgl_fix_leak
LVGL fix potential memory leak
2022-10-06 12:48:55 +02:00
Stephan Hadinger
7f33f0acf3 LVGL fix potential memory leak 2022-10-06 12:42:36 +02:00
Jason2866
4b1bd7767e
Update OCD and debug env 2022-10-06 12:40:52 +02:00
Jason2866
4be7b3d073
revert last commit to check CI failure 2022-10-06 12:37:28 +02:00
Jason2866
418c60ebba
update debug and ocd env 2022-10-06 12:21:06 +02:00
s-hadinger
af5b25f16f
Merge pull request #16740 from s-hadinger/lvgl_8_3_2
ESP32 LVGL library from v8.3.0 to v8.3.2
2022-10-05 22:40:15 +02:00
Stephan Hadinger
48bc861727 ESP32 LVGL library from v8.3.0 to v8.3.2 2022-10-05 22:28:28 +02:00
s-hadinger
3f11d347f4
Merge pull request #16739 from s-hadinger/lv_berry_solidify
lv_berry simplify solidification from laptop
2022-10-05 22:11:45 +02:00
Stephan Hadinger
2438ab959a lv_berry simplify solidification from laptop 2022-10-05 21:58:59 +02:00
Theo Arends
e4ae5e0b3a
Merge pull request #16738 from bovirus/development
Update italian language
2022-10-05 21:32:14 +02:00
bovirus
5dc111e208
Update italian language 2022-10-05 21:29:01 +02:00
Theo Arends
645b9d13d6 Add shelly EM default phase calibration
Add shelly EM default phase calibration (#16486)
2022-10-05 15:17:54 +02:00
Theo Arends
da623701d7 Add support for QMC5883L magnetic induction sensor
Add support for QMC5883L magnetic induction sensor by Helge Scheunemann (#16714)
2022-10-05 15:00:03 +02:00
Theo Arends
29a9197101
Merge pull request #16714 from Performance20/development
Add QMC5883L driver
2022-10-05 14:17:43 +02:00
s-hadinger
7d5e37e23d
Merge pull request #16724 from s-hadinger/haspmota_lvswitch
HASPmota support for switch `val` attribute
2022-10-05 09:40:50 +02:00
Helge
7a267f6271 replace ready flag by nullptr check 2022-10-04 21:54:15 +02:00
Helge
a5f6983d07 set config back to default 2022-10-04 18:29:54 +02:00
Helge
a7a26dc9a1 added test of availabillty 2022-10-04 18:16:49 +02:00
Theo Arends
d6b045e3d4 Do not skip leading spaces on (s)serialsend
Do not skip leading spaces on (s)serialsend (#16723)
2022-10-04 18:11:36 +02:00
Stephan Hadinger
51f4bae703 HASPmota support for switch val attribute 2022-10-04 18:03:11 +02:00
Theo Arends
6bd7be44ef Add relevant program core information 2022-10-04 17:56:51 +02:00
Theo Arends
5a314f72e3 Add relevant program core information 2022-10-04 17:52:15 +02:00
Helge
31c94424a9 Json name adaption + test config 2022-10-04 17:39:06 +02:00
Theo Arends
3df0ed4d20
Merge pull request #16716 from gemu2015/kamstrup
fix kamstrup protocol
2022-10-04 17:01:19 +02:00
s-hadinger
4b7dd06c46
Merge pull request #16721 from s-hadinger/zigbee_v4_fs_priority
Zigbee load from FS before EEPROM
2022-10-04 16:19:25 +02:00
Stephan Hadinger
3c729c772e Zigbee load from FS before EEPROM 2022-10-04 16:02:44 +02:00
Helge
3beeba7641 remove empty line 2022-10-04 15:50:55 +02:00
Helge
5998fe856a added code recommendations
and reduce functionality to the most necessary
2022-10-04 15:48:27 +02:00
s-hadinger
8944e6026d
Merge pull request #16719 from s-hadinger/zigbee_zbbridge_fix_v4
Zigbee urgent fix for zbv4
2022-10-04 15:07:49 +02:00
Stephan Hadinger
f0cf998ca4 Zigbee urgent fix for zbv4 2022-10-04 14:57:07 +02:00
s-hadinger
9e2f18c0a4
Merge pull request #16718 from s-hadinger/zigbee_alexa_multi_ep
Zigbee Alexa/Hue emulation, support multiple switches on separate endpoints
2022-10-04 13:28:58 +02:00
s-hadinger
890709bdbb
Revert accidental change 2022-10-04 13:10:09 +02:00
s-hadinger
8740d049ca
Merge branch 'development' into zigbee_alexa_multi_ep 2022-10-04 13:04:40 +02:00
Theo Arends
b54c5fcb8c Add ESP32-U4WDH single/dual core detection 2022-10-04 12:51:53 +02:00
Stephan Hadinger
e41ac7c242 Zigbee Alexa/Hue emulation, support multiple switches on separate endpoints 2022-10-04 12:49:10 +02:00
gemu2015
979ba9e707 median filter disable switch 2022-10-04 11:42:56 +02:00
Theo Arends
7152d012d9 Fix Shelly Plus 2PM negative values 2022-10-04 09:37:29 +02:00
Helge
d5bc687844 Update xsns_33_qmc5883l.ino 2022-10-04 07:43:34 +02:00
Helge
3e9549b6fe Update xsns_33_qmc5883l.ino
replace self written function by existing one (I2C)
2022-10-03 22:11:59 +02:00
Helge
92eab2cc9f Update xsns_33_qmc5883l.ino
remove some warnings
2022-10-03 20:42:28 +02:00
Theo Arends
8eb7b007d5 Support for Shelly Plus 2PM
- Version bump to v12.1.1.4
- Support for Shelly Plus 2PM using template ``{"NAME":"Shelly Plus 2PM PCB v0.1.9","GPIO":[320,0,0,0,32,192,0,0,225,224,0,0,0,0,193,0,0,0,0,0,0,608,640,3457,0,0,0,0,0,9472,0,4736,0,0,0,0],"FLAG":0,"BASE":1,"CMND":"AdcParam1 2,10000,10000,3350"}``
2022-10-03 18:02:50 +02:00
Theo Arends
a05f731a42 Fix Shelly Plus 2PM column swap
- Fix Shelly Plus 2PM column swap
- Prep Shelly Plus 2PM ADE7953 reset pin
2022-10-03 17:13:01 +02:00
gemu2015
abe6fd8eaa fix kamstrup protocol 2022-10-03 16:08:49 +02:00
Helge
53ff032fdc Update my_user_config.h 2022-10-03 14:02:24 +02:00
Helge
e20428f50c Update my_user_config.h
deactivate the driver
2022-10-03 13:39:18 +02:00
gemu2015
43c6cf6e26 udisplay parallel support 2022-10-03 12:24:27 +02:00
gemu2015
baace8c133 add parallel 8 ili9341 2022-10-03 12:21:17 +02:00
Helge
f8ce06b339 Update my_user_config.h 2022-10-03 12:10:40 +02:00
Adrian Scillato
7d8d51246f
Merge pull request #16711 from barbudor/fix_knx_javascript
KNX fix javascript scrumbled by quote char
2022-10-02 15:30:10 -07:00
Barbudor
db5bef61c6 fix javascript scrumbled by quote char 2022-10-02 21:49:52 +00:00
Helge
125bfafc88 adaption of languages files 2022-10-02 23:47:05 +02:00
Helge
0c123e131f Update xsns_33_qmc5883l.ino 2022-10-02 22:21:18 +02:00
Helge
49f0f259ea Update my_user_config.h 2022-10-02 21:49:36 +02:00
Helge
c15d974b44 add new driver to support qmc5883L 2022-10-02 21:41:51 +02:00
s-hadinger
0efc93f2a9
Merge pull request #16709 from s-hadinger/zigbee_multi_name
Zigbee friendly names per endpoint
2022-10-02 21:26:59 +02:00
Stephan Hadinger
58c0ca4076 fix compilation 2022-10-02 21:13:32 +02:00
Stephan Hadinger
b4aca5a3f3 Zigbee friendly names per endpoint 2022-10-02 20:54:49 +02:00
Theo Arends
16c6a471cc Fix ADE7953 calibration (#16486) 2022-10-01 22:25:24 +02:00
TheChatty
a1914ddd22
Specify ModBus Bridge code sizes
With Tasmota 12.1.1 code size will increase by 4.608 bytes with MODBUS_BRIDGE and by further 2.160 bytes with MODBUS_BRIDGE_TCP
2022-10-01 12:10:18 +02:00
Theo Arends
b63da8fd0f
Merge pull request #16702 from barbudor/fix-adc_temp-alternate-mode
Fix ADC_temp alternate mode
2022-10-01 10:18:18 +02:00
Barbudor
7c258f4de1 Add param4 in AdcParam ersponse 2022-09-30 23:53:58 +02:00
Theo Arends
0ec8b47741 Add ADE7953 register decode 2022-09-30 18:01:34 +02:00
Jason2866
182a57214d
fix legacy c3cdc manifest 2022-09-30 16:43:54 +02:00
Theo Arends
04e0aaf126 Add CO2 autolight
Add CO2 autolight to CO sensors SCD30, SCD40 and EZOCO2
2022-09-30 14:31:30 +02:00
Theo Arends
38d2c444e8 Add optional ADE7953 reg dump
Add optional ADE7953 reg dump (#16486)
2022-09-30 12:39:03 +02:00
Theo Arends
bda451ff91
Merge pull request #16649 from md5sum-as/development
Add support alias for ds18x20 sensors.
2022-09-29 14:32:16 +02:00
Theo Arends
ec964d1c9e Add can bus sniffer
Add can bus sniffer based on MCP2515 (#16684)
2022-09-29 14:31:40 +02:00
Theo Arends
5fe2554e6a Refactor buttons 2022-09-28 12:17:48 +02:00
Theo Arends
fcfbde8ed8 Add Sonoff SPM Surge overload message
Add Sonoff SPM Surge overload message (#15695)
2022-09-28 11:44:52 +02:00
Theo Arends
c0c82490b8
Merge pull request #16680 from pkkrusty/patch-4
Update command list in description
2022-09-28 09:03:54 +02:00
Barbudor
e9922b0b13 adc_temp alternate mode, take 2 2022-09-27 23:05:53 +02:00
pkkrusty
7722f5d00a
Update command list in description 2022-09-27 20:48:37 +00:00
Theo Arends
8d436ff910 Update kudos 2022-09-27 16:26:54 +02:00
Theo Arends
f80c6c69bf Fix ESP32-C3 compilation 2022-09-27 16:04:34 +02:00
Theo Arends
89c1254f69 Fix ESP8266 compilation 2022-09-27 15:55:45 +02:00
Theo Arends
f668ea44ed Add ESP32-S2 and ESP32-S3 touch input support 2022-09-27 15:36:35 +02:00
Jason2866
4f42f6bd53
Merge pull request #16675 from Jason2866/pio_tool_refac
small code refactoring
2022-09-27 15:07:19 +02:00
Theo Arends
aacc0084ae
Merge pull request #16667 from barbudor/analod_temp_alternate
Alternate ADC_TEMP mode
2022-09-27 15:05:26 +02:00
Theo Arends
3a4a82ba0a Fix ESP32 touch button multi-press and hold detection
Fix ESP32 touch button multi-press and hold detection (#16596)
2022-09-27 14:31:21 +02:00
Jason2866
056f838f1d
small code refactoring 2022-09-27 14:30:57 +02:00
Theo Arends
2f61040891 Remove unwanted space from filename 2022-09-27 11:04:59 +02:00
Theo Arends
27caae90eb Fix Qualitel RGBWC bulb (#16626) 2022-09-26 21:51:29 +02:00
Theo Arends
8e961eb43a Fix Qualitel RGBWC bulb
Fix Qualitel RGBWC bulb (#16626)
2022-09-26 21:48:50 +02:00
Theo Arends
b0cfeb3a2c Remove unneeded delay 2022-09-26 17:14:17 +02:00
Theo Arends
84f9103280 Fix SM2135 no switch off
Fix SM2135 no switch off (#16626)
2022-09-26 16:35:51 +02:00
Theo Arends
67d725d7cf Fix SR04 serial receive
Fix SR04 serial receive (#16613)
2022-09-26 14:06:28 +02:00
Theo Arends
e3c77331c6 Sync button_v2 2022-09-26 10:37:43 +02:00
Theo Arends
650d72706a
Merge pull request #16657 from cmiguelcabral/development
Publish CLEAR message on button HOLD release when SO73 is ON
2022-09-26 10:14:11 +02:00
Barbudor
d6cdec003f alternate ADC_TEMP mode, take 1 2022-09-25 22:40:29 +02:00
Miguel Cabral
1e0e6cd1c8 Publish CLEAR message on button HOLD release when SO73 is ON 2022-09-25 19:43:32 +01:00
Theo Arends
ed21c89d0e
Merge pull request #16654 from Staars/t_watch
fix compilation for TTGO watch
2022-09-25 17:41:50 +02:00
Theo Arends
77a6fcc71a
Merge pull request #16653 from barbudor/ina226_sensor54_voltage_fs
INA226 - Sensor54 to specify VBUS Full Scale
2022-09-25 17:41:28 +02:00
Christian Baars
ff7c624413 fix compilation for TTTGO watch 2022-09-25 16:52:32 +02:00
Theo Arends
4f2a1b9c54
Merge pull request #16645 from ortegafernando/development
Software Serial buffer to MIN_INPUT_BUFFER_SIZE
2022-09-25 16:36:33 +02:00
md5sum-as
c95baadbc0 Disable DS18x20_USE_ID_ALIAS in default config 2022-09-25 16:59:39 +03:00
md5sum-as
2d2afb6241 Add support alias for ds18x20 sensors ESP32 2022-09-25 16:56:22 +03:00
s-hadinger
12896f7271
Merge pull request #16652 from s-hadinger/berry_setmodule
Berry add ``introspect.setmodule(name:string, value:any) -> nil``
2022-09-25 15:55:03 +02:00
Stephan Hadinger
3f5baaa0c6 Berry add `introspect.setmodule(name:string, value:any) -> nil` 2022-09-25 15:33:31 +02:00
barbudor
10f6e980f5 fix power calculation 2022-09-25 14:09:39 +02:00
md5sum-as
c5777fcb52 Add support alias for ds18x20 sensors 2022-09-25 14:45:35 +03:00
Theo Arends
28a1859b01 Fix Shelly EM A/B channel display
Fix Shelly EM A/B channel display (#16486)
2022-09-24 19:02:24 +02:00
Theo Arends
ebff389cc0 Fix ADE7953 negative phase angles
Fix ADE7953 negative phase angles (#16486)
2022-09-24 18:49:41 +02:00
Jason2866
a6937977f9
changes One Platform 2022-09-24 17:36:06 +02:00
ortegafernando
a9f15ae379
Software Serial buffer to MIN_INPUT_BUFFER_SIZE
Increase software serial buffer to MIN_INPUT_BUFFER_SIZE
2022-09-24 17:11:20 +02:00
Theo Arends
6bfb9d6aa4 Update changelogs 2022-09-24 16:53:11 +02:00
Theo Arends
530b5a0602
Merge pull request #16636 from 3rdvision/development
Improve pt_pt translations
2022-09-24 16:37:48 +02:00
Theo Arends
38e05671b8
Merge pull request #16574 from kiwic-moskvic/issue/oled_72x40_support
Added support for OLED display 72x40px
2022-09-24 15:26:32 +02:00
Theo Arends
478aac4c8a
Merge pull request #16610 from balogh-attila/development
Respect m_flags.skip in OpenTherm polling.
2022-09-24 15:23:48 +02:00
Theo Arends
96b7f79d15
Merge pull request #16563 from Jason2866/temp_no_nan
Temperature error messages fixed in core 2.0.5
2022-09-24 15:23:09 +02:00
Theo Arends
0d124ee1cc
Merge pull request #16612 from ortegafernando/development
Setoption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.
2022-09-24 15:22:02 +02:00
barbudor
58ea6ec3d2 remove addlog with possible %_f issue 2022-09-24 14:14:18 +02:00
Jason2866
dec9da6242
one Tasmota Pio Platform 2022-09-24 12:38:02 +02:00
Jason2866
eeeee5938f
Merge pull request #16644 from Jason2866/OnePlatform
One Tasmota Platformio Platform for all framework variants
2022-09-24 12:34:33 +02:00
Jason2866
9688de0b33
One Tasmota Platformio Platform for all framework variants 2022-09-24 12:05:00 +02:00
s-hadinger
bec6e78c8d
Merge pull request #16641 from s-hadinger/zigbee_f2_noerror
Fix startup if F2 is not present
2022-09-24 12:00:23 +02:00
Stephan Hadinger
879df8a222 Fix startup if F2 is not present 2022-09-24 11:58:58 +02:00
s-hadinger
c4b51c3b4f
Merge pull request #16638 from s-hadinger/zigbee_f2_noerror
Zigbee don't abort if endpoint F2 denied
2022-09-24 10:00:21 +02:00
Stephan Hadinger
ef5138d36d Zigbee don't abort if endpoint F2 denied 2022-09-24 09:53:01 +02:00
3rdvision
d4e6be00c5
Improve pt_pt translations 2022-09-23 20:05:22 +01:00
Jason2866
560e7e458a
Merge pull request #16625 from Staars/development
add board definition for S3-EYE
2022-09-23 20:51:22 +02:00
s-hadinger
28c3b43c7d
Merge pull request #16629 from s-hadinger/zigbee_prep_hue_multi
zigbee prepare for multiple Alexa devices per zigbee device
2022-09-22 22:47:52 +02:00
Stephan Hadinger
22a2bc0fd7 zigbee prepare for multiple Alexa devices per zigbee device 2022-09-22 22:33:04 +02:00
ortegafernando
0333e9e452
Add SetOption147
SetOption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-22 22:27:44 +02:00
s-hadinger
91f5b30212
Merge pull request #16627 from s-hadinger/zigbee_syn
Zigbee move synonyms to a specific method
2022-09-22 22:20:59 +02:00
Jason2866
162717f011
Merge pull request #16628 from Jason2866/development
add legacy boards manifests for debugging with OpenOCD
2022-09-22 22:08:31 +02:00
Stephan Hadinger
68b11e0168 Zigbee move synonyms to a specific method 2022-09-22 21:56:48 +02:00
ortegafernando
f9bfca4a47
Add SetOption147
SetOption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-22 21:05:36 +02:00
ortegafernando
cda2e2f80c
Add SetOption147
SetOption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-22 20:59:48 +02:00
ortegafernando
83b3343a34
Add SetOption147
SetOption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-22 20:57:02 +02:00
Christian Baars
0abd1d5000
add board definition for S3-EYE 2022-09-22 18:35:51 +02:00
s-hadinger
2119621eb9
Merge pull request #16619 from s-hadinger/zigbee_allow_spaces
Zigbee allow spaces in names
2022-09-22 13:42:53 +02:00
Stephan Hadinger
cc25c1abfe Zigbee allow spaces in names 2022-09-22 13:24:07 +02:00
s-hadinger
f70822b54d
Merge pull request #16614 from s-hadinger/zigbee_tuya_wildcard
Zigbee Tuya wildcard support
2022-09-21 23:15:28 +02:00
Stephan Hadinger
c83abd12c8 Zigbee Tuya wildcard support 2022-09-21 22:33:53 +02:00
ortegafernando
af2a2076e3
SetOption147
Setoption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-21 21:44:17 +02:00
ortegafernando
f17e3440ac
Setoption147
Setoption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-21 21:42:53 +02:00
ortegafernando
d9e32d8b06
Setoption147
Setoption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-21 21:41:10 +02:00
ortegafernando
cd2656b8ad
Setoption147
Setoption147 (MQTT) Disable publish SSerialReceived MQTT messages. If disabled, you must use event trigger rules instead.

If it is activated, tasmota will not publish a MQTT message every time a SSerialReceived event fires. Use rules to control "what, how and when" publish these messages.
2022-09-21 21:39:45 +02:00
Jason2866
203a59c091 add legacy env for debugging 2022-09-21 10:04:36 +02:00
ortegafernando
a4bf3b3ff0
Add SetOption147
Add SetOption147  (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
2022-09-21 09:35:40 +02:00
ortegafernando
5d3ae21159
Add SetOption147
Add SetOption147  (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
2022-09-21 09:34:22 +02:00
ortegafernando
a6d4fe1e46
Add SetOption157
Add SetOption147  (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
2022-09-21 09:27:19 +02:00
ortegafernando
a79ab7275c
Add SetOption147
Add SetOption147  (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
2022-09-21 09:25:23 +02:00
Attila Balogh
d48283ca30 Respect m_flags.skip in OpenTherm polling. 2022-09-21 00:58:56 +02:00
ortegafernando
8455a3fd3c
Add SetOption147
Add SetOption147  (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
2022-09-20 23:38:59 +02:00
ortegafernando
3cb2c7c497
Add SetOption147
Add SetOption147  (MQTT) Enable publish SSerialReceived MQTT messages. If disabled, use event rules instead.
If it is disabled, tasmota will not publish an MQTT message every time a SSerialReceived event fires. Use rules to control how and when publish these messages.
2022-09-20 23:12:54 +02:00
Jason2866
e1f5390c32
Merge pull request #16605 from Jason2866/ccron_fix
Ccron fix
2022-09-20 20:35:42 +02:00
Jason2866
e7cf698b9f
memory leak and compile fix (debug mode) 2022-09-20 18:54:48 +02:00
Jason2866
990bbd01f6
Delete ccronexpr_test.c 2022-09-20 18:53:45 +02:00
s-hadinger
a181ca7ddf
Merge pull request #16597 from s-hadinger/zigbee_fix_cmd
Fix bug in Z_attribute::equalsCmd
2022-09-20 15:04:43 +02:00
Stephan Hadinger
44e03f014a Tests are actually not needed thanks to guarding statement 2022-09-20 14:45:59 +02:00
Stephan Hadinger
28920fdeb7 Fix bug in Z_attribute::equalsCmd 2022-09-20 14:43:36 +02:00
s-hadinger
a96274003f
Merge pull request #16590 from s-hadinger/zigbee_gp_2
Zigbee basic support for Green Power
2022-09-19 22:57:31 +02:00
Stephan Hadinger
dff9274cb6 Zigbee basic support for Green Power 2022-09-19 22:28:38 +02:00
s-hadinger
289c3f6c55
Merge pull request #16589 from s-hadinger/zigbee_unprocessed
Zigbee report unprocessed attributes
2022-09-19 22:18:51 +02:00
Stephan Hadinger
eb65038b6c Zigbee report unprocessed attributes 2022-09-19 22:03:46 +02:00
s-hadinger
af039838b6
Merge pull request #16588 from s-hadinger/urlfetch
Command ``UrlFetch <url>`` to download a file to filesystem
2022-09-19 19:41:12 +02:00
Stephan Hadinger
6c6031f0b3 Command `UrlFetch <url>` to download a file to filesystem 2022-09-19 19:20:11 +02:00
s-hadinger
778a66e16c
Merge pull request #16584 from urechi/development
Add ZIGBEE_TOPIC_FNAME
2022-09-19 17:04:21 +02:00
Adrian Deaconu
af6706d6e2 Add ZIGBEE_TOPIC_FNAME 2022-09-19 15:19:43 +01:00
Jason2866
fc84ebe45e
Merge pull request #16571 from gemu2015/sml_fix
modbus debug off
2022-09-19 14:33:09 +02:00
Tomas Zahradnik
98dda967e8 Added support for OLED display 72x40px
* Small OLED display with ssd1306 driver and resolution 72x40px must be
  added into list of supported displays. Also some shift in video ram must
  be added.

Signed-off-by: Tomas Zahradnik <tomas.zahradnik@centrum.cz>
2022-09-19 09:46:30 +02:00
s-hadinger
74674fa043
Merge pull request #16572 from s-hadinger/berry_auto_solidify_3
Berry final auto-solidify
2022-09-19 09:17:46 +02:00
Stephan Hadinger
d266e511ee Berry final auto-solidify 2022-09-19 09:02:39 +02:00
gemu2015
afefa0f519 modbus debug off 2022-09-19 07:23:31 +02:00
s-hadinger
178c21b600
Merge pull request #16568 from s-hadinger/berry_auto_solidify_3
Berry more auto-solidification
2022-09-18 23:32:20 +02:00
Stephan Hadinger
62fcba4b11 Berry more auto-solidification 2022-09-18 23:12:57 +02:00
s-hadinger
67239431f5
Merge pull request #16567 from s-hadinger/zigbee_fix_attr_write
Fix zigbee attribute writes and configuration
2022-09-18 19:39:53 +02:00
Stephan Hadinger
e94baa84cf Fix zigbee attribute writes and configuration 2022-09-18 19:23:59 +02:00
s-hadinger
3a356263ba
Merge pull request #16566 from s-hadinger/ir_284
IRremoteESP8266 library from v2.8.3 to v2.8.4
2022-09-18 18:48:56 +02:00
Stephan Hadinger
4cf0e0ce9f IRremoteESP8266 library from v2.8.3 to v2.8.4 2022-09-18 18:26:14 +02:00
Jason2866
06696055b3
Merge pull request #16564 from Jason2866/ci_changes
wheel // win smaller env for CI
2022-09-18 14:06:07 +02:00
Jason2866
fa252a816e wheel / win smaller env 2022-09-18 13:32:48 +02:00
Jason2866
5da6ab8f70 Temp error messages fixed 2022-09-18 12:58:48 +02:00
Jason2866
17106530be
version 2.8.4 2022-09-18 12:36:26 +02:00
Jason2866
280e3297b2
IRremoteESP8266 v2.8.4 2022-09-18 12:35:40 +02:00
Jason2866
ef4b2106ed
Tasmota core 2.0.5 2022-09-17 16:10:12 +02:00
Jason2866
9a0a79067d
Tasmota core 2.5 2022-09-17 16:08:15 +02:00
Jason2866
452c6fabb0
Tasmota Core 2.0.5
* Flash real size is now in core
* Flash chip magic size now in Tasmota `ESP_getFlashChipMagicSize`
* Tasmota Core 2.0.5
2022-09-17 15:53:58 +02:00
s-hadinger
195ba01eaf
Merge pull request #16543 from s-hadinger/ir_2_8_83
IRremoteESP8266 library from v2.8.2 to v2.8.3
2022-09-17 14:53:14 +02:00
Stephan Hadinger
412d5d6938 Fix compilation ESP8266
https://github.com/crankyoldgit/IRremoteESP8266/pull/1881/files
2022-09-17 14:35:34 +02:00
s-hadinger
088e44e1e3
Merge pull request #16545 from s-hadinger/zigbee_muldiv_plug
Zigbee support for decimal Voltage/Current/Power on power metering plugs
2022-09-17 08:56:00 +02:00
Stephan Hadinger
ead891ef0e Zigbee support for decimal Voltage/Current/Power on power metering plugs 2022-09-16 22:55:07 +02:00
Stephan Hadinger
914859ad48 IRremoteESP8266 library from v2.8.2 to v2.8.3 2022-09-16 14:01:10 +02:00
Jason2866
5eb43d21b3
Merge pull request #16539 from gemu2015/scripter_update
nested loops etc
2022-09-16 13:13:08 +02:00
Jason2866
9c7e536618
Merge pull request #16538 from gemu2015/sml_update
add kamstrup, fix mbus u32
2022-09-16 13:11:23 +02:00
gemu2015
52c21ff5d6 nested loops etc 2022-09-16 12:31:30 +02:00
gemu2015
9dde8da7fe add kamstrup, fix mbus u32 2022-09-16 12:27:16 +02:00
Theo Arends
971b06ccdd Add command `SetOption46 0..255`
Add command ``SetOption46 0..255`` to add 0..255 * 10 milliseconds power on delay before initializing I/O (#15438)
2022-09-15 17:17:16 +02:00
Theo Arends
1f01ca0cc4 Increase power on wait time for SCD30
Increase power on wait time for SCD30 (#15438)
2022-09-15 14:50:15 +02:00
Theo Arends
7e21442e96 Fix support of more touch pins (#16518) 2022-09-15 12:27:49 +02:00
Theo Arends
903d3174b2 Fix ADE7953 apparent and reactive power calibration 2022-09-15 11:22:09 +02:00
Jason2866
d5e68ac683
windows-2019 as Os for GH runner 2022-09-14 21:19:34 +02:00
s-hadinger
044ed96c1f
Merge pull request #16522 from s-hadinger/berry_solidify_2
Berry more automated solidification
2022-09-14 19:56:06 +02:00
s-hadinger
4332430ed2
Merge pull request #16520 from s-hadinger/zigbee_zcl_update
Zigbee update ZCL
2022-09-14 19:54:48 +02:00
Stephan Hadinger
2f81bfff21 Berry more automated solidification 2022-09-14 19:39:46 +02:00
Stephan Hadinger
0e00d082ec Zigbee update ZCL 2022-09-14 19:34:47 +02:00
Theo Arends
6aece15bd6 ESP32 Increase number of button GPIOs from 8 to 28
ESP32 Increase number of button GPIOs from 8 to 28 (#16518)
2022-09-14 16:33:01 +02:00
Theo Arends
0d10aeab16 Fix MP3 compile error (#16516) 2022-09-14 15:42:48 +02:00
Theo Arends
c7a864231a Refactor ADE7953 2022-09-13 17:58:22 +02:00
Theo Arends
8b5a34b014 Add support of optional file calib.dat
Add support of optional file calib.dat on ADE7953 based energy monitors like Shelly EM (#16486)
2022-09-13 15:35:09 +02:00
Theo Arends
912be0b4c7
Merge pull request #16504 from ZoneMR/patch-1
Update xdrv_16_tuyamcu.ino
2022-09-13 15:24:15 +02:00
ZoneMR
b1ee94c248
Update xdrv_16_tuyamcu.ino
Support longer-form TUYA_MCU_FUNC_POWER_COMBINED payloads used by some devices, including "2P 63A TUYA APP WiFi Smart Circuit Earth Leakage Over Under Voltage Protector Relay Device Switch Breaker Energy Power kWh Meter".
2022-09-13 13:17:39 +01:00
s-hadinger
5613d57154
Merge pull request #16501 from s-hadinger/berry_solidified_automated
Berry automated solidification of code
2022-09-12 22:36:00 +02:00
Stephan Hadinger
e0f9154986 Berry automated solidification of code 2022-09-12 22:02:25 +02:00
s-hadinger
1139314e38
Merge pull request #16498 from s-hadinger/define_tasmota
Add `#define TASMOTA`
2022-09-12 16:29:57 +02:00
Stephan Hadinger
335e0b9644 Add #define TASMOTA 2022-09-12 15:38:13 +02:00
Theo Arends
28c343f3c8 Add HLW debug info 2022-09-11 14:58:25 +02:00
Theo Arends
5b7371d98f
Merge pull request #16492 from Staars/MI32
MI32 legacy: refactor MI32 functions to CTYPE_DECLARATION
2022-09-11 07:34:02 +02:00
Christian Baars
9ec5009c6d refactor MI32 functions to CTYPE_DECLARATION 2022-09-10 21:10:39 +02:00
s-hadinger
97e7dd52eb
Merge pull request #16491 from s-hadinger/berry_auto_mqtt
Berry has persistent MQTT subscriptions: auto-subscribe at (re)connection
2022-09-10 19:28:18 +02:00
Stephan Hadinger
7fee430e9f Berry has persistent MQTT subscriptions: auto-subscribe at (re)connection 2022-09-10 19:08:26 +02:00
Theo Arends
71ddc7e0a7
Merge pull request #16487 from Staars/MI32
MI32 legacy driver: refactor MI32 and BLE in Berry to module
2022-09-10 17:14:28 +02:00
Theo Arends
ffdc08ac24
Merge pull request #16488 from Jason2866/ci_pr_refac
Ci pr refac
2022-09-10 17:14:17 +02:00
Jason2866
58c4e6e9d9
Ci pr refac tmp (#311)
CI test for os platforms
2022-09-10 17:03:59 +02:00
Christian Baars
d57a1cadc9 refactor MI32 and BLE in Berry to module 2022-09-10 16:38:12 +02:00
Theo Arends
ae1d4ef1f7 Bump version to v12.1.1.2 2022-09-10 16:32:57 +02:00
Jason2866
8a93770624
Merge pull request #16485 from arendst/del_generate
Delete files in folder `berry/generate`
2022-09-10 15:51:34 +02:00
Jason2866
7ca8fa94b9
Delete files in folder berry/generate 2022-09-10 15:04:00 +02:00
Theo Arends
be544b4a96
Merge pull request #16483 from Jason2866/s3_webcam
Fix ESP32-S3 webcam bootloop
2022-09-10 14:24:19 +02:00
s-hadinger
d1f06846f3
Merge pull request #16484 from s-hadinger/lv_orange
LVGL add `lv.COLOR_ORANGE`
2022-09-10 14:23:08 +02:00
Stephan Hadinger
01e80c4ce8 LVGL add lv.COLOR_ORANGE 2022-09-10 13:27:14 +02:00
Jason2866
81bf1ef8b6 no config if no model set 2022-09-10 13:20:24 +02:00
s-hadinger
c5b22b53d6
Merge pull request #16482 from s-hadinger/berry_new_op_engine
Berry improve operator detection in rules
2022-09-10 13:10:06 +02:00
Jason2866
8ff3438979
add more cams via .h file (#310) 2022-09-10 12:54:28 +02:00
Jason2866
feaf610ed1
Merge pull request #16473 from TakissX/patch-1
Patch 1
2022-09-10 12:06:30 +02:00
Stephan Hadinger
13027cc623 Move out of mapping to increase performance 2022-09-10 12:05:48 +02:00
Stephan Hadinger
5c4aab6dc1 Berry improve operator detection in rules 2022-09-10 11:26:47 +02:00
s-hadinger
3e7cb8460c
Merge pull request #16481 from s-hadinger/zigbee_grey_buttons
Zigbee grey buttons when not started
2022-09-10 00:05:26 +02:00
Stephan Hadinger
edb0a8af9c Zigbee grey buttons when not started 2022-09-09 23:51:52 +02:00
s-hadinger
40e5b9f7d1
Merge pull request #16478 from s-hadinger/haspmota_rules_nonnumeric
HASPmota val_rule ignores non numeric matches
2022-09-09 22:35:13 +02:00
Stephan Hadinger
8df2d10f52 HASPmota val_rule ignores non numeric matches 2022-09-09 22:23:43 +02:00
s-hadinger
b46727c6bc
Merge pull request #16477 from s-hadinger/haspmota_more_logs
HASPmota increase details for exceptions
2022-09-09 21:49:43 +02:00
Stephan Hadinger
e1e04d9525 HASPmota increase details for exceptions 2022-09-09 21:38:28 +02:00
TakissX
9a3139dd27
Update el_GR.h 2022-09-09 17:06:35 +03:00
TakissX
68ee2b1348
Update el_GR.h 2022-09-09 17:03:58 +03:00
Theo Arends
f347a5b19c Fix driver config store 2022-09-09 15:06:04 +02:00
Theo Arends
9ad002ad19
Merge pull request #16471 from TakissX/patch-1
Update el_GR.h
2022-09-09 14:02:01 +02:00
Theo Arends
cc11ee822e Add I2C status on I2cSetDevice
Add I2C status on I2cSetDevice aiding on debugging bus timeouts
2022-09-09 12:53:36 +02:00
Theo Arends
d2058c5d5c
Merge pull request #16470 from gemu2015/scripter_update
google chart fix
2022-09-09 09:06:35 +02:00
gemu2015
8034b19b2e WSContentSend_P fix 2022-09-09 08:14:42 +02:00
TakissX
b9adb6944b
Update el_GR.h
The correct one is Sunrise = Ανατολή Ηλίου
2022-09-09 07:43:34 +03:00
s-hadinger
f26954eaf5
Merge pull request #16468 from s-hadinger/fix_16454
Fix fade pwmct #16454
2022-09-08 23:11:10 +02:00
Stephan Hadinger
97ad6c5c10 fix compilation 2022-09-08 22:22:31 +02:00
Stephan Hadinger
48968b4bc0 Fix fade pwmct #16454 2022-09-08 22:04:08 +02:00
Jason2866
ecff132e8c
Merge pull request #16467 from arendst/solo1_ethernet
Enable Ethernet for ESP32-solo1
2022-09-08 21:13:21 +02:00
Jason2866
30c9f985cf
Enable Ethernet for solo1 2022-09-08 21:01:27 +02:00
Theo Arends
23176e9cc1 More comments 2022-09-08 17:51:54 +02:00
Theo Arends
48fe515b9e Add DspLine9 2022-09-08 17:43:47 +02:00
Theo Arends
04160106c2 Add commands DspLine and DspSpeed
Add commands DspLine and DspSpeed (#15856)
2022-09-08 16:02:49 +02:00
Theo Arends
c3d95bfddc
Merge pull request #16463 from gemu2015/sml_update
add hex to asci id option
2022-09-08 15:09:47 +02:00
gemu2015
693309965c add hex to asci id option 2022-09-08 14:35:04 +02:00
barbudor
48fff36b7d Merge branch 'development' into ina226_sensor54_voltage_fs 2022-09-06 23:50:25 +02:00
s-hadinger
c1f8ef6909
Merge pull request #16453 from s-hadinger/berry_strict_1
Berry fix for stricter mode
2022-09-06 23:09:56 +02:00
Stephan Hadinger
dc1221f709 More fixes 2022-09-06 23:02:08 +02:00
Stephan Hadinger
18a950f61c Berry fix for stricter mode 2022-09-06 22:54:24 +02:00
s-hadinger
04f1c57e90
Merge pull request #16452 from s-hadinger/fix_haspmota_strict
Fix HASPmota.be with new strict mode
2022-09-06 20:01:12 +02:00
s-hadinger
84df0d0801
Merge pull request #16451 from s-hadinger/json_fix
Fix json parsing
2022-09-06 20:01:01 +02:00
Stephan Hadinger
87af685160 Fix HASPmota.be with new strict mode 2022-09-06 20:00:01 +02:00
Stephan Hadinger
3a54e8d84c Fix json parsing 2022-09-06 19:49:12 +02:00
Theo Arends
5062911579 Re-enable USE_LIGHT 2022-09-06 17:20:11 +02:00
Theo Arends
8c064c9749 Shrink tasmota-lite.bin 2022-09-06 17:08:26 +02:00
Theo Arends
26cc77e4ef Merge branch 'development' of https://github.com/arendst/Tasmota into development 2022-09-06 12:25:55 +02:00
Theo Arends
cd68adbc40 Fix python location
Fix python location (#16425)
2022-09-06 12:24:39 +02:00
Jason2866
7abd8cc767
Use python from Platformio pyenv 2022-09-06 12:24:21 +02:00
Theo Arends
fcd96e0ec4
Merge pull request #16445 from Staars/rm_generate
Remove files from generate folder
2022-09-06 11:18:58 +02:00
Christian Baars
f0c7fae4a0 ignore generate folder 2022-09-05 18:52:32 +02:00
Christian Baars
dc232059af add .keep to empty generate folder 2022-09-05 16:32:28 +02:00
Christian Baars
580069a613 empty generate folder 2022-09-05 16:21:50 +02:00
s-hadinger
e6ffdaea1b
Merge pull request #16425 from Staars/gen_berry_str
generate berry structures before every build process
2022-09-04 22:14:49 +02:00
Theo Arends
d6ac106ac2 Refactor SCD30 driver 2022-09-04 16:14:32 +02:00
Jason2866
e6ded2bffe
octal flash needs flashed in mode dout (#16436)
* octal flash needs flashed in mode `dout`

flash modes `qio, qout, dio` can all be flashed in mode `dio`
2022-09-04 15:20:21 +02:00
Theo Arends
91ed1ea2c6 Add filter for larger deviations
Add filter for larger deviations due to I2C misreads
2022-09-04 14:48:58 +02:00
Jason2866
eea3b0ed10
add Pio env 2022-09-03 22:04:56 +02:00
s-hadinger
3220fdae44
Merge pull request #16430 from blakadder/development
add more SSD1306 display descriptors
2022-09-03 17:43:21 +02:00
Christian Baars
a68d2726c5 refactor BERRY_GEN_DIR 2022-09-03 17:22:27 +02:00
blakadder
428a21b83a Merge branch 'development' of https://github.com/blakadder/Tasmota into development 2022-09-03 17:12:15 +02:00
blakadder
055b5a9726 add more SSD1306 descriptors 2022-09-03 17:11:58 +02:00
Christian Baars
34084c6e75 generate berry structures before every build process 2022-09-03 15:32:24 +02:00
s-hadinger
c984e501d7
Merge pull request #16421 from s-hadinger/zigbee_gp_ui
ZIgbee add GP UI indicator
2022-09-02 22:48:40 +02:00
s-hadinger
dea49dfbc5
Merge pull request #16420 from s-hadinger/zigbee_znp_timeout
ZIgbee extend ZNP timeout
2022-09-02 22:46:32 +02:00
Stephan Hadinger
c73d783554 ZIgbee add GP UI indicator 2022-09-02 22:36:11 +02:00
Stephan Hadinger
d3fbc98601 ZIgbee extend ZNP timeout 2022-09-02 22:27:46 +02:00
Theo Arends
2cca11f54b Fix OTA upload when filesystem is added
Fix OTA upload when filesystem is added.

An OTA upload to OTA server fails without this test as it overrules the user upload script.
2022-09-02 17:12:42 +02:00
Theo Arends
a43eaef01b Add influxdb support to zigbee (#16417) 2022-09-02 15:26:44 +02:00
Theo Arends
5639b48c1a Update I2CDEVICES.md 2022-09-02 13:14:59 +02:00
Theo Arends
86e45969bd Support for DFRobot SEN0390 V30B ambient light sensor
Add support for DFRobot SEN0390 V30B ambient light sensor (#16105)
2022-09-02 13:13:47 +02:00
Theo Arends
684584a5e5 Command `SetOption146 1` to enable display of ESP32 internal temperature 2022-09-02 11:24:47 +02:00
Theo Arends
6400c9d650
Merge pull request #16408 from xsp1989/development
translate some chinese
2022-09-01 09:51:22 +02:00
Theo Arends
14642fb214 Update changelogs 2022-09-01 09:43:20 +02:00
s-hadinger
d6a74563eb
Merge pull request #16407 from s-hadinger/zigbee_greenpower_phase1
Zigbee prepare for Green Power support
2022-09-01 08:33:46 +02:00
Stephan Hadinger
7fb00daa52 Zigbee prepare for Green Power support 2022-09-01 08:14:37 +02:00
renzhe
4765e95d91 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2022-09-01 14:05:47 +08:00
renzhe
c2cfc973d7 translate some chinese 2022-09-01 12:20:58 +08:00
s-hadinger
db87f8e8d5
Merge pull request #16404 from s-hadinger/zigbee_fix_regression_cmd
Zigbee fix regression when reporting a command
2022-08-31 21:22:56 +02:00
Stephan Hadinger
d0f5c80ae1 Zigbee fix regression when reporting a command 2022-08-31 21:04:35 +02:00
s-hadinger
5a103505ad
Merge pull request #16399 from s-hadinger/berry_fix_json_crash
Berry fix json crash
2022-08-31 19:34:44 +02:00
Stephan Hadinger
a1e5f53ddd Berry fix json crash 2022-08-31 19:21:00 +02:00
Theo Arends
71c3b98b35 Add download link for v5.14.0 2022-08-31 15:51:21 +02:00
Theo Arends
9355b99fe5
Merge pull request #16398 from bovirus/patch-1
Update italian language
2022-08-31 15:09:38 +02:00
bovirus
e23dd638e0
Update italian language
Please check and merge
2022-08-31 14:32:43 +02:00
Theo Arends
0e59ddc467 Update changelogs 2022-08-31 11:08:45 +02:00
s-hadinger
5d63fc1cf0
Merge pull request #16392 from s-hadinger/fix_eth_poe_olimex
Fix unstable ETH on Olimex POE
2022-08-31 10:33:29 +02:00
Stephan Hadinger
74cbc47614 Be more specific to target ESP32 2022-08-31 10:12:25 +02:00
Stephan Hadinger
b355231721 Fix unstable ETH on Olimex POE 2022-08-31 10:09:22 +02:00
Theo Arends
dbf0477fec
Merge pull request #16385 from curzon01/flowratemeter
Flowratemeter add flow amount/duration
2022-08-31 10:08:00 +02:00
s-hadinger
3a05f69e56
Merge pull request #16388 from s-hadinger/safeboot_eth
Support for Ethernet in ESP32 safeboot firmware
2022-08-30 19:47:02 +02:00
Stephan Hadinger
3791ecd2a0 Support for Ethernet in ESP32 safeboot firmware 2022-08-30 18:46:22 +02:00
s-hadinger
a427f33839
Merge pull request #16387 from s-hadinger/berry_big_bytes
Berry extend max bytes size to 512Kb when PSRAM is available
2022-08-30 18:34:28 +02:00
Stephan Hadinger
cb4a5ed736 Berry extend max bytes size to 512Kb when PSRAM is available 2022-08-30 18:11:04 +02:00
Norbert Richter
2b163ad4ea
Flowrate meter add flow amount/duration 2022-08-30 11:46:19 +02:00
Norbert Richter
475b4f3fe3
Rework flowmeter 2022-08-30 08:31:23 +02:00
s-hadinger
286b0ca916
Merge pull request #16383 from s-hadinger/berry_stricter
Berry stricter strict mode
2022-08-29 19:40:51 +02:00
Stephan Hadinger
d4f3530539 Berry stricter strict mode 2022-08-29 19:27:06 +02:00
barbudor
679ef3be86 add sensor54 vbus_fs option 2022-08-29 14:50:54 +02:00
Theo Arends
23ba25c665 Refactor WifiHostByName() 2022-08-29 14:31:05 +02:00
Theo Arends
b502b84189
Merge pull request #16323 from rogg/fix-local-mdns
Use Wifi.hostByName() for ESP8266
2022-08-29 14:15:21 +02:00
s-hadinger
60129fd012
Merge pull request #16379 from DanBendavid/patch-1
Update WT32_SC01.ini
2022-08-28 20:58:02 +02:00
Dan BENDAVID
adaf167b7e
Update WT32_SC01.ini
This display.ini is working on my WT32-SC01 with 16MB PSRam.
2022-08-28 20:36:50 +02:00
Theo Arends
9da9866fd8 Merge branch 'development' of https://github.com/arendst/Tasmota into development 2022-08-28 18:22:20 +02:00
Theo Arends
3a1bbda4a5 refactor tm1621 2022-08-28 18:22:06 +02:00
Theo Arends
d79390dad3
Merge pull request #16374 from barbudor/up_serial_buffer
Allows SerialBuffer up to 2048
2022-08-28 18:17:48 +02:00
Theo Arends
9c06a3713e Show all temperature sensors on display
Show alternating temperature sensors on Sonoff THR3xxD display (#15856)
2022-08-28 17:35:13 +02:00
barbudor
eb96127efd allow SerialBuffer up to 2048 2022-08-28 16:49:52 +02:00
Theo Arends
4cafaf269c Update changelogs 2022-08-28 15:05:46 +02:00
Theo Arends
acfebb0ab4 Increase max temperature
Increase max temperature from 100 to 200C (#16363)
2022-08-28 15:00:41 +02:00
Theo Arends
212cbe7d85 Fix extra space in non-decimal numbers
Fix extra space in non-decimal numbers (#16365)
2022-08-28 14:51:32 +02:00
s-hadinger
5b1b4d11de
Merge pull request #16362 from s-hadinger/berry_bootloader
Berry bootloader flasher
2022-08-28 09:44:08 +02:00
Stephan Hadinger
3fe9eec276 Berry bootloader flasher 2022-08-28 09:39:24 +02:00
s-hadinger
e633f27dda
Merge pull request #16357 from s-hadinger/fix_epaper_display_ini
Fix missing colon
2022-08-27 18:20:03 +02:00
Stephan Hadinger
bd04ce59be Fix missing colon 2022-08-27 18:18:49 +02:00
Theo Arends
e06793eb8c Small refactors 2022-08-27 12:28:34 +02:00
Theo Arends
7e34936e6b Update changelogs 2022-08-27 11:36:12 +02:00
Theo Arends
c0cb49d2c8 TasmotaModbus library from v3.5.0 to v3.6.0
TasmotaModbus library from v3.5.0 to v3.6.0 (#16351)
2022-08-27 11:31:29 +02:00
Theo Arends
906d725534
Merge pull request #16351 from jeroenst/ModbusBridgeWrite
Modbus bridge write
2022-08-27 11:21:11 +02:00
JeroenSt
728c108294 Removed logging and changed maximum number of coils/inputs 2022-08-27 10:54:41 +02:00
JeroenSt
f57acac48b Fixed Modbus TCP function 1 & 2 not working 2022-08-27 10:40:02 +02:00
JeroenSt
37574169a9 Fixed wrong bytecount 2022-08-27 10:19:24 +02:00
JeroenSt
a19edd4983 Solved endian on uint16 2022-08-27 09:11:36 +02:00
JeroenSt
1ac5b6fd7f Rework in progress
ModbusTCP fully tested OK
Modbus via Commands:
function 1..5 tested ok
function 6 fail
function 15 & 16 not tested
2022-08-27 09:11:36 +02:00
JeroenSt
9c11eb41d4 Changed Modbus to also support nr of bytes
for functioncode 1,2 & 15.
https://ozeki.hu/p_5876-mobdbus-function-code-1-read-coils.html
2022-08-27 09:11:36 +02:00
JeroenSt
5bd28954fa Fixed reading functioncode 1 & 2 for ModbusTCP
Returned bytes need to be even (limitation of TasmotaModbus.cpp)
https://github.com/arendst/Tasmota/issues/9586
2022-08-27 09:11:36 +02:00
JeroenSt
ffcdce6041 Fixed FC16
https://github.com/arendst/Tasmota/issues/9586#issuecomment-1226120239
2022-08-27 09:11:36 +02:00
JeroenSt
d333948816 Solved ModbusTCP writing wrong registers 2022-08-27 09:11:36 +02:00
JeroenSt
fea41407ac changed wrong copying of tcp data to writedata 2022-08-27 09:11:36 +02:00
JeroenSt
e292fdd6f5 Removed MBR from modbus serial logging 2022-08-27 09:11:36 +02:00
JeroenSt
2e111dc112 Added RX and TX logging in TasmotaModbus driver 2022-08-27 09:11:36 +02:00
JeroenSt
a5782f2ca0 Added usefull url to comments 2022-08-27 09:11:36 +02:00
JeroenSt
2926a66fe0 Added returning of modbus error codes to TCP client
https://github.com/arendst/Tasmota/issues/9586#issuecomment-1225437630
2022-08-27 09:11:36 +02:00
JeroenSt
5f86569a9f Solved Issues mentioned in
https://github.com/arendst/Tasmota/issues/9586
2022-08-27 09:11:36 +02:00
s-hadinger
be99f1183e
Merge pull request #16349 from s-hadinger/berry_micros_gc
Berry add more metrics to GC
2022-08-26 20:16:39 +02:00
Stephan Hadinger
e46d07acb4 Berry add more metrics to GC 2022-08-26 19:23:21 +02:00
Theo Arends
c7e6aabf2c
Merge pull request #16341 from FunJp/support_for_sgp40
Add support for SGP40 sensor
2022-08-26 19:22:04 +02:00
Jason2866
6e7f559f07
Use dio when no flash mode is set 2022-08-26 16:17:52 +02:00
Jean-Pierre Deschamps
cbfd2e1db7 Put USE_SGP40 at the correct place in decode-status
Remove used line from support_features.ino
2022-08-26 10:07:57 -04:00
Theo Arends
91875f20a5 Add balanced energy values
Add balanced energy values (#16346)
2022-08-26 14:35:52 +02:00
s-hadinger
4923755afc
Merge pull request #16345 from s-hadinger/haspmota_spinner
HASPmota make `spinner` editable
2022-08-26 09:06:25 +02:00
s-hadinger
25d023875e
Merge pull request #16344 from s-hadinger/zigbee_plugin_add
Zigbee change offset: to add:
2022-08-26 08:44:31 +02:00
Stephan Hadinger
979288570e HASPmota make spinner editable 2022-08-26 08:37:28 +02:00
Stephan Hadinger
6fbaa8505c Zigbee change offset: to add: 2022-08-26 08:33:27 +02:00
Jean-Pierre Deschamps
214f4bbdfd Add support for SGP40 sensor 2022-08-25 15:51:51 -04:00
s-hadinger
ea8a31d072
Merge pull request #16340 from s-hadinger/zigbee_attr_affine
Zigbee extend div and offset for plugin
2022-08-25 21:43:10 +02:00
Stephan Hadinger
42d26fecb2 Zigbee extend div and offset for plugin 2022-08-25 21:29:19 +02:00
rogg
03f2e0b6e9 Use Wifi.hostByName() for ESP8266
Saves ~1K on ESP8266. Also, the check for resolving to 255.255.255.255 is already done by Wifi.hostByName().
2022-08-25 10:38:04 -07:00
Theo Arends
74414d8304 re-add inverted button support in V3 2022-08-25 17:51:29 +02:00
Theo Arends
f3e677e805 Button debouncing V3 by adopting switch debounce code (#16339)
Button debouncing V3 by adopting switch debounce code (#15867)
2022-08-25 17:23:51 +02:00
Theo Arends
58f14301ae Bump version v12.1.1.1 2022-08-25 14:08:05 +02:00
Theo Arends
a187867070 Lost module name in GUI regression from v12.0.2.4
Lost module name in GUI regression from v12.0.2.4 - 20220803 (#16324)
2022-08-24 17:09:26 +02:00
Theo Arends
08bd672aa1 Add flash chip mode to GUI 2022-08-24 16:16:14 +02:00
Theo Arends
871e0dd3a0 Update changelogs 2022-08-24 09:12:15 +02:00
Theo Arends
4692b56569 Fix button delay regression from #15867
Fix #16319
2022-08-24 08:52:31 +02:00
Jason2866
c3fc050eba
Merge pull request #16315 from Jason2866/boards_clean
housekeeping boards manifest
2022-08-23 17:49:24 +02:00
Jason2866
a13f48aceb correct boards manifest 2022-08-23 16:50:10 +02:00
Theo Arends
8f6f7cc59e
Merge pull request #16314 from Jason2866/flash_dio
all ESP32 boards do support `dio`
2022-08-23 15:20:27 +02:00
Jason2866
0a6756a233 all ESP32 boards di support dio 2022-08-23 14:09:48 +02:00
Jason2866
6c9e39e79f
Merge pull request #16311 from arendst/iBeacon
iBeacon is working for S3 too
2022-08-23 13:27:09 +02:00
Jason2866
f09128dd1e
iBeacon is working for S3 too 2022-08-23 13:13:31 +02:00
Theo Arends
909f4debff
Merge pull request #16287 from barbudor/cheap-MQ-TDS-refactoring
Analog MQ TDS: refactor pow to constant
2022-08-23 09:26:56 +02:00
Theo Arends
355d43ff7d
Merge pull request #16292 from Jason2866/flashmode_c3_s2
use `dio` as default for Esp32-S2 and ESP32-C3
2022-08-23 09:26:14 +02:00
s-hadinger
72f7b6988d
Merge pull request #16298 from s-hadinger/berry_zigbee_attr
Berry Zigbee integration for received messages
2022-08-22 21:59:55 +02:00
Stephan Hadinger
a3c29375e8 Berry Zigbee integration for received messages 2022-08-22 21:32:39 +02:00
Jason2866
9b0cc9a0e7 use dio as default 2022-08-22 17:25:58 +02:00
Jason2866
8a85e29a40
Merge pull request #16286 from Jason2866/development
fix for crash with ESP32-S2
2022-08-22 16:24:46 +02:00
Jason2866
0f53ae845a
Real fix, S2 shows now correct mode too 2022-08-22 16:14:20 +02:00
barbudor
4d7f78e06e refactor pow to constant 2022-08-22 14:32:08 +02:00
Jason2866
729cb7a238
Merge branch 'arendst:development' into development 2022-08-22 13:12:59 +02:00
Jason2866
6d470a6429 temp fix for crash with ESP32-S2 2022-08-22 13:12:33 +02:00
s-hadinger
1bbec84f24
Merge pull request #16284 from s-hadinger/zigbee_giex_fix
Fix Giex zigbee attribute
2022-08-22 09:48:44 +02:00
Stephan Hadinger
3e751bf757 Fix Giex zigbee attribute 2022-08-22 09:47:59 +02:00
Theo Arends
810eb2ee79
Merge pull request #16280 from Staars/flash_mode
fix wrong flashmode report
2022-08-21 21:45:53 +02:00
Christian Baars
7cbdd409b5 fix wrong flashmode report 2022-08-21 20:22:39 +02:00
Jason2866
9669c4a85b
add "after_reset": "no_reset" Option
since S2 in CDC mode is not possible to reset after flash.
Avoids error message in Platformio. This Option will work after the Platformio Framework is updated together with core 2.5.0
2022-08-21 19:26:24 +02:00
Theo Arends
1cb2ae4dac
Merge pull request #16276 from blakadder/development
added missing info to BUILDS.md
2022-08-21 16:54:49 +02:00
blakadder
4adcce5e33
add zbbrdgpro to USE_TCP_BRIDGE 2022-08-21 16:18:36 +02:00
blakadder
f5ca9ecaec
add missing USE_MLX90640
add missing USE_MLX90640 to builds table
2022-08-21 16:04:06 +02:00
Theo Arends
a8f9e8d24c Add more flash modes 2022-08-21 14:49:09 +02:00
Theo Arends
e55e9d8485 Change flashmode from digit to text 2022-08-21 14:21:17 +02:00
Theo Arends
4468adf4ac
Merge pull request #16275 from Staars/patch-1
Fix wrong flash_chip_id on ESP32, when DOUT is not used
2022-08-21 12:33:43 +02:00
Theo Arends
f08a14cec2 Update changelogs 2022-08-21 11:50:38 +02:00
Theo Arends
e301734b2c Fix WifiHostByName for .local 2022-08-21 11:46:43 +02:00
Theo Arends
17d0382fe4
Merge pull request #16273 from rogg/fix-local-mdns
mDNS resolution for *.local fixes #16269
2022-08-21 11:29:58 +02:00
Christian Baars
42399d446a
Fix wrong flash_chip_id on ESP32, when DOUT is not used
This also fixes the wrong reported flash size for flash modes: DIO, QUOUT and QIO. Now a global struct is used, which gets populated by the boot loader.
2022-08-21 11:15:47 +02:00
rogg
16c39aab9e
mDNS resolution for *.local fixes #16269
"Add user control over DNS timeout reducing blocking"  c988ba1645 created DnsClient so that a timeout can be used to prevent blocking on ESP32, but it can't do one-shot mDNS queries. Use WiFi.hostByName () for those.
2022-08-20 23:17:05 -07:00
Theo Arends
204289e1ab Fix TuyaSend exception 2022-08-20 13:46:31 +02:00
Theo Arends
9a66687085 Add error message when invalid JSON is provided
Add error message when invalid JSON is provided (#13515)
2022-08-20 11:05:29 +02:00
s-hadinger
0444dfe35a
Merge pull request #16268 from s-hadinger/zigbee_zbload_more
Zigbee improve plugin format and add all ZCL attributes
2022-08-20 10:17:06 +02:00
Stephan Hadinger
e9e564c424 all attributes present 2022-08-19 23:52:35 +02:00
Stephan Hadinger
f690763c07 many more attributes 2022-08-19 23:42:11 +02:00
Stephan Hadinger
9d7cbcae62 Zigbee improve plugin format 2022-08-19 23:16:21 +02:00
s-hadinger
156adad97c
Merge pull request #16266 from s-hadinger/zigbee_unhide_attributes
Zigbee unhide unknown attributes
2022-08-19 17:59:25 +02:00
Stephan Hadinger
7625167bf5 Zigbee unhide unknown attributes 2022-08-19 17:44:25 +02:00
Theo Arends
dc217655a0 Force delete of retained messages
Force delete of retained messages
2022-08-19 16:43:20 +02:00
Theo Arends
a919b109de Fix StatusRetain reset 2022-08-19 15:12:16 +02:00
Theo Arends
1fe39bb620 Fix InfoRetain and StatusRetain
Fix InfoRetain and StatusRetain clean up if disabled
2022-08-19 15:03:32 +02:00
Theo Arends
103808ce44 Add command `StatusRetain`
Add command ``StatusRetain`` (#11109)
2022-08-19 14:24:55 +02:00
Theo Arends
49ada1cab9 Update changelogs 2022-08-19 12:30:20 +02:00
Theo Arends
99d40825f9
Merge pull request #16237 from Jason2866/NimBLE_14
NimBLE 1.4.0
2022-08-19 12:12:50 +02:00
Theo Arends
89d9b379d4 Update changelogs 2022-08-19 11:48:26 +02:00
Theo Arends
b59cd41d37
Merge pull request #16250 from Jason2866/S3_TempSens
S3 Temp sensor support
2022-08-19 11:32:37 +02:00
Jason2866
14c1c5dfd4
Review changes 2022-08-19 11:27:15 +02:00
Jason2866
f35097ca76
Merge pull request #16262 from arendst/revert-16182-webcam
Revert "Update Webcam lib `*.h` files"
2022-08-19 09:23:41 +02:00
Jason2866
78ce8875e6
Revert "Update Webcam lib *.h files" 2022-08-19 09:16:56 +02:00
s-hadinger
d8332bf94c
Merge pull request #16252 from s-hadinger/zigbee_plugins
Zigbee device plugin mechanism with commands ``ZbLoad``, ``ZbUnload`` and ``ZbLoadDump``
2022-08-18 20:28:32 +02:00
Stephan Hadinger
07645067aa Fix compilation of safeboot 2022-08-18 19:44:16 +02:00
Stephan Hadinger
ff07d0608b Zigbee device plugin mechanism with commands `ZbLoad, ZbUnload and ZbLoadDump` 2022-08-18 19:23:11 +02:00
Jason2866
f64bddea04
S3 Temp sensor support 2022-08-18 16:10:21 +02:00
Theo Arends
94c88df93b Fix RTC not detected when lights are present
Fix RTC not detected when lights are present (#16242)
2022-08-18 15:41:35 +02:00
Theo Arends
9285f89ef7 Bump version v12.1.0.1 2022-08-18 14:39:55 +02:00
Jason2866
f054fcc590
added Catalan "AD" 2022-08-18 13:52:39 +02:00
Jason2866
1a4822ab36
Merge pull request #16249 from Jason2866/core2_qio
core2 does work with `qio`
2022-08-18 13:14:41 +02:00
Jason2866
aea5047d4e
Merge pull request #16248 from Jason2866/S3_board
add missing flash mode entrys for ESP32-S3
2022-08-18 13:14:33 +02:00
Jason2866
9a93f55226 core2 does work with qio 2022-08-18 13:09:03 +02:00
Jason2866
de1d32445c flash_mode entry still needed 2022-08-18 13:00:52 +02:00
Jason2866
ebbc91fd4f fix flash mode entrys for ESP32-S3 2022-08-18 12:52:08 +02:00
Jason2866
39d14ab633 cpp 2022-08-18 10:11:53 +02:00
Jason2866
cdc00f2076 missing PSRAM fix 2022-08-18 10:08:53 +02:00
Jason2866
98ea693d41 NimBLE 1.4.0 2022-08-17 12:20:12 +02:00
5278 changed files with 1175244 additions and 613439 deletions

6
.gitattributes vendored
View File

@ -15,3 +15,9 @@
*.PDF diff=astextplain
*.rtf diff=astextplain
*.RTF diff=astextplain
# No changes for zip files
*.zip binary
*.autoconf binary
*.bin binary
*.tapp binary

View File

@ -32,6 +32,7 @@ _Make sure your have performed every step and checked the applicable boxes befor
- [ ] Searched the problem in [discussions](https://github.com/arendst/Tasmota/discussions)
- [ ] Searched the problem in the [docs](https://tasmota.github.io/docs/FAQ)
- [ ] Searched the problem in the [chat](https://discord.gg/Ks2Kzd4)
- [ ] Problem is not scripter related, in this case open a discussion and tag gemu2015
- [ ] Device used (e.g., Sonoff Basic): _____
- [ ] Tasmota binary firmware version number used: _____
- [ ] Pre-compiled

View File

@ -6,8 +6,8 @@
- [ ] The pull request is done against the latest development branch
- [ ] Only relevant files were touched
- [ ] Only one feature/fix was added per PR and the code change compiles without warnings
- [ ] The code change is tested and works with Tasmota core ESP8266 V.2.7.4.9
- [ ] The code change is tested and works with Tasmota core ESP32 V.2.0.4.1
- [ ] The code change is tested and works with Tasmota core ESP8266 V.2.7.8
- [ ] The code change is tested and works with Tasmota core ESP32 V.3.1.3.250411
- [ ] I accept the [CLA](https://github.com/arendst/Tasmota/blob/development/CONTRIBUTING.md#contributor-license-agreement-cla).
_NOTE: The code change must pass CI tests. **Your PR cannot be merged unless tests pass**_

View File

@ -1,12 +1,13 @@
name: Build_development
on:
workflow_dispatch: # Manually start a workflow
workflow_dispatch: # Start a workflow
push:
branches: development
paths-ignore:
- '.github/**' # Ignore changes towards the .github directory
- '**.md' # Do no build if *.md files changes
- '.github/**' # Ignore changes towards the .github directory
- '**.md' # Do no build if *.md files changes
# Ensures that only one deploy task per branch/environment will run at a time.
concurrency:
@ -14,7 +15,120 @@ concurrency:
cancel-in-progress: true
jobs:
be_solidify:
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota' && github.ref_name == 'development'
continue-on-error: true
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Make Berry and Solidify code
run: |
cd lib/libesp32/berry
make
cd ../berry_tasmota
../berry/berry -s -g solidify_all.be
cd ../berry_matter
../berry/berry -s -g solidify_all.be
cd ../berry_animate
../berry/berry -s -g solidify_all.be
cd ../../libesp32_lvgl/lv_binding_berry
../../libesp32/berry/berry -s -g solidify_all.be
cd ../lv_haspmota
../../libesp32/berry/berry -s -g solidify_all.be
- uses: actions/upload-artifact@v4
with:
name: berry
path: |
./lib/libesp32/berry_tasmota/src/solidify
./lib/libesp32/berry_matter/src/solidify
./lib/libesp32/berry_animate/src/solidify
./lib/libesp32_lvgl/lv_binding_berry/src/solidify
./lib/libesp32_lvgl/lv_haspmota/src/solidify
./lib/libesp32/berry/generate
push_solidified:
needs: be_solidify
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota' && github.ref_name == 'development'
continue-on-error: true
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- uses: actions/download-artifact@v4
with:
pattern: berry
path: berry
- name: Move solidified Berry files back
run: |
ls -R ./berry
mv berry/berry/libesp32/berry_tasmota/src/solidify/* ./lib/libesp32/berry_tasmota/src/solidify
mv berry/berry/libesp32/berry_matter/src/solidify/* ./lib/libesp32/berry_matter/src/solidify
mv berry/berry/libesp32/berry_animate/src/solidify/* ./lib/libesp32/berry_animate/src/solidify
mv berry/berry/libesp32_lvgl/lv_binding_berry/src/solidify/* ./lib/libesp32_lvgl/lv_binding_berry/src/solidify
mv berry/berry/libesp32_lvgl/lv_haspmota/src/solidify/* ./lib/libesp32_lvgl/lv_haspmota/src/solidify
mv berry/berry/libesp32/berry/generate/* ./lib/libesp32/berry/generate
- uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: Solidified Code updated
safeboot-images:
needs: push_solidified
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
continue-on-error: true
strategy:
matrix:
variant:
- tasmota32-safeboot
- tasmota32solo1-safeboot
- tasmota32c2-safeboot
- tasmota32c3-safeboot
- tasmota32c3ser-safeboot
- tasmota32s2-safeboot
- tasmota32s2cdc-safeboot
- tasmota32s3-safeboot
- tasmota32s3ser-safeboot
- tasmota32c6-safeboot
- tasmota32c6ser-safeboot
steps:
- uses: actions/checkout@v4
with:
ref: development
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Add SHA to footer
run: |
COMMIT_SHA_LONG=$(git rev-parse --short HEAD || echo "")
SHA=${COMMIT_SHA_LONG::7}
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT $SHA-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
#- name: Use esp32-solo1 safeboot for esp32 too
#run: |
#cp ./build_output/firmware/tasmota32solo1-safeboot.bin ./build_output/firmware/tasmota32-safeboot.bin
- name: Upload safeboot firmware artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.variant }}
path: ./build_output
base-images:
needs: push_solidified
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
continue-on-error: true
@ -22,7 +136,7 @@ jobs:
matrix:
variant:
- tasmota
- tasmota4M
- tasmota-4M
- tasmota-minimal
- tasmota-display
- tasmota-ir
@ -31,6 +145,39 @@ jobs:
- tasmota-sensors
- tasmota-zbbridge
- tasmota-zigbee
steps:
- uses: actions/checkout@v4
with:
ref: development
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
- name: Add SHA to footer
run: |
COMMIT_SHA_LONG=$(git rev-parse --short HEAD || echo "")
SHA=${COMMIT_SHA_LONG::7}
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT $SHA-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- name: Upload firmware artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.variant }}
path: ./build_output
base32-images:
needs: safeboot-images
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
continue-on-error: true
strategy:
matrix:
variant:
- tasmota32
- tasmota32-zbbrdgpro
- tasmota32-webcam
@ -39,137 +186,99 @@ jobs:
- tasmota32-display
- tasmota32-ir
- tasmota32-lvgl
- tasmota32c2
- tasmota32c3
- tasmota32c3cdc
- tasmota32c6
- tasmota32s2
- tasmota32s2cdc
- tasmota32s3
- tasmota32s3cdc
- tasmota32solo1
- tasmota32solo1-safeboot
- tasmota32-safeboot
- tasmota32c3-safeboot
- tasmota32c3cdc-safeboot
- tasmota32s2-safeboot
- tasmota32s2cdc-safeboot
- tasmota32s3-safeboot
- tasmota32s3cdc-safeboot
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
ref: development
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Download safeboot firmwares
uses: actions/download-artifact@v4
with:
pattern: tasmota32*
path: ./temp
- name: Move safeboot files
run: |
mkdir -p ./firmware/firmware
find ./temp -type f -exec cp -t ./firmware/firmware {} +
- name: Add SHA to footer
run: |
COMMIT_SHA_LONG=$(git rev-parse --short HEAD || echo "")
SHA=${COMMIT_SHA_LONG::7}
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT $SHA-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- uses: actions/upload-artifact@v2
- name: Upload firmware artifacts
uses: actions/upload-artifact@v4
with:
name: firmware
name: ${{ matrix.variant }}
path: ./build_output
language-images:
needs: safeboot-images
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
continue-on-error: true
strategy:
matrix:
variant: [ tasmota, tasmota32 ]
language: [ AD, AF, BG, BR, CN, CZ, DE, ES, FR, FY, GR, HE, HU, IT, KO, NL, PL, PT, RO, RU, SE, SK, TR, TW, UK, VN ]
language: [ AD, AF, BG, BR, CN, CZ, DE, ES, FR, FY, GR, HE, HU, IT, KO, LT, NL, PL, PT, RO, RU, SE, SK, TR, TW, UK, VN ]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
ref: development
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Download safeboot firmwares
uses: actions/download-artifact@v4
with:
pattern: tasmota32*
path: ./temp
- name: Move safeboot files
run: |
mkdir -p ./firmware/firmware
find ./temp -type f -exec cp -t ./firmware/firmware {} +
- name: Add SHA to footer
run: |
COMMIT_SHA_LONG=$(git rev-parse --short HEAD || echo "")
SHA=${COMMIT_SHA_LONG::7}
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT $SHA-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}-${{ matrix.language }}
- uses: actions/upload-artifact@v2
- name: Upload language firmware artifacts
uses: actions/upload-artifact@v4
with:
name: firmware
name: ${{ matrix.variant }}-${{ matrix.language }}
path: ./build_output
Upload:
needs: [base-images, language-images]
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/download-artifact@v2
with:
name: firmware
path: ./mv_firmware
- name: Display structure of downloaded files
run: ls -R
working-directory: ./mv_firmware
- name: Move firmware files in sub-folders
run: |
mkdir -p ./firmware/tasmota/languages
mkdir -p ./firmware/tasmota32/languages
mkdir -p ./firmware/map
[ ! -f ./mv_firmware/map/* ] || mv ./mv_firmware/map/* ./firmware/map/
[ ! -f ./mv_firmware/firmware/tasmota.* ] || mv ./mv_firmware/firmware/tasmota.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota4M.* ] || mv ./mv_firmware/firmware/tasmota4M.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-sensors.* ] || mv ./mv_firmware/firmware/tasmota-sensors.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-minimal.bin.gz ] || mv ./mv_firmware/firmware/tasmota-minimal.bin.gz ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-lite.* ] || mv ./mv_firmware/firmware/tasmota-lite.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-ir*.* ] || mv ./mv_firmware/firmware/tasmota-ir*.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-display.* ] || mv ./mv_firmware/firmware/tasmota-display.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-knx.* ] || mv ./mv_firmware/firmware/tasmota-knx.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-zbbridge.* ] || mv ./mv_firmware/firmware/tasmota-zbbridge.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-zigbee.* ] || mv ./mv_firmware/firmware/tasmota-zigbee.* ./firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota32.* ] || mv ./mv_firmware/firmware/tasmota32.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32solo1*.* ] || mv ./mv_firmware/firmware/tasmota32solo1*.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-ir*.* ] || mv ./mv_firmware/firmware/tasmota32-ir*.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-display.* ] || mv ./mv_firmware/firmware/tasmota32-display.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-lvgl.* ] || mv ./mv_firmware/firmware/tasmota32-lvgl.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-web*.* ] || mv ./mv_firmware/firmware/tasmota32-web*.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-odroidgo.* ] || mv ./mv_firmware/firmware/tasmota32-odroidgo.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-zbbrdgpro.* ] || mv ./mv_firmware/firmware/tasmota32-zbbrdgpro.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-nspanel.* ] || mv ./mv_firmware/firmware/tasmota32-nspanel.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-core2.* ] || mv ./mv_firmware/firmware/tasmota32-core2.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-bluetooth.* ] || mv ./mv_firmware/firmware/tasmota32-bluetooth.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32c3*.* ] || mv ./mv_firmware/firmware/tasmota32c3*.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32s2*.* ] || mv ./mv_firmware/firmware/tasmota32s2*.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32s3*.* ] || mv ./mv_firmware/firmware/tasmota32s3*.* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-safeboot* ] || mv ./mv_firmware/firmware/tasmota32-safeboot* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-* ] || mv ./mv_firmware/firmware/tasmota32-* ./firmware/tasmota32/languages/
[ ! -f ./mv_firmware/firmware/tasmota32* ] || mv ./mv_firmware/firmware/tasmota32* ./firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota-minimal.bin ] || rm -rf ./mv_firmware/firmware/tasmota-minimal.bin
[ ! -f ./mv_firmware/firmware/* ] || mv ./mv_firmware/firmware/* ./firmware/tasmota/languages/
- name: Display files to transfer
run: ls -R ./*
- name: Push Firmware files to tmp_copy repo
uses: Jason2866/copy_file_to_another_repo_action@main
env:
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
with:
source_file: 'firmware'
destination_repo: 'arendst/tmp_copy'
destination_branch: 'firmware'
user_email: 'github-actions@github.com'
user_name: 'github-actions'
Start_final_copy:
needs: Upload
needs: [base-images, base32-images, language-images]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Creat trigger.txt
- name: Dispatch workflow in arendst/Tasmota-firmware
run: |
echo ${GITHUB_SHA} &> trigger.txt
echo "$(<trigger.txt)"
- name: Push trigger.txt to start workflow copy in tmp repo
uses: Jason2866/copy_file_to_another_repo_action@main
env:
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
with:
source_file: 'trigger.txt'
destination_repo: 'arendst/tmp_copy'
destination_branch: 'action-development'
user_email: 'github-actions@github.com'
user_name: 'github-actions'
curl -X POST https://api.github.com/repos/arendst/Tasmota-firmware/actions/workflows/fetch_deploy.yml/dispatches \
-H 'Accept: application/vnd.github.everest-preview+json' \
-u ${{ secrets.API_TOKEN_GITHUB }} \
--data '{"ref": "gh_actions"}'

View File

@ -1,11 +1,12 @@
name: Build_firmware_master
on:
workflow_dispatch: # Start a workflow
push:
branches: master
paths-ignore:
- '.github/**' # Ignore changes towards the .github directory
- '**.md' # Do no build if *.md files changes
- '.github/**' # Ignore changes towards the .github directory
- '**.md' # Do no build if *.md files changes
# Ensures that only one deploy task per branch/environment will run at a time.
concurrency:
@ -13,6 +14,48 @@ concurrency:
cancel-in-progress: true
jobs:
safeboot-images:
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
continue-on-error: true
strategy:
matrix:
variant:
- tasmota32-safeboot
- tasmota32solo1-safeboot
- tasmota32c2-safeboot
- tasmota32c3-safeboot
- tasmota32c3ser-safeboot
- tasmota32s2-safeboot
- tasmota32s2cdc-safeboot
- tasmota32s3-safeboot
- tasmota32s3ser-safeboot
- tasmota32c6-safeboot
- tasmota32c6ser-safeboot
steps:
- uses: actions/checkout@v4
with:
ref: master
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Add "release" to footer
run: |
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- name: Upload safeboot firmware artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.variant }}
path: ./build_output
base-images:
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
@ -21,7 +64,7 @@ jobs:
matrix:
variant:
- tasmota
- tasmota4M
- tasmota-4M
- tasmota-minimal
- tasmota-display
- tasmota-ir
@ -30,6 +73,38 @@ jobs:
- tasmota-sensors
- tasmota-zbbridge
- tasmota-zigbee
steps:
- uses: actions/checkout@v4
with:
ref: master
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Add "release" to footer
run: |
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- name: Upload firmware artifacts
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.variant }}
path: ./build_output
base32-images:
needs: safeboot-images
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
continue-on-error: true
strategy:
matrix:
variant:
- tasmota32
- tasmota32-zbbrdgpro
- tasmota32-webcam
@ -38,146 +113,122 @@ jobs:
- tasmota32-display
- tasmota32-ir
- tasmota32-lvgl
- tasmota32c2
- tasmota32c3
- tasmota32c3cdc
- tasmota32c6
- tasmota32s2
- tasmota32s2cdc
- tasmota32s3
- tasmota32s3cdc
- tasmota32solo1
- tasmota32solo1-safeboot
- tasmota32-safeboot
- tasmota32c3-safeboot
- tasmota32c3cdc-safeboot
- tasmota32s2-safeboot
- tasmota32s2cdc-safeboot
- tasmota32s3-safeboot
- tasmota32s3cdc-safeboot
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
ref: master
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Download safeboot firmwares
uses: actions/download-artifact@v4
with:
pattern: tasmota32*
path: ./temp
- name: Move safeboot files
run: |
mkdir -p ./firmware/firmware
find ./temp -type f -exec cp -t ./firmware/firmware {} +
- name: Add "release" to footer
run: |
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- uses: actions/upload-artifact@v2
- name: Upload firmware artifacts
uses: actions/upload-artifact@v4
with:
name: firmware
name: ${{ matrix.variant }}
path: ./build_output
language-images:
needs: safeboot-images
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
continue-on-error: true
strategy:
matrix:
variant: [ tasmota, tasmota32 ]
language: [ AD, AF, BG, BR, CN, CZ, DE, ES, FR, FY, GR, HE, HU, IT, KO, NL, PL, PT, RO, RU, SE, SK, TR, TW, UK, VN ]
language: [ AD, AF, BG, BR, CN, CZ, DE, ES, FR, FY, GR, HE, HU, IT, KO, LT, NL, PL, PT, RO, RU, SE, SK, TR, TW, UK, VN ]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
ref: master
- name: Set up Python
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
pip install -U platformio
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Download safeboot firmwares
uses: actions/download-artifact@v4
with:
pattern: tasmota32*
path: ./temp
- name: Move safeboot files
run: |
mkdir -p ./firmware/firmware
find ./temp -type f -exec cp -t ./firmware/firmware {} +
- name: Add "release" to footer
run: |
sed -i -e "s/TASMOTA_SHA_SHORT/TASMOTA_SHA_SHORT release-/g" ./tasmota/include/tasmota_version.h
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}-${{ matrix.language }}
- uses: actions/upload-artifact@v2
- name: Upload language firmware artifacts
uses: actions/upload-artifact@v4
with:
name: firmware
name: ${{ matrix.variant }}-${{ matrix.language }}
path: ./build_output
Upload:
needs: [base-images, language-images]
Release:
needs: [base-images, base32-images, language-images]
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v3
- uses: actions/download-artifact@v2
- uses: actions/checkout@v4
- name: Download all Tasmota artifacts
uses: actions/download-artifact@v4
with:
name: firmware
path: ./mv_firmware
pattern: tasmota*
path: ./temp
- name: Move files
run: |
mkdir -p ./release
find ./temp -type f -exec cp -t ./release {} +
- name: Display structure of downloaded files
run: ls -R ./mv_firmware/
run: ls -R ./release/
- name: Release
uses: softprops/action-gh-release@v1
uses: jason2866/action-gh-release@v1.2
#if: startsWith(github.ref, 'refs/tags/')
with:
tag_name: ${{ github.run_number }}
files: ./mv_firmware/firmware/*
files: |
./release/tasmota*
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Move firmware files in sub-folders
run: |
mkdir -p ./release-firmware/tasmota/languages
mkdir -p ./release-firmware/tasmota32/languages
mkdir -p ./release-firmware/map
[ ! -f ./mv_firmware/map/* ] || mv ./mv_firmware/map/* ./release-firmware/map/
[ ! -f ./mv_firmware/firmware/tasmota.* ] || mv ./mv_firmware/firmware/tasmota.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota4M.* ] || mv ./mv_firmware/firmware/tasmota4M.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-sensors.* ] || mv ./mv_firmware/firmware/tasmota-sensors.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-minimal.bin.gz ] || mv ./mv_firmware/firmware/tasmota-minimal.bin.gz ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-lite.* ] || mv ./mv_firmware/firmware/tasmota-lite.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-ir*.* ] || mv ./mv_firmware/firmware/tasmota-ir*.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-display.* ] || mv ./mv_firmware/firmware/tasmota-display.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-knx.* ] || mv ./mv_firmware/firmware/tasmota-knx.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-zbbridge.* ] || mv ./mv_firmware/firmware/tasmota-zbbridge.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota-zigbee.* ] || mv ./mv_firmware/firmware/tasmota-zigbee.* ./release-firmware/tasmota/
[ ! -f ./mv_firmware/firmware/tasmota32.* ] || mv ./mv_firmware/firmware/tasmota32.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32solo1*.* ] || mv ./mv_firmware/firmware/tasmota32solo1*.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-ir*.* ] || mv ./mv_firmware/firmware/tasmota32-ir*.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-display.* ] || mv ./mv_firmware/firmware/tasmota32-display.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-lvgl.* ] || mv ./mv_firmware/firmware/tasmota32-lvgl.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-web*.* ] || mv ./mv_firmware/firmware/tasmota32-web*.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-zbbrdgpro.* ] || mv ./mv_firmware/firmware/tasmota32-zbbrdgpro.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-nspanel.* ] || mv ./mv_firmware/firmware/tasmota32-nspanel.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-odroidgo.* ] || mv ./mv_firmware/firmware/tasmota32-odroidgo.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-core2.* ] || mv ./mv_firmware/firmware/tasmota32-core2.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-bluetooth.* ] || mv ./mv_firmware/firmware/tasmota32-bluetooth.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32c3*.* ] || mv ./mv_firmware/firmware/tasmota32c3*.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32s2*.* ] || mv ./mv_firmware/firmware/tasmota32s2*.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32s3*.* ] || mv ./mv_firmware/firmware/tasmota32s3*.* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-safeboot* ] || mv ./mv_firmware/firmware/tasmota32-safeboot* ./release-firmware/tasmota32/
[ ! -f ./mv_firmware/firmware/tasmota32-* ] || mv ./mv_firmware/firmware/tasmota32-* ./release-firmware/tasmota32/languages/
[ ! -f ./mv_firmware/firmware/tasmota32* ] || mv ./mv_firmware/firmware/tasmota32* ./release-firmware/tasmota32/languages/
[ ! -f ./mv_firmware/firmware/tasmota-minimal.bin ] || rm -rf ./mv_firmware/firmware/tasmota-minimal.bin
[ ! -f ./mv_firmware/firmware/* ] || mv ./mv_firmware/firmware/* ./release-firmware/tasmota/languages/
- name: Display files to transfer
run: ls -R ./*
- name: Push Firmware files to tmp_copy repo
uses: Jason2866/copy_file_to_another_repo_action@main
env:
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
with:
source_file: 'release-firmware'
destination_repo: 'arendst/tmp_copy'
destination_branch: 'firmware'
user_email: 'github-actions@github.com'
user_name: 'github-actions'
Start_final_copy:
needs: Upload
needs: Release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Creat trigger.txt
- name: Dispatch workflow in arendst/Tasmota-firmware
run: |
echo ${GITHUB_SHA} &> trigger.txt
echo "$(<trigger.txt)"
- name: Push trigger.txt to start workflow copy in tmp repo
uses: Jason2866/copy_file_to_another_repo_action@main
env:
API_TOKEN_GITHUB: ${{ secrets.API_TOKEN_GITHUB }}
with:
source_file: 'trigger.txt'
destination_repo: 'arendst/tmp_copy'
destination_branch: 'action-master'
user_email: 'github-actions@github.com'
user_name: 'github-actions'
curl -X POST https://api.github.com/repos/arendst/Tasmota-firmware/actions/workflows/fetch_deploy.yml/dispatches \
-H 'Accept: application/vnd.github.everest-preview+json' \
-u ${{ secrets.API_TOKEN_GITHUB }} \
--data '{"ref": "gh_actions"}'

View File

@ -7,6 +7,7 @@ on:
paths:
- '**.c'
- '**.cpp'
- '**.be'
- '**.h'
- '**.hpp'
- '**.ino'
@ -17,14 +18,71 @@ on:
- '.github/workflows/build_all_the_things.yml'
jobs:
os-check-win:
runs-on: windows-2019
if: github.repository == 'arendst/Tasmota'
strategy:
fail-fast: true
matrix:
variant:
- tasmota32-webcam
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
#python -m pip install --upgrade pip
pip install -U platformio
#platformio upgrade --dev
#platformio update
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- uses: actions/upload-artifact@v4
with:
name: ${{ matrix.variant }}
path: ./build_output
os-check-mac:
runs-on: macos-14
if: github.repository == 'arendst/Tasmota'
strategy:
fail-fast: true
matrix:
variant:
- tasmota32solo1-safeboot
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install dependencies
run: |
pip install wheel
#python -m pip install --upgrade pip
pip install -U platformio
#platformio upgrade --dev
#platformio update
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- uses: actions/upload-artifact@v4
with:
name: ${{ matrix.variant }}
path: ./build_output
base-images:
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
strategy:
fail-fast: true
matrix:
variant:
- tasmota
- tasmota4M
- tasmota-4M
- tasmota-display
- tasmota-ir
- tasmota-knx
@ -32,68 +90,73 @@ jobs:
- tasmota-minimal
- tasmota-sensors
- tasmota-zbbridge
- tasmota32
- tasmota32solo1
- tasmota32c2
- tasmota32c3
- tasmota32c6
- tasmota32s2
- tasmota32s2cdc
- tasmota32s3
- tasmota32-zbbrdgpro
- tasmota-zigbee
- tasmota32
- tasmota32-webcam
- tasmota32-bluetooth
- tasmota32-core2
- tasmota32-nspanel
- tasmota32-display
- tasmota32-ir
- tasmota32-lvgl
- tasmota32c3
- tasmota32c3cdc
- tasmota32s2
- tasmota32s2cdc
- tasmota32s3
- tasmota32s3cdc
- tasmota32solo1
- tasmota32solo1-safeboot
- tasmota32-safeboot
- tasmota32c3-safeboot
- tasmota32c3cdc-safeboot
- tasmota32s2-safeboot
- tasmota32s2cdc-safeboot
- tasmota32s3-safeboot
- tasmota32s3cdc-safeboot
- tasmota32c2-safeboot
- tasmota32c3-safeboot
- tasmota32c6-safeboot
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
#python -m pip install --upgrade pip
pip install -U platformio
#platformio upgrade --dev
#platformio update
cp ./platformio_override_sample.ini ./platformio_override.ini
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}
- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v4
with:
name: firmware
name: ${{ matrix.variant }}
path: ./build_output
language-images:
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
strategy:
fail-fast: true
matrix:
variant: [ tasmota ]
language: [ AD, AF, BG, BR, CN, CZ, DE, ES, FR, FY, GR, HE, HU, IT, KO, NL, PL, PT, RO, RU, SE, SK, TR, TW, UK, VN ]
language: [ AD, AF, BG, BR, CN, CZ, DE, ES, FR, FY, GR, HE, HU, IT, KO, LT, NL, PL, PT, RO, RU, SE, SK, TR, TW, UK, VN ]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v1
uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Install dependencies
run: |
pip install wheel
#python -m pip install --upgrade pip
pip install -U platformio
#platformio upgrade --dev
#platformio update
- name: Run PlatformIO
run: platformio run -e ${{ matrix.variant }}-${{ matrix.language }}
- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v4
with:
name: firmware
name: ${{ matrix.variant }}-${{ matrix.language }}
path: ./build_output

View File

@ -14,7 +14,7 @@ jobs:
runs-on: ubuntu-latest
if: github.repository == 'arendst/Tasmota'
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Push I2CDevices.md to https://github.com/Tasmota/docs
uses: Jason2866/copy_file_to_another_repo_action@main
env:

61
.github/workflows/pr_comment.yml.off vendored Normal file
View File

@ -0,0 +1,61 @@
name: Comment on pull request
on:
workflow_run:
workflows: [Tasmota CI]
types: [completed]
jobs:
pr_comment:
if: github.event.workflow_run.event == 'pull_request' && github.event.workflow_run.conclusion == 'success'
runs-on: ubuntu-latest
steps:
- uses: actions/github-script@v7
with:
# This snippet is public-domain, taken from
# https://github.com/oprypin/nightly.link/blob/master/.github/workflows/pr-comment.yml
script: |
async function upsertComment(owner, repo, issue_number, purpose, body) {
const {data: comments} = await github.rest.issues.listComments(
{owner, repo, issue_number});
const marker = `<!-- bot: ${purpose} -->`;
body = marker + "\n" + body;
const existing = comments.filter((c) => c.body.includes(marker));
if (existing.length > 0) {
const last = existing[existing.length - 1];
core.info(`Updating comment ${last.id}`);
await github.rest.issues.updateComment({
owner, repo,
body,
comment_id: last.id,
});
} else {
core.info(`Creating a comment in issue / PR #${issue_number}`);
await github.rest.issues.createComment({issue_number, body, owner, repo});
}
}
const {owner, repo} = context.repo;
const run_id = ${{github.event.workflow_run.id}};
const pull_requests = ${{ toJSON(github.event.workflow_run.pull_requests) }};
if (!pull_requests.length) {
return core.error("This workflow doesn't match any pull requests!");
}
const artifacts = await github.paginate(
github.rest.actions.listWorkflowRunArtifacts, {owner, repo, run_id});
if (!artifacts.length) {
return core.error(`No artifacts found`);
}
let body = `Download the artifacts for this pull request:\n`;
for (const art of artifacts) {
body += `\n* [${art.name}.zip](https://nightly.link/${owner}/${repo}/actions/artifacts/${art.id}.zip)`;
}
core.info("Review thread message body:", body);
for (const pr of pull_requests) {
await upsertComment(owner, repo, pr.number,
"nightly-link", body);
}

View File

@ -8,7 +8,7 @@ jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v3.0.15
- uses: actions/stale@v9
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
days-before-stale: 25

22
.gitignore vendored
View File

@ -8,16 +8,25 @@
*.o
*.gcno
*.gcda
dependencies.lock
## Project files ######
managed_components
.platformio
.pio
.clang_complete
.gcc-flags.json
.cache
.dummy
sdkconfig.*
data
unpacked_fs
unpacked_boards
tasmota/user_config_override.h
tasmota/include/local_ca_data.h
tasmota/include/local_ca_descriptor.h
variants
variants3
build
build_output/*
firmware.map
@ -25,11 +34,24 @@ firmware.asm
tasmota/tasmota.ino.cpp
platformio_override.ini
platformio_tasmota_cenv.ini
platformio_tasmota_user_env.ini
platformio_tasmota_core3_env.ini
lib/libesp32/berry/generate/*
lib/libesp32/berry/berry
## Visual Studio Code specific ######
.vscode
.vscode/.browse.c_cpp.db*
.vscode/c_cpp_properties.json
.vscode/launch.json
.vscode/settings.json
.vscode/extensions.json
*.bak
*.code-workspace
## IntelliJ ######
.idea
## Python virtual environments for Platformio ##
venv
.venv

4
.gitpod.Dockerfile vendored
View File

@ -1,3 +1,3 @@
FROM gitpod/workspace-full
FROM gitpod/workspace-python-3.11
USER gitpod

View File

@ -1,11 +1,9 @@
tasks:
- command: pip3 install -U platformio && platformio run -e tasmota
- command: pip install -U platformio && pip install --upgrade pip && platformio run -t clean -e tasmota
image:
file: .gitpod.Dockerfile
vscode:
extensions:
- Atishay-Jain.All-Autocomplete
- esbenp.prettier-vscode
- shardulm94.trailing-spaces

10
.vscode/extensions.json vendored Normal file
View File

@ -0,0 +1,10 @@
{
// See http://go.microsoft.com/fwlink/?LinkId=827846
// for the documentation about the extensions.json format
"recommendations": [
"platformio.platformio-ide"
],
"unwantedRecommendations": [
"ms-vscode.cpptools-extension-pack"
]
}

74
.vscode/settings.json vendored Normal file
View File

@ -0,0 +1,74 @@
{
"platformio-ide.toolbar": [
{
"text": "$(home)",
"tooltip": "PlatformIO: Home",
"commands": "platformio-ide.showHome"
},
{
"text": "$(trash)",
"tooltip": "PlatformIO: Clean",
"commands": "platformio-ide.clean"
},
{
"text": "$(check)",
"tooltip": "PlatformIO: Build",
"commands": "platformio-ide.build"
},
{
"text": "Upload",
"tooltip": "PlatformIO: Flash firmware (NO build run)",
"commands": [
{
"id": "platformio-ide.runPIOCoreCommand",
"args": "pio run -t nobuild -t factory_flash -e ${command:platformio-ide.activeEnvironment}"
}
]
},
{
"text": "$(zap)",
"tooltip": "PlatformIO: Build and Upload",
"commands": "platformio-ide.upload"
},
{
"text": "$(flame)",
"tooltip": "PlatformIO: Build, Erase and Upload",
"commands": [
{
"id": "platformio-ide.runPIOCoreCommand",
"args": "pio run -t erase_upload -e ${command:platformio-ide.activeEnvironment}"
}
]
},
{
"text": "$(error)",
"tooltip": "PlatformIO: Erase Flash",
"commands": [
{
"id": "platformio-ide.runPIOCoreCommand",
"args": "pio run -t nobuild -t erase -e ${command:platformio-ide.activeEnvironment}"
}
]
},
{
"text": "$(arrow-right)",
"tooltip": "PlatformIO: Build, Upload and Monitor",
"commands": "platformio-ide.uploadAndMonitor"
},
{
"text": "$(device-desktop)",
"tooltip": "PlatformIO: Serial Monitor",
"commands": "platformio-ide.serialMonitor"
},
{
"text": "$(terminal)",
"tooltip": "PlatformIO: New Terminal",
"commands": "platformio-ide.newTerminal"
},
{
"text": "$(refresh)",
"tooltip": "PlatformIO: Rebuild IntelliSense Index",
"commands": "platformio-ide.rebuildProjectIndex"
}
]
}

28
API.md
View File

@ -1,4 +1,7 @@
<img src="/tools/logo/TASMOTA_FullLogo_Vector.svg" alt="Logo" align="right" height="76"/>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./tools/logo/TASMOTA_FullLogo_Vector_White.svg">
<img alt="Logo" src="./tools/logo/TASMOTA_FullLogo_Vector.svg" align="right" height="76">
</picture>
# Basic API information
@ -14,20 +17,24 @@ Callback Id | Bool | xdrv | xsns | xnrg | xlgt | Description
----------------------------|------|------|------|------|------|----------------------------------
FUNC_SETTINGS_OVERRIDE | | x | | | | Override start-up settings
FUNC_PIN_STATE | x | 1 | 2 | | | At GPIO configuration
FUNC_I2C_INIT | | x | | | | Immediately after I2C init
FUNC_MODULE_INIT | x | 3 | 1 | | 2 | Init module specific parameters
FUNC_PRE_INIT | | 1 | 3 | 2 | | Once GPIO have been established
FUNC_INIT | | 1 | 3 | 2 | | At end of initialisation
FUNC_LOOP | | 1 | 2 | | | In main loop
FUNC_EVERY_50_MSECOND | | 1 | 2 | | |
FUNC_EVERY_100_MSECOND | | 1 | 2 | | |
FUNC_EVERY_200_MSECOND | | | | x | |
FUNC_EVERY_250_MSECOND | | 1 | 3 | 2 | |
FUNC_EVERY_SECOND | | 1 | 2 | | |
FUNC_SLEEP_LOOP | | 1 | 2 | | | In main loop during sleep
FUNC_EVERY_50_MSECOND | | 1 | 2 | | | In main loop
FUNC_EVERY_100_MSECOND | | 1 | 2 | | | In main loop
FUNC_EVERY_200_MSECOND | | | | x | | In main loop
FUNC_EVERY_250_MSECOND | | 1 | 3 | 2 | | In main loop
FUNC_EVERY_SECOND | | 1 | 2 | | | In main loop
FUNC_SAVE_SETTINGS | | 2 | 1 | | | Just before saving settings
FUNC_SAVE_AT_MIDNIGHT | | | x | | | At midnight
FUNC_SAVE_BEFORE_RESTART | | 2 | 1 | | | Just before a planned restart
FUNC_AFTER_TELEPERIOD | | 2 | 1 | | | At end of teleperiod
FUNC_JSON_APPEND | | 2 | 1 | 3 | | Extend teleperiod JSON text
FUNC_WEB_SENSOR | | 2 | 1 | 3 | | Add sensor data to web GUI
FUNC_WEB_COL_SENSOR | | 2 | 1 | 3 | | Add sensor data to web GUI using columns
FUNC_COMMAND | x | 1 | 2 | 3 | 4 | When a command is not recognized
FUNC_COMMAND_DRIVER | x | x | | | | When command Driver\<id\> is executed
FUNC_COMMAND_SENSOR | x | | x | | | When command Sensor\<id\> is executed
@ -38,19 +45,28 @@ FUNC_SET_POWER | | 1 | 2 | | | Before setting
FUNC_SET_DEVICE_POWER | x | x | | | | Set relay
FUNC_SHOW_SENSOR | | x | | | | When FUNC_JSON_APPEND completes
FUNC_ANY_KEY | | x | | | |
FUNC_LED_LINK | | x | | | | SetLedLink (On ESP32 only). XdrvMailbox.index holds state
FUNC_ENERGY_EVERY_SECOND | | | | x | |
FUNC_ENERGY_RESET | | | | x | |
FUNC_RULES_PROCESS | x | x | | | | Process specific rule
FUNC_TELEPERIOD_RULES_PROCESS | x | x | | | | Process specific rule as teleperiod
FUNC_SERIAL | x | 1 | | 2 | 3 | Process serial data
FUNC_FREE_MEM | | x | | | | Show free memory for debugging
FUNC_BUTTON_PRESSED | x | x | | | | When a button is pressed
FUNC_BUTTON_MULTI_PRESSED | x | x | | | | When a button is pressed multiple times
FUNC_WEB_ADD_BUTTON | | 1 | 2 | | | Add a Configuration Button to GUI
FUNC_WEB_ADD_MAIN_BUTTON | | 1 | 2 | | | Add a main button to GUI
FUNC_WEB_ADD_CONSOLE_BUTTON | | 1 | 2 | | | Add a Consoles Button to GUI
FUNC_WEB_ADD_MANAGEMENT_BUTTON | | x | | | | Add a Management Button to GUI
FUNC_WEB_ADD_HANDLER | | 1 | 2 | | | Add a webserver handler
FUNC_WEB_GET_ARG | | 2 | 1 | | 3 | Get webserver setting arguments
FUNC_SET_CHANNELS | | 2 | | | 1 |
FUNC_SET_SCHEME | | | | | x |
FUNC_HOTPLUG_SCAN | | | x | | |
FUNC_TIME_SYNCED | | x | | | | Report time is synced
FUNC_DEVICE_GROUP_ITEM | | x | | | |
FUNC_NETWORK_UP | | 1 | 2 | 3 | 4 | Wifi or ETH network just went up (received even if webserver is not enabled)
FUNC_NETWORK_DOWN | | 1 | 2 | 3 | 4 | Wifi or ETH network just went down (received even if webserver is not enabled)
The numbers represent the sequence of execution

546
BUILDS.md
View File

@ -1,255 +1,303 @@
## Available Features and Sensors
ESP8266 / ESP32
l = lite, t = tasmota (ESP8266 / ESP32), k = knx, s = sensors, i = ir, d = display
l = lite, t = tasmota, k = knx, s = sensors, i = ir, d = display
Note: the `minimal` variant is not listed as it shouldn't be used outside of the [upgrading](https://tasmota.github.io/docs/Upgrading/) process.
Note: `minimal` variant is not listed as it shouldn't be used outside of the [upgrading](https://tasmota.github.io/docs/Upgrading/) process.
| **Feature or Sensor** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| ------------------------- | ----- | ----- | ----- | ----- | ----- | ----- | --------------------------- |
| MY_LANGUAGE en_GB | x | x / x | x | x | x | x |
| USE_IMPROV | x | x / x | x | x | x | x |
| USE_UFILESYS | - | - / x | - | - | - | - | Every ESP8266 > 1MB |
| USE_ARDUINO_OTA | - | - / - | - | - | - | - |
| USE_DOMOTICZ | - | x / x | x | x | x | - |
| USE_HOME_ASSISTANT | - | - / - | - | - | - | - |
| USE_TASMOTA_DISCOVERY | x | x / x | x | x | x | x |
| USE_MQTT_TLS\* | - | - / x | - | - | - | - |
| USE_MQTT_CLIENT_CERT | - | - / - | - | - | - | - |
| USE_MQTT_AWS_IOT | - | - / - | - | - | - | - |
| USE_4K_RSA | - | - / - | - | - | - | - |
| USE_TELEGRAM | - | - / - | - | - | - | - |
| USE_KNX | - | - / x | x | - | - | - |
| USE_TELNET | - | - / - | - | - | - | - |
| USE_XYZMODEM | - | - / - | - | - | - | - |
| USE_WEBSERVER | x | x / x | x | x | x | x |
| USE_WEBSEND_RESPONSE | - | - / - | - | - | - | - |
| USE_EMULATION_HUE | x | x / x | - | x | - | - |
| USE_EMULATION_WEMO | x | x / x | - | x | - | - |
| USE_DISCOVERY | - | - / - | - | - | - | - |
| WEBSERVER_ADVERTISE | - | x / - | x | - | - | x |
| MQTT_HOST_DISCOVERY | - | - / - | - | - | - | - |
| USE_TIMERS | x | x / x | x | x | x | x |
| USE_TIMERS_WEB | x | x / x | x | x | x | x |
| USE_SUNRISE | x | x / x | x | x | x | x |
| USE_RULES | x | x / x | x | x | x | x |
| USE_SCRIPT | - | - / - | - | - | - | - |
| USE_EXPRESSION | - | x / x | - | - | - | - |
| SUPPORT_IF_STATEMENT | - | x / x | - | - | - | - |
| USE_HOTPLUG | - | - / - | - | - | - | - |
| USE_PROMETHEUS | - | - / - | - | - | - | - |
| USE_PING | - | - / - | - | - | - | - |
| USE_HDMI_CEC | - | - / - | - | - | - | - |
| USE_MAGIC_SWITCH | - | - / x | - | - | - | - |
| USE_GPIO_VIEWER | - | - / x | - | - | - | - |
| | | | | | | |
| **Feature or Sensor** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| ROTARY_V1 | - | x / x | - | x | - | - |
| USE_SONOFF_RF | - | x / - | x | x | - | - |
| USE_RF_FLASH | - | x / - | x | x | - | - |
| USE_SONOFF_SC | - | x / - | x | x | - | - |
| USE_TUYA_MCU | x | x / - | x | x | - | x |
| USE_ARMTRONIX_DIMMERS | - | x / - | x | - | - | - |
| USE_PS_16_DZ | - | x / - | x | - | - | - |
| USE_SONOFF_IFAN | - | x / - | x | - | - | - |
| USE_BUZZER | - | x / x | x | x | - | - |
| USE_ARILUX_RF | - | x / - | x | - | - | - |
| USE_SHUTTER | - | x / x | x | - | - | - |
| USE_DEEPSLEEP | - | x / x | - | x | - | - |
| USE_EXS_DIMMER | - | x / - | x | - | - | - |
| USE_DEVICE_GROUPS | - | x / x | - | - | - | - |
| USE_PWM_DIMMER | - | x / - | x | - | - | - |
| USE_KEELOQ | - | - / - | - | - | - | - |
| USE_SONOFF_D1 | - | x / - | x | - | - | - |
| USE_SHELLY_DIMMER | - | x / - | - | - | - | - |
| USE_AC_ZERO_CROSS_DIMMER | - | x / x | x | x | x | x |
| | | | | | | |
| **Feature or Sensor** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| USE_LIGHT | x | x / x | x | x | x | x |
| USE_WS2812 | - | x / x | x | x | - | x |
| USE_WS2812_DMA | - | - / - | - | - | - | - |
| USE_MY92X1 | - | x / - | x | x | - | x |
| USE_SM16716 | - | x / - | x | x | - | x |
| USE_SM2135 | - | x / - | x | x | - | x |
| USE_SM2335 | - | x / - | x | x | - | x |
| USE_BP5758D | - | x / - | x | x | - | x |
| USE_BP1658CJ | - | x / - | x | x | - | x |
| USE_SONOFF_L1 | - | x / - | x | x | - | x |
| USE_ELECTRIQ_MOODL | - | x / - | x | x | - | x |
| | | | | | | |
| USE_ENERGY_SENSOR | - | x / x | x | x | - | - |
| USE_ENERGY_DUMMY | - | x / x | x | x | - | - |
| USE_PZEM004T | - | x / x | x | x | - | - |
| USE_PZEM_AC | - | x / x | x | x | - | - |
| USE_PZEM_DC | - | x / x | x | x | - | - |
| USE_MCP39F501 | - | x / - | x | x | - | - |
| USE_SDM72 | - | - / x | - | x | - | - |
| USE_SDM120 | - | - / x | - | x | - | - |
| USE_SDM230 | - | - / x | - | - | - | - |
| USE_SDM630 | - | - / x | - | x | - | - |
| USE_DDS2382 | - | - / x | - | x | - | - |
| USE_DDSU666 | - | - / x | - | x | - | - |
| USE_SOLAX_X1 | - | - / - | - | - | - | - |
| USE_LE01MR | - | - / - | - | - | - | - |
| USE_BL09XX | - | x / x | x | x | - | - |
| USE_TELEINFO | - | - / - | - | - | - | - |
| USE_IEM3000 | - | - / - | - | - | - | - |
| USE_WE517 | - | - / x | - | - | - | - |
| USE_MODBUS_ENERGY | - | - / x | - | - | - | - |
| | | | | | | |
| USE_ADC_VCC | x | - / - | - | - | x | - |
| USE_COUNTER | - | x / x | x | x | - | x |
| USE_DS18x20 | - | x / x | x | x | - | x |
| USE_DHT | - | x / x | x | x | - | x |
| USE_MAX31855 | - | - / x | - | x | - | - |
| USE_MAX31865 | - | - / - | - | - | - | - |
| USE_THERMOSTAT | - | - / - | - | - | - | - |
| USE_LMT01 | - | - / x | - | x | - | - |
| | | | | | | |
| **Feature or Sensor** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| USE_I2C | - | x / x | x | x | - | x |
| USE_RTC_CHIPS | - | - / x | - | - | - | - |
| -USE_BM8563 | - | - / x | - | - | - | - |
| -USE_DS3231 | - | - / - | - | - | - | - |
| -USE_PCF85063 | - | - / - | - | - | - | - |
| -USE_PCF85363 | - | - / - | - | - | - | - |
| -USE_RX8010 | - | - / - | - | - | - | - |
| USE_SHT | - | - / x | - | x | - | - |
| USE_HTU | - | - / x | - | x | - | - |
| USE_BMP | - | - / x | - | x | - | - |
| -USE_BME68X | - | - / x | - | x | - | - |
| USE_AMSX915 | - | - / - | - | - | - | - |
| USE_SPL06_007 | - | - / - | - | - | - | - |
| USE_QMP6988 | - | - / - | - | - | - | - |
| USE_BH1750 | - | - / x | - | x | - | - |
| USE_VEML6070 | - | - / x | - | x | - | - |
| USE_ADS1115 | - | - / x | - | x | - | - |
| USE_INA219 | - | - / x | - | x | - | - |
| USE_INA226 | - | - / - | - | - | - | - |
| USE_INA3221 | - | - / - | - | - | - | - |
| USE_SHT3X | - | - / x | - | x | - | - |
| USE_TSL2561 | - | - / - | - | - | - | - |
| USE_TSL2591 | - | - / - | - | - | - | - |
| USE_MGS | - | - / x | - | x | - | - |
| USE_SGP30 | - | - / x | - | x | - | - |
| USE_SGP40 | - | - / x | - | x | - | - |
| USE_SGP4X | - | - / x | - | - | - | - |
| USE_SEN5X | - | - / x | - | x | - | - |
| USE_SI1145 | - | - / - | - | - | - | - |
| USE_LM75AD | - | - / x | - | x | - | - |
| USE_APDS9960 | - | - / - | - | - | - | - |
| USE_MCP230xx | - | - / - | - | - | - | - |
| USE_MCP23XXX_DRV | - | - / - | - | - | - | - |
| USE_PCA9632 | - | - / - | - | - | - | - |
| USE_PCA9685 | - | - / - | - | - | - | - |
| USE_PCA9685_V2 | - | - / - | - | - | - | - |
| USE_MPR121 | - | - / - | - | - | - | - |
| USE_CCS811 | - | - / - | - | x | - | - |
| USE_CCS811_V2 | - | - / x | - | - | - | - |
| USE_ENS16x | - | - / - | - | - | - | - |
| USE_ENS210 | - | - / - | - | - | - | - |
| USE_MPU6050 | - | - / - | - | - | - | - |
| USE_MGC3130 | - | - / - | - | - | - | - |
| USE_MAX44009 | - | - / - | - | - | - | - |
| USE_SCD30 | - | - / x | - | x | - | - |
| USE_SCD40 | - | - / x | - | - | - | - |
| USE_SPS30 | - | - / - | - | - | - | - |
| USE_ADE7880 | - | - / - | - | - | - | - |
| USE_ADE7953 | - | x / x | x | x | - | x |
| USE_VL53L0X | - | - / x | - | x | - | - |
| USE_VL53L1X | - | - / - | - | - | - | - |
| USE_MLX90614 | - | - / - | - | - | - | - |
| USE_CHIRP | - | - / - | - | - | - | - |
| USE_PAJ7620 | - | - / - | - | - | - | - |
| USE_PCF8574 | - | - / - | - | - | - | - |
| USE_PMSA003I | - | - / - | - | - | - | - |
| USE_LOX_O2 | - | - / x | - | x | - | - |
| USE_GDK101 | - | - / - | - | - | - | - |
| USE_TC74 | - | - / - | - | - | - | - |
| USE_PCA9557 | - | - / - | - | - | - | - |
| | | | | | | |
| **Feature or Sensor** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| USE_HIH6 | - | - / x | - | x | - | - |
| USE_DHT12 | - | - / x | - | x | - | - |
| USE_DS1624 | - | - / x | - | x | - | - |
| USE_AHT1x | - | - / - | - | - | - | - |
| USE_HDC1080 | - | - / - | - | - | - | - |
| USE_WEMOS_MOTOR_V1 | - | - / x | - | x | - | - |
| USE_IAQ | - | - / x | - | x | - | - |
| USE_AS3935 | - | - / x | - | x | - | - |
| USE_VEML6075 | - | - / - | - | - | - | - |
| USE_VEML7700 | - | - / - | - | - | - | - |
| USE_MCP9808 | - | - / - | - | - | - | - |
| USE_MLX90640 | - | - / - | - | - | - | - |
| USE_HP303B | - | - / - | - | - | - | - |
| USE_EZOCO2 | - | - / - | - | - | - | - |
| USE_EZODO | - | - / - | - | - | - | - |
| USE_EZOEC | - | - / - | - | - | - | - |
| USE_EZOFLO | - | - / - | - | - | - | - |
| USE_EZOHUM | - | - / - | - | - | - | - |
| USE_EZOO2 | - | - / - | - | - | - | - |
| USE_EZOORP | - | - / - | - | - | - | - |
| USE_EZOPH | - | - / - | - | - | - | - |
| USE_EZOPMP | - | - / - | - | - | - | - |
| USE_EZOPRS | - | - / - | - | - | - | - |
| USE_EZORGB | - | - / - | - | - | - | - |
| USE_EZORTD | - | - / - | - | - | - | - |
| USE_SEESAW_SOIL | - | - / - | - | - | - | - |
| USE_TOF10120 | - | - / - | - | - | - | - |
| USE_AM2320 | - | - / - | - | - | - | - |
| USE_T67XX | - | - / - | - | - | - | - |
| USE_HM330X | - | - / - | - | - | - | - |
| USE_HDC2010 | - | - / - | - | - | - | - |
| USE_DS3502 | - | - / - | - | - | - | - |
| USE_HYT | - | - / - | - | - | - | - |
| USE_LUXV30B | - | - / - | - | - | - | - |
| USE_HMC5883L | - | - / - | - | - | - | - |
| USE_QMC5883L | - | - / - | - | - | - | - |
| USE_MAX17043 | - | - / - | - | - | - | - |
| | | | | | | |
| **Feature or Sensor** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| USE_SPI | - | - / x | - | - | - | x |
| USE_RC522 | - | - / - | - | - | - | - |
| USE_CANSNIFFER | - | - / - | - | - | - | - |
| USE_SPI_LORA | - | - / x | - | - | - | - |
| USE_MHZ19 | - | - / x | - | x | - | - |
| USE_SENSEAIR | - | - / x | - | x | - | - |
| USE_PMS5003 | - | - / x | - | x | - | - |
| USE_NOVA_SDS | - | - / x | - | x | - | - |
| USE_HPMA | - | - / x | - | x | - | - |
| USE_SERIAL_BRIDGE | - | x / x | x | x | - | x |
| USE_MODBUS_BRIDGE | - | - / x | - | - | - | - |
| USE_MP3_PLAYER | - | - / x | - | x | - | - |
| USE_AZ7798 | - | - / - | - | - | - | - |
| USE_PN532_HSU | - | - / x | - | x | - | - |
| USE_RDM6300 | - | - / x | - | x | - | - |
| USE_IBEACON | - | - / x | - | x | - | - |
| USE_GPS | - | - / - | - | - | - | - |
| USE_HM10 | - | - / - | - | x | - | - |
| USE_HRXL | - | - / x | - | x | - | - |
| USE_TASMOTA_CLIENT | - | - / - | - | - | - | - |
| USE_OPENTHERM | - | - / - | - | - | - | - |
| USE_MIEL_HVAC | - | - / - | - | - | - | - |
| USE_PROJECTOR_CTRL | - | - / - | - | - | - | - |
| USE_AS608 | - | - / - | - | - | - | - |
| USE_LD2402 | - | - / - | - | - | - | - |
| USE_LD2410 | - | - / - | - | - | - | - |
| USE_LD2410S | - | - / - | - | - | - | - |
| USE_GM861 | - | - / - | - | - | - | - |
| USE_TCP_BRIDGE | - | - / - | - | - | - | - | zbbridge / zbbrdgpro |
| USE_HC8 | - | - / - | - | - | - | - |
| USE_PIPSOLAR | - | - / - | - | - | - | - |
| USE_WOOLIIS | - | - / - | - | - | - | - |
| USE_C8_CO2_5K | - | - / - | - | - | - | - |
| | | | | | | |
| USE_NRF24 | - | - / - | - | - | - | - |
| USE_MIBLE | - | - / - | - | - | - | - |
| USE_ZIGBEE | - | - / - | - | - | - | - |
| USE_ZIGBEE_ZNP | - | - / - | - | - | - | - |
| USE_ZIGBEE_EZSP | - | - / - | - | - | - | - | Sonoff ZbBridge |
| | | | | | | |
| USE_IR_REMOTE | - | x / - | x | x | x | x |
| USE_IR_RECEIVE | - | x / - | x | x | x | x |
| USE_IR_REMOTE_FULL | - | - / - | - | - | x | - | Enable ALL protocols |
| | | | | | | |
| USE_WIZMOTE | - | - / - | - | - | - | - |
| | | | | | | |
| USE_SR04 | - | - / - | - | x | - | - |
| USE_ME007 | - | - / - | - | - | - | - |
| USE_DYP | - | - / - | - | - | - | - |
| USE_TM1638 | - | - / x | - | x | - | - |
| USE_HX711 | - | - / x | - | x | - | - |
| -USE_HX711_M5SCALES | - | - / - | - | - | - | - |
| USE_TX2x_WIND_SENSOR | - | - / - | - | - | - | - |
| USE_WINDMETER | - | - / - | - | - | - | - |
| USE_RC_SWITCH | - | - / x | - | x | - | - |
| USE_RF_SENSOR | - | - / x | - | x | - | - | AlectoV2 only |
| USE_HRE | - | - / x | - | x | - | - |
| USE_A4988_STEPPER | - | - / - | - | - | - | - |
| USE_NEOPOOL | - | - / - | - | - | - | - |
| USE_FLOWRATEMETER | - | - / - | - | - | - | - |
| | | | | | | |
| **Feature or Sensor** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| USE_DISPLAY | - | - / - | - | - | - | x |
| USE_DISPLAY_LCD | - | - / - | - | - | - | x |
| USE_DISPLAY_MATRIX | - | - / - | - | - | - | x |
| USE_DISPLAY_EPAPER_29 | - | - / - | - | - | - | x |
| USE_DISPLAY_EPAPER_42 | - | - / - | - | - | - | x |
| USE_DISPLAY_RA8876 | - | - / - | - | - | - | x |
| USE_DISPLAY_TM1637 | - | - / - | - | - | - | x |
| USE_DISPLAY_TM1621_SONOFF | - | - / x | - | - | - | - |
| USE_DISPLAY_TM1650 | - | - / - | - | - | - | - |
| | | | | | | |
| USE_FT5206 | - | - / - | - | - | - | - |
| USE_FTC532 | - | - / - | - | - | - | - |
| USE_BS814A2 | - | - / - | - | - | - | - |
| | | | | | | |
| **ESP32 Feature** | **l** | **t** | **k** | **s** | **i** | **d** | **Remarks** |
| USE_HALLEFFECT | | / x | | | | |
| USE_MI_ESP32 | | / x | | | | | See SetOption115 |
| USE_IBEACON_ESP32 | | / - | | | | |
| USE_WEBCAM | | / - | | | | |
| USE_ETHERNET | | / x | | | | |
| USE_I2S_AUDIO | | / - | | | | |
| USE_SONOFF_SPM | | / x | | | | |
| USE_DISPLAY_TM1621_SONOFF | | / x | | | | |
| USE_SHELLY_PRO | | / x | | | | |
| USE_ESP32_TWAI | | / x | | | | |
| USE_DALI | | / x | | | | |
| USE_DINGTIAN_RELAY | | / - | | | | |
| USE_MATTER_DEVICE | | / x | | | | | See SetOption151 |
| Feature or Sensor | l | t | k | s | i | d | Remarks
|-----------------------|---|-------|---|---|---|---|--------
| MY_LANGUAGE en_GB | x | x / x | x | x | x | x |
| USE_IMPROV | x | x / x | x | x | x | x |
| USE_UFILESYS | - | - / x | - | - | - | - |
| USE_ARDUINO_OTA | - | - / - | - | - | - | - |
| USE_DOMOTICZ | - | x / x | x | x | x | - |
| USE_HOME_ASSISTANT | - | - / - | - | - | - | - |
| USE_TASMOTA_DISCOVERY | x | x / x | x | x | x | x |
| USE_MQTT_TLS* | - | - / x | - | - | - | - |
| USE_MQTT_AWS_IOT | - | - / - | - | - | - | - |
| USE_4K_RSA | - | - / - | - | - | - | - |
| USE_TELEGRAM | - | - / - | - | - | - | - |
| USE_KNX | - | - / x | x | - | - | - |
| USE_WEBSERVER | x | x / x | x | x | x | x |
| USE_WEBSEND_RESPONSE | - | - / - | - | - | - | - |
| USE_EMULATION_HUE | x | x / x | - | x | - | - |
| USE_EMULATION_WEMO | x | x / x | - | x | - | - |
| USE_DISCOVERY | - | - / - | - | - | - | - |
| WEBSERVER_ADVERTISE | - | x / - | x | - | - | x |
| MQTT_HOST_DISCOVERY | - | - / - | - | - | - | - |
| USE_TIMERS | x | x / x | x | x | x | x |
| USE_TIMERS_WEB | x | x / x | x | x | x | x |
| USE_SUNRISE | x | x / x | x | x | x | x |
| USE_RULES | x | x / x | x | x | x | x |
| USE_SCRIPT | - | - / - | - | - | - | - |
| USE_EXPRESSION | - | - / - | - | - | - | - |
| SUPPORT_IF_STATEMENT | - | - / - | - | - | - | - |
| USE_HOTPLUG | - | - / - | - | - | - | - |
| USE_PROMETHEUS | - | - / - | - | - | - | - |
| USE_PING | - | - / - | - | - | - | - |
| | | | | | | |
| Feature or Sensor | l | t | k | s | i | d | Remarks
| ROTARY_V1 | - | x / x | - | x | - | - |
| USE_SONOFF_RF | - | x / - | x | x | - | - |
| USE_RF_FLASH | - | x / - | x | x | - | - |
| USE_SONOFF_SC | - | x / - | x | x | - | - |
| USE_TUYA_MCU | x | x / - | x | x | - | x |
| USE_ARMTRONIX_DIMMERS | - | x / - | x | - | - | - |
| USE_PS_16_DZ | - | x / - | x | - | - | - |
| USE_SONOFF_IFAN | - | x / - | x | - | - | - |
| USE_BUZZER | - | x / x | x | x | - | - |
| USE_ARILUX_RF | - | x / - | x | - | - | - |
| USE_SHUTTER | - | x / x | x | - | - | - |
| USE_DEEPSLEEP | - | x / x | - | x | - | - |
| USE_EXS_DIMMER | - | x / - | x | - | - | - |
| USE_DEVICE_GROUPS | - | x / x | - | - | - | - |
| USE_PWM_DIMMER | - | x / - | x | - | - | - |
| USE_KEELOQ | - | - / - | - | - | - | - |
| USE_SONOFF_D1 | - | x / - | x | - | - | - |
| USE_SHELLY_DIMMER | - | x / - | - | - | - | - |
| USE_AC_ZERO_CROSS_DIMMER | - | x / x | x | x | x | x |
| | | | | | | |
| Feature or Sensor | l | t | k | s | i | d | Remarks
| USE_LIGHT | x | x / x | x | x | x | x |
| USE_WS2812 | - | x / x | x | x | - | x |
| USE_WS2812_DMA | - | - / - | - | - | - | - |
| USE_MY92X1 | - | x / - | x | x | - | x |
| USE_SM16716 | - | x / - | x | x | - | x |
| USE_SM2135 | - | x / - | x | x | - | x |
| USE_SM2335 | - | x / - | x | x | - | x |
| USE_BP5758D | - | x / - | x | x | - | x |
| USE_SONOFF_L1 | - | x / - | x | x | - | x |
| USE_ELECTRIQ_MOODL | - | x / - | x | x | - | x |
| | | | | | | |
| USE_ENERGY_SENSOR | x | x / x | x | x | - | - |
| USE_ENERGY_DUMMY | x | x / x | x | x | - | - |
| USE_PZEM004T | - | x / x | x | x | - | - |
| USE_PZEM_AC | - | x / x | x | x | - | - |
| USE_PZEM_DC | - | x / x | x | x | - | - |
| USE_MCP39F501 | x | x / - | x | x | - | - |
| USE_SDM72 | - | - / x | - | x | - | - |
| USE_SDM120 | - | - / x | - | x | - | - |
| USE_SDM230 | - | - / x | - | - | - | - |
| USE_SDM630 | - | - / x | - | x | - | - |
| USE_DDS2382 | - | - / x | - | x | - | - |
| USE_DDSU666 | - | - / x | - | x | - | - |
| USE_SOLAX_X1 | - | - / - | - | - | - | - |
| USE_LE01MR | - | - / - | - | - | - | - |
| USE_BL09XX | x | x / x | x | x | - | - |
| USE_TELEINFO | - | - / - | - | - | - | - |
| USE_IEM3000 | - | - / - | - | - | - | - |
| USE_WE517 | - | - / - | - | - | - | - |
| | | | | | | |
| USE_ADC_VCC | x | - / - | - | - | x | - |
| USE_COUNTER | - | x / x | x | x | - | x |
| USE_DS18x20 | - | x / x | x | x | - | x |
| USE_DHT | - | x / x | x | x | - | x |
| USE_MAX31855 | - | - / x | - | x | - | - |
| USE_MAX31865 | - | - / - | - | - | - | - |
| USE_THERMOSTAT | - | - / - | - | - | - | - |
| USE_LMT01 | - | - / x | - | x | - | - |
| | | | | | | |
| Feature or Sensor | l | t | k | s | i | d | Remarks
| USE_I2C | - | x / x | x | x | - | x |
| USE_SHT | - | - / x | - | x | - | - |
| USE_HTU | - | - / x | - | x | - | - |
| USE_BMP | - | - / x | - | x | - | - |
| USE_BME68X | - | - / x | - | x | - | - |
| USE_BH1750 | - | - / x | - | x | - | - |
| USE_VEML6070 | - | - / x | - | x | - | - |
| USE_ADS1115 | - | - / x | - | x | - | - |
| USE_INA219 | - | - / x | - | x | - | - |
| USE_INA226 | - | - / - | - | - | - | - |
| USE_SHT3X | - | - / x | - | x | - | - |
| USE_TSL2561 | - | - / - | - | - | - | - |
| USE_TSL2591 | - | - / - | - | - | - | - |
| USE_MGS | - | - / x | - | x | - | - |
| USE_SGP30 | - | - / x | - | x | - | - |
| USE_SI1145 | - | - / - | - | - | - | - |
| USE_LM75AD | - | - / x | - | x | - | - |
| USE_APDS9960 | - | - / - | - | - | - | - |
| USE_MCP230xx | - | - / - | - | - | - | - |
| USE_PCA9685 | - | - / - | - | - | - | - |
| USE_MPR121 | - | - / - | - | - | - | - |
| USE_CCS811 | - | - / - | - | x | - | - |
| USE_CCS811_V2 | - | - / x | - | - | - | - |
| USE_MPU6050 | - | - / - | - | - | - | - |
| USE_DS3231 | - | - / - | - | - | - | - |
| USE_MGC3130 | - | - / - | - | - | - | - |
| USE_MAX44009 | - | - / - | - | - | - | - |
| USE_SCD30 | - | - / x | - | x | - | - |
| USE_SCD40 | - | - / x | - | - | - | - |
| USE_SPS30 | - | - / - | - | - | - | - |
| USE_ADE7880 | - | - / - | - | - | - | - |
| USE_ADE7953 | - | x / x | x | x | - | x |
| USE_VL53L0X | - | - / x | - | x | - | - |
| USE_VL53L1X | - | - / - | - | - | - | - |
| USE_MLX90614 | - | - / - | - | - | - | - |
| USE_CHIRP | - | - / - | - | - | - | - |
| USE_PAJ7620 | - | - / - | - | - | - | - |
| USE_PCF8574 | - | - / - | - | - | - | - |
| | | | | | | |
| Feature or Sensor | l | t | k | s | i | d | Remarks
| USE_HIH6 | - | - / x | - | x | - | - |
| USE_DHT12 | - | - / x | - | x | - | - |
| USE_DS1624 | - | - / x | - | x | - | - |
| USE_AHT1x | - | - / - | - | - | - | - |
| USE_HDC1080 | - | - / - | - | - | - | - |
| USE_WEMOS_MOTOR_V1 | - | - / x | - | x | - | - |
| USE_IAQ | - | - / x | - | x | - | - |
| USE_AS3935 | - | - / x | - | x | - | - |
| USE_VEML6075 | - | - / - | - | - | - | - |
| USE_VEML7700 | - | - / - | - | - | - | - |
| USE_MCP9808 | - | - / - | - | - | - | - |
| USE_HP303B | - | - / - | - | - | - | - |
| USE_EZOCO2 | - | - / - | - | - | - | - |
| USE_EZODO | - | - / - | - | - | - | - |
| USE_EZOEC | - | - / - | - | - | - | - |
| USE_EZOFLO | - | - / - | - | - | - | - |
| USE_EZOHUM | - | - / - | - | - | - | - |
| USE_EZOO2 | - | - / - | - | - | - | - |
| USE_EZOORP | - | - / - | - | - | - | - |
| USE_EZOPH | - | - / - | - | - | - | - |
| USE_EZOPMP | - | - / - | - | - | - | - |
| USE_EZOPRS | - | - / - | - | - | - | - |
| USE_EZORGB | - | - / - | - | - | - | - |
| USE_EZORTD | - | - / - | - | - | - | - |
| USE_SEESAW_SOIL | - | - / - | - | - | - | - |
| USE_TOF10120 | - | - / - | - | - | - | - |
| USE_BM8563 | - | - / - | - | - | - | - |
| USE_AM2320 | - | - / - | - | - | - | - |
| USE_T67XX | - | - / - | - | - | - | - |
| USE_HM330X | - | - / - | - | - | - | - |
| USE_HDC2010 | - | - / - | - | - | - | - |
| USE_PCF85363 | - | - / - | - | - | - | - |
| USE_DS3502 | - | - / - | - | - | - | - |
| USE_HYT | - | - / - | - | - | - | - |
| | | | | | | |
| Feature or Sensor | l | t | k | s | i | d | Remarks
| USE_SPI | - | - / - | - | - | - | x |
| USE_RC522 | - | - / - | - | - | - | - |
| USE_MHZ19 | - | - / x | - | x | - | - |
| USE_SENSEAIR | - | - / x | - | x | - | - |
| USE_PMS5003 | - | - / x | - | x | - | - |
| USE_NOVA_SDS | - | - / x | - | x | - | - |
| USE_HPMA | - | - / x | - | x | - | - |
| USE_SERIAL_BRIDGE | - | x / x | x | x | - | x |
| USE_MODBUS_BRIDGE | - | - / x | - | - | - | - |
| USE_MP3_PLAYER | - | - / x | - | x | - | - |
| USE_AZ7798 | - | - / - | - | - | - | - |
| USE_PN532_HSU | - | - / x | - | x | - | - |
| USE_RDM6300 | - | - / x | - | x | - | - |
| USE_IBEACON | - | - / x | - | x | - | - |
| USE_GPS | - | - / - | - | - | - | - |
| USE_HM10 | - | - / - | - | x | - | - |
| USE_HRXL | - | - / x | - | x | - | - |
| USE_TASMOTA_CLIENT | - | - / - | - | - | - | - |
| USE_OPENTHERM | - | - / - | - | - | - | - |
| USE_MIEL_HVAC | - | - / - | - | - | - | - |
| USE_PROJECTOR_CTRL | - | - / - | - | - | - | - |
| USE_AS608 | - | - / - | - | - | - | - |
| USE_TCP_BRIDGE | - | - / - | - | - | - | - | zbbridge
| | | | | | | |
| USE_NRF24 | - | - / - | - | - | - | - |
| USE_MIBLE | - | - / - | - | - | - | - |
| USE_ZIGBEE | - | - / - | - | - | - | - |
| USE_ZIGBEE_ZNP | - | - / - | - | - | - | - |
| USE_ZIGBEE_EZSP | - | - / - | - | - | - | - | Sonoff ZbBridge
| | | | | | | |
| USE_IR_REMOTE | - | x / - | x | x | x | x |
| USE_IR_RECEIVE | - | x / - | x | x | x | x |
| USE_IR_REMOTE_FULL | - | - / - | - | - | x | - | Enable ALL protocols
| | | | | | | |
| USE_SR04 | - | - / - | - | x | - | - |
| USE_DYP | - | - / - | - | - | - | - |
| USE_TM1638 | - | - / x | - | x | - | - |
| USE_HX711 | - | - / x | - | x | - | - |
| USE_TX2x_WIND_SENSOR | - | - / - | - | - | - | - |
| USE_WINDMETER | - | - / - | - | - | - | - |
| USE_RC_SWITCH | - | - / x | - | x | - | - |
| USE_RF_SENSOR | - | - / x | - | x | - | - | AlectoV2 only
| USE_HRE | - | - / x | - | x | - | - |
| USE_A4988_STEPPER | - | - / - | - | - | - | - |
| USE_NEOPOOL | - | - / - | - | - | - | - |
| USE_FLOWRATEMETER | - | - / - | - | - | - | - |
| | | | | | | |
| Feature or Sensor | l | t | k | s | i | d | Remarks
| USE_DISPLAY | - | - / - | - | - | - | x |
| USE_DISPLAY_LCD | - | - / - | - | - | - | x |
| USE_DISPLAY_SSD1306 | - | - / - | - | - | - | x |
| USE_DISPLAY_MATRIX | - | - / - | - | - | - | x |
| USE_DISPLAY_SH1106 | - | - / - | - | - | - | x |
| USE_DISPLAY_ILI9341 | - | - / - | - | - | - | x |
| USE_DISPLAY_EPAPER_29 | - | - / - | - | - | - | x |
| USE_DISPLAY_EPAPER_42 | - | - / - | - | - | - | x |
| USE_DISPLAY_SSD1351 | - | - / - | - | - | - | x |
| USE_DISPLAY_RA8876 | - | - / - | - | - | - | x |
| USE_DISPLAY_ST7789 | - | - / - | - | - | - | x |
| USE_DISPLAY_TM1637 | - | - / - | - | - | - | x |
| USE_DISPLAY_TM1621_SONOFF | - | - / x | - | - | - | - |
| | | | | | | |
| USE_FT5206 | - | - / - | - | - | - | - |
| USE_FTC532 | - | - / - | - | - | - | - |
| USE_BS814A2 | - | - / - | - | - | - | - |
| | | | | | | |
| ESP32 Feature | l | t | k | s | i | d | Remarks
| USE_HALLEFFECT | | / x | | | | |
| USE_MI_ESP32 | | / x | | | | | See SetOption115
| USE_IBEACON_ESP32 | | / - | | | | |
| USE_WEBCAM | | / - | | | | |
| USE_ETHERNET | | / x | | | | |
| USE_I2S_AUDIO | | / - | | | | |
| USE_TTGO_WATCH | | / - | | | | |
| USE_SONOFF_SPM | | / x | | | | |
The following specific display drivers are replaced with uDisplay, see [uDisplay/uTouch documentation](https://tasmota.github.io/docs/Universal-Display-Driver/#migrating-to-udisplay): `USE_DISPLAY_ILI9341`, `USE_DISPLAY_SSD1306`, `USE_DISPLAY_SH1106`, `USE_DISPLAY_SSD1351`, `USE_DISPLAY_ST7789`
* USE_MQTT_TLS is enabled by default in every ESP32 variants
- USE_MQTT_TLS is enabled by default in every ESP32 variants

File diff suppressed because it is too large Load Diff

8
CMakeLists.txt Normal file
View File

@ -0,0 +1,8 @@
cmake_minimum_required(VERSION 3.16.0)
include($ENV{IDF_PATH}/tools/cmake/project.cmake)
project(tasmota)
if(CONFIG_IDF_TARGET_ESP32C2)
include(relinker)
endif()

View File

@ -1,97 +1,251 @@
<img src="/tools/logo/TASMOTA_FullLogo_Vector.svg" alt="Logo" align="right" height="76"/>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./tools/logo/TASMOTA_FullLogo_Vector_White.svg">
<img alt="Logo" src="./tools/logo/TASMOTA_FullLogo_Vector.svg" align="right" height="76">
</picture>
# Code Owners
In addition to @arendst the following code is mainly owned by:
| Code | Owner
|----------------------------|---------------------------
| Tasmota Drivers |
| |
| xdrv_01_webserver | @arendst
| xdrv_02_mqtt | @arendst
| xdrv_03_energy | @arendst
| xdrv_04_light | @s-hadinger
| xdrv_05_irremote | @s-hadinger
| xdrv_06_snfbridge | @arendst
| xdrv_07_domoticz | @arendst
| xdrv_08_serial_bridge | Dániel Zoltán Tolnai
| xdrv_09_timers | @arendst
| xdrv_10_rules | @arendst, @barbudor
| xdrv_10_scripter | @gemu
| xdrv_11_knx | @adrian
| xdrv_12_discovery | @arendst, @effelle, @emontnemery
| xdrv_13_display | @gemu, @s-hadinger
| xdrv_14_mp3 | @gemu, @mike2nl
| xdrv_15_pca9685 | Andre Thomas
| xdrv_16_tuyamcu | @btsimonh
| xdrv_17_rcswitch |
| xdrv_18_armtronix_dimmers | @wvdv2002
| xdrv_19_pz16dz_dimmer | Joel Stein
| xdrv_20_hue | @s-hadinger
| xdrv_21_wemo | @s-hadinger
| xdrv_22_sonoff_ifan | @arendst
| xdrv_23_zigbee | @s-hadinger
| xdrv_24_buzzer | @arendst
| xdrv_25_stepper | Tim Leuscher
| xdrv_26_ariluxrf | @arendst
| xdrv_27_shutter | @stefanbode
| xdrv_28_pcf8574 | @stefanbode
| xdrv_29_deepsleep | @stefanbode
| xdrv_30_exs_dimmer | Andreas Schultz
| xdrv_31_tasmota_client | Andre Thomas
| xdrv_32_hotplug | @BASM
| xdrv_33_nrf24l01 | @staars
| xdrv_34_wemos_motor | Peter Franck
| xdrv_35_pwm_dimmer | Paul C Diem
| xdrv_36_keeloq | he-so
| xdrv_37_sonoff_d1 | @arendst
| xdrv_38_ping | @s-hadinger
| xdrv_39_thermostat | Javier Argita
| xdrv_40_telegram | @arendst
| xdrv_41_tcp_bridge | @s-hadinger
| xdrv_42_i2s_audio | @gemu
| xdrv_43_mlx90640 | @staars
| xdrv_44_miel_hvac | David GWynne
| xdrv_45_shelly_dimmer | James Turton
| xdrv_46_ccloader | @staars
| xdrv_47_ftc532 | Peter Franck
| xdrv_48_timeprop | Colin Law, Thomas Herrmann
| xdrv_49_pid | Colin Law, Thomas Herrmann
| xdrv_50_filesystem | @gemu, @barbudor
| xdrv_51_bs814a2 | Peter Franck
| xdrv_52_berry | @s-hadinger, @staars (ULP)
| xdrv_53_projector_ctrl | Jan Bubík
| xdrv_54_lvgl | @s-hadinger
| xdrv_55_touch | @gemu, @s-hadinger
| xdrv_56_rtc_chips | @arendst, @s-hadinger
| xdrv_57_tasmesh | @staars
| xdrv_58_range_extender | @sillyfrog
| xdrv_59_influxdb | @arendst
| xdrv_60_shift595 | Jacek Ziółkowski
| xdrv_61_ds3502 | f-reiling
| xdrv_62_improv | @arendst
| xdrv_79_esp32_ble | @staars, @btsimonh
| xdrv_81_esp32_webcam | @gemu, @philrich
| xdrv_82_esp32_ethernet | @arendst
| xdrv_83_esp32_watch | @gemu
| xdrv_85_esp32_ble_eq3_trv | @btsimonh
| xdrv_86_esp32_sonoff_spm | @arendst
| |
| Tasmota Sensors |
| |
| xsns_01_counter | @arendst, @stefanbode
| xsns_78_ezo | Christopher Tremblay
| |
| Libraries |
| |
| berry | @s-hadinger
| ext-printf | @s-hadinger
| jsmn | @s-hadinger
| unishox | @s-hadinger
| |
| PlatformIO |
| |
| all | @Jason2866
| |
| Code | Owner
|------------------------------|---------------------------
| Tasmota Drivers |
| |
| xdrv_01_webserver | @arendst
| xdrv_02_mqtt | @arendst
| xdrv_03_energy | @arendst
| xdrv_04_light | @s-hadinger
| xdrv_05_irremote | @s-hadinger
| xdrv_06_snfbridge | @arendst
| xdrv_07_domoticz | @arendst
| xdrv_08_serial_bridge | Dániel Zoltán Tolnai
| xdrv_09_timers | @arendst
| xdrv_10_rules | @arendst, @barbudor
| xdrv_10_scripter | @gemu
| xdrv_11_knx | @adrian
| xdrv_12_discovery | @arendst, @effelle, @emontnemery
| xdrv_13_display | @gemu, @s-hadinger
| xdrv_14_mp3 | @gemu, @mike2nl
| xdrv_15_pca9685 | Andre Thomas
| xdrv_16_tuyamcu | @btsimonh
| xdrv_17_rcswitch |
| xdrv_18_armtronix_dimmers | @wvdv2002
| xdrv_19_pz16dz_dimmer | Joel Stein
| xdrv_20_hue | @s-hadinger
| xdrv_21_wemo | @s-hadinger
| xdrv_22_sonoff_ifan | @arendst
| xdrv_23_zigbee | @s-hadinger
| xdrv_24_buzzer | @arendst
| xdrv_25_stepper | Tim Leuscher
| xdrv_26_ariluxrf | @arendst
| xdrv_27_shutter | @stefanbode
| xdrv_28_pcf8574 | @stefanbode
| xdrv_29_deepsleep | @stefanbode
| xdrv_30_exs_dimmer | Andreas Schultz
| xdrv_31_tasmota_client | Andre Thomas
| xdrv_32_hotplug | @BASM
| xdrv_33_nrf24l01 | @staars
| xdrv_34_wemos_motor | Peter Franck
| xdrv_35_pwm_dimmer | Paul C Diem
| xdrv_36_keeloq | he-so
| xdrv_37_sonoff_d1 | @arendst
| xdrv_38_ping | @s-hadinger
| xdrv_39_thermostat | Javier Argita
| xdrv_40_telegram | @arendst
| xdrv_41_tcp_bridge | @s-hadinger
| xdrv_42_i2s_audio | @gemu
| xdrv_43_mlx90640 | @staars
| xdrv_44_miel_hvac | David GWynne
| xdrv_45_shelly_dimmer | James Turton
| xdrv_46_ccloader | @staars
| xdrv_47_ftc532 | Peter Franck
| xdrv_48_timeprop | Colin Law, Thomas Herrmann
| xdrv_49_pid | Colin Law, Thomas Herrmann
| xdrv_50_filesystem | @gemu, @barbudor
| xdrv_51_bs814a2 | Peter Franck
| xdrv_52_berry | @s-hadinger, @staars (ULP)
| xdrv_53_projector_ctrl | Jan Bubík
| xdrv_54_lvgl | @s-hadinger
| xdrv_55_touch | @gemu, @s-hadinger
| xdrv_56_rtc_chips | @arendst, @s-hadinger
| xdrv_57_tasmesh | @staars
| xdrv_58_range_extender | @sillyfrog
| xdrv_59_influxdb | @arendst
| xdrv_60_shift595 | Jacek Ziółkowski
| xdrv_61_ds3502 | f-reiling
| xdrv_62_improv | @arendst
| xdrv_63_modbus_bridge | @jeroenst
| xdrv_64_pca9632 | Pascal Heinrich
| xdrv_65_tuyamcubr | David Gwynne
| xdrv_66_tm1638 | @arendst
| xdrv_67_mcp23xxx | @arendst
| xdrv_68_zerocrossDimmer | @stefanbode
| xdrv_69_pca9557 | @cctweaker
| xdrv_70_1_hdmi_cec | @s-hadinger
| xdrv_71_magic_switch | @barbudor
| xdrv_72_pipsolar | @chefpro
| xdrv_73_lora | @arendst
| xdrv_74_lorawan | @arendst
| xdrv_75_dali | @eeak, @arendst
| xdrv_76_serial_i2c | @s-hadinger
| xdrv_77_wizmote | @arendst
| xdrv_78_telnet | @arendst
| xdrv_79_esp32_ble | @staars, @btsimonh
| xdrv_80 |
| xdrv_81_esp32_webcam | @gemu, @philrich
| xdrv_82_esp32_ethernet | @arendst
| xdrv_83_esp32_watch | @gemu
| xdrv_85_esp32_ble_eq3_trv | @btsimonh
| xdrv_86_esp32_sonoff_spm | @arendst
| xdrv_87_esp32_sonoff_tm1621 | @arendst
| xdrv_88_esp32_shelly_pro | @arendst
| xdrv_89_ |
| xdrv_90_esp32_dingtian_relay | @barbudor
| xdrv_91_ |
| xdrv_92_ |
| xdrv_93_ |
| xdrv_94_ |
| |
| xdrv_120_xyzmodem | @arendst
| xdrv_121_gpioviewer | @arendst
| xdrv_122_file_settings_demo | @arendst
| xdrv_122_file_json_settings_demo | @arendst
| xdrv_127_debug | @arendst
| |
| Tasmota Sensors |
| |
| xsns_01_counter | @arendst, @stefanbode
| xsns_02_analog | @arendst, @barbudor
| xsns_03_energy | @arendst
| xsns_04_snfsc | @arendst
| xsns_05_ds18x20 | @arendst
| xsns_06_dht | @arendst
| xsns_07_sht1x | @arendst
| xsns_08_htu | Heiko Krupp
| xsns_09_bmp | @arendst
| xsns_10_bh1750 | @arendst
| xsns_11_veml6070 | @mike2nl
| xsns_12_ads1115 | @syssi, @stefanbode
| xsns_13_ina219 | @stefanbode
| xsns_14_sht3x | Stefan Tibus
| xsns_15_mhz19 | @arendst
| xsns_16_tsl2561 | Joachim Banzhaf
| xsns_17_senseair | @arendst
| xsns_18_pms5003 | @arendst
| xsns_19_mgs | @palich2000
| xsns_20_novasds | Norbert Richter
| xsns_21_sgp30 | Gerhard Mutz
| xsns_22_sr04 | Nuno Ferreira, @arendst
| xsns_23_me007 | Mathias Buder
| xsns_24_si1145 |
| xsns_25_spl06-007_sensor | @rai68
| xsns_26_lm75ad | Andre Thomas
| xsns_27_apds9960 | Shawn Hymel
| xsns_28_qmp6988 | @arendst
| xsns_29_mcp230xx | Andre Thomas
| xsns_30_mpr121 | Rene 'Renne' Bartsch
| xsns_31_ccs811 | Gerhard Mutz
| xsns_32_mpu6050 | Oliver Welter
| xsns_33_qmc5883l | Helge Scheunemann
| xsns_34_hx711 | @arendst
| xsns_35_tx20 | Thomas Eckerstorfer, Norbert Richter
| xsns_36_mgc3130 | Christian Baars
| xsns_37_rfsensor | @arendst
| xsns_38_az7798 | @adebeun
| xsns_39_max31855 | Markus Past
| xsns_40_pn532 | Andre Thomas, @md5sum-as
| xsns_41_max44009 | @llagendijk
| xsns_42_scd30 | @frogmore42
| xsns_43_hre | Jon Little
| xsns_44_sps30 | Gerhard Mutz
| xsns_45_vl53l0x | Gerhard Mutz, Adrian Scillato
| xsns_46_mlx90614 | Gerhard Mutz
| xsns_47_max31865 | Alberto Lopez Siemens
| xsns_48_chirp | Christian Baars
| xsns_49 |
| xsns_50_paj7620 | Christian Baars
| xsns_51_rdm6300 | Gerhard Mutz
| xsns_52_esp32_ibeacon | Gerhard Mutz, @btsimonh
| xsns_52_ibeacon | Gerhard Mutz
| xsns_53_sml | Gerhard Mutz
| xsns_54_ina226 | Stephen Rodgers
| xsns_55_hih_series |
| xsns_56_hpma | David Hunt
| xsns_57_tsl2591 | Markus Bösling
| xsns_58_dht12 | Stefan Oskam
| xsns_59_ds1624 | Leonid Myravje
| xsns_60_gps | Christian Baars, Adrian Scillato
| xsns_61_mi_nrf24 | Christian Baars
| xsns_62_mi_hm10 | Christian Baars
| xsns_62_esp32_mi | Christian Baars
| xsns_63_aht1x | Martin Wagner
| xsns_64_hrxl | Jon Little
| xsns_65_hdc1080 | Luis Teixeira
| xsns_66_iaq | Christian Baars
| xsns_67_as3935 | Martin Wagner
| xsns_68_windmeter | Matteo Albinola
| xsns_69_opentherm | Yuriy Sannikov
| xsns_70_veml6075 | Martin Wagner
| xsns_71_veml7700 | Martin Wagner
| xsns_72_mcp9808 | Martin Wagner
| xsns_73_hp303b | @rjaakke
| xsns_74_lmt01 | @justifiably
| xsns_75_prometheus | @marius, @mhansen, @hansmi
| xsns_76_dyp | Janusz Kostorz
| xsns_77_vl53l1x | Rui Marinho, @Jason2866
| xsns_78_ezo | Christopher Tremblay
| xsns_79_as608 | @boaschti
| xsns_80_mfrc522 | @arendst
| xsns_81_seesaw_soil | Wayne Ross, Peter Franck
| xsns_82_wiegand | Sigurd Leuther
| xsns_83_neopool | Norbert Richter
| xsns_84_tof10120 | Cyril Pawelko
| xsns_85_mpu6886 | @s-hadinger
| xsns_86_tfminiplus | Raphael Breiting
| xsns_87_can_sniffer | @kwiatek6324, Marius Bezuidenhout
| xsns_87_mcp2515 | Marius Bezuidenhout
| xsns_88_am2320 | Lars Wessels
| xsns_89_t67xx | Alexander Savchenko
| xsns_90_hrg15 | Wouter Breukink
| xsns_91_vindriktning | Marcel Ritter
| xsns_92_scd40 | @frogmore42, @arnold-n
| xsns_93_hm330x | @barbudor
| xsns_94_hdc2010 | Luc Boudreau
| xsns_95_cm1107 | @maksim
| xsns_96_flowratemeter | Norbert Richter
| xsns_97_hyt | Thomas Schnittcher, Adjan Kretz
| xsns_98_sgp40 | Jean-Pierre Deschamps
| xsns_99_luxv30b | Marius Bezuidenhout
| xsns_100_ina3221 | @barbudor
| xsns_101_hmc5883l | Andreas Achtzehn
| xsns_102_ld2410 | @arendst
| xsns_103_sen5x | @tyeth
| xsns_104_pmsa003i | Jean-Pierre Deschamps
| xsns_105_lox_o2 | @ACE1046
| xsns_106_gdk101 | @Szewcson
| xsns_107_gm861 | @arendst
| xsns_108_tc74 | Michael Loftis
| xsns_109_sgp4x | Andrew Klaus
| xsns_110_max17043 | Vincent de Groot
| xsns_111_ens16x | Christoph Friese
| xsns_112_ens210 | Christoph Friese
| xsns_113_hc8 | Daniel Maier
| xsns_114_amsx915 | Bastian Urschel
| xsns_115_wooliis | Luca Melette
| xsns_117_c8_co2_5k | @jeroenvermeulen
| |
| xsns_127_esp32_sensors | @arendst
| |
| Libraries |
| |
| berry | @s-hadinger
| ext-printf | @s-hadinger
| jsmn | @s-hadinger
| unishox | @s-hadinger
| matter | @s-hadinger
| |
| PlatformIO |
| |
| all | @Jason2866
| |

View File

@ -1,4 +1,7 @@
<img src="/tools/logo/TASMOTA_FullLogo_Vector.svg" alt="Logo" align="right" height="76"/>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./tools/logo/TASMOTA_FullLogo_Vector_White.svg">
<img alt="Logo" src="./tools/logo/TASMOTA_FullLogo_Vector.svg" align="right" height="76">
</picture>
# Contributing
@ -96,7 +99,7 @@ To accept the CLA it is required to put a x between [ ] on `[ ] I accept the CLA
**Why a CLA ?**
_"A Contributor Licence Agreement (CLA) is strongly recommended when accepting third party contributions to an open development project, such as an open source software project. In order to redistribute contributions, it is necessary to ensure that the project has the necessary rights to do so. A Contributor Licence Agreement is a lightweight agreement, signed by the copyright holder, that grants the necessary rights for the contribution to be redistributed as part of the project."_ [OSS Watch](http://oss-watch.ac.uk/resources/cla)
_"A Contributor License Agreement (CLA) is strongly recommended when accepting third party contributions to an open development project, such as an open source software project. In order to redistribute contributions, it is necessary to ensure that the project has the necessary rights to do so. A Contributor License Agreement is a lightweight agreement, signed by the copyright holder, that grants the necessary rights for the contribution to be redistributed as part of the project."_ [OSS Watch](http://oss-watch.ac.uk/resources/cla)
A CLA is a legal document in which you state _you are entitled to contribute the code/documentation/translation to the project_ youre contributing to and that _you are willing to have it used in distributions and derivative works_. This means that should there be any kind of legal issue in the future as to the origins and ownership of any particular piece of code, then that project has the necessary forms on file from the contributor(s) saying they were permitted to make this contribution.

View File

@ -1,4 +1,4 @@
![Tasmota logo](https://github.com/arendst/Tasmota/blob/development/tools/logo/TASMOTA_FullLogo_Vector.svg)
![Tasmota logo](/tools/logo/TASMOTA_FullLogo_Vector.svg#gh-light-mode-only)![Tasmota logo](/tools/logo/TASMOTA_FullLogo_Vector_White.svg#gh-dark-mode-only)
Alternative firmware for [ESP8266](https://en.wikipedia.org/wiki/ESP8266) based devices with **easy configuration using webUI, OTA updates, automation using timers or rules, expandability and entirely local control over MQTT, HTTP, Serial or KNX**.
_Written for PlatformIO with limited support for Arduino IDE._
@ -14,11 +14,11 @@ If you like **Tasmota**, give it a star, or fork it and contribute!
[![GitHub forks](https://img.shields.io/github/forks/arendst/Tasmota.svg?style=social&label=Fork)](https://github.com/arendst/Tasmota/network)
[![donate](https://img.shields.io/badge/donate-PayPal-blue.svg)](https://paypal.me/tasmota)
See [CHANGELOG.md](https://github.com/arendst/Tasmota/blob/development/tasmota/CHANGELOG.md) for changes since last release.
See [CHANGELOG.md](https://github.com/arendst/Tasmota/blob/development/CHANGELOG.md) for changes since last release.
## Development
[![Dev Version](https://img.shields.io/badge/development%20version-v11.0.x.x-blue.svg)](https://github.com/arendst/Tasmota)
[![Dev Version](https://img.shields.io/badge/development%20version-v14.6.x.x-blue.svg)](https://github.com/arendst/Tasmota)
[![Download Dev](https://img.shields.io/badge/download-development-yellow.svg)](http://ota.tasmota.com/tasmota/)
[![Tasmota CI](https://github.com/arendst/Tasmota/workflows/Tasmota%20CI/badge.svg)](https://github.com/arendst/Tasmota/actions?query=workflow%3A%22Tasmota+CI%22)
[![Tasmota ESP32 CI](https://github.com/arendst/Tasmota/workflows/Tasmota%20ESP32%20CI/badge.svg)](https://github.com/arendst/Tasmota/actions?query=workflow%3A%22Tasmota+ESP32+CI%22)
@ -27,7 +27,7 @@ See [CHANGELOG.md](https://github.com/arendst/Tasmota/blob/development/tasmota/C
Unless your Tasmota powered device exhibits a problem or you need to make use of a feature that is not available in the Tasmota version currently installed on your device, leave your device alone - it works so don't make unnecessary changes! If the release version (i.e., the master branch) exhibits unexpected behaviour for your device and configuration, you should upgrade to the latest development version instead to see if your problem is resolved as some bugs in previous releases or development builds may already have been resolved.
If new commits have been merged and they compile successfuly, new binary files for every variant will be placed here https://github.com/arendst/Tasmota-firmware/tree/main/firmware (this URL address can NOT be used for OTA updates) It is important to note that these binaries are based on the current development codebase. These commits are tested as much as is possible and are typically quite stable. However, it is infeasible to test on the hundreds of different types of devices with all the available configuration options permitted.
If new commits have been merged and they compile successfully, new binary files for every variant will be placed here https://github.com/arendst/Tasmota-firmware/tree/main/firmware (this URL address can NOT be used for OTA updates) It is important to note that these binaries are based on the current development codebase. These commits are tested as much as is possible and are typically quite stable. However, it is infeasible to test on the hundreds of different types of devices with all the available configuration options permitted.
Note that there is a chance, as with any upgrade, that the device may not function as expected. You must always account for the possibility that you may need to flash the device via the serial programming interface if the OTA upgrade fails. Even with the master release, you should always attempt to test the device or a similar prototype before upgrading a device which is in production or is hard to reach. And, as always, make a backup of the device configuration before beginning any firmware update.

View File

@ -6,100 +6,129 @@ Using command ``I2cDriver`` individual drivers can be enabled or disabled at run
## Supported I2C devices
The following table lists the supported I2C devices
Index | Define | Driver | Device | Address(es) | Description
------|---------------------|---------|----------|-------------|-----------------------------------------------
1 | USE_PCA9685 | xdrv_15 | PCA9685 | 0x40 - 0x47 | 16-channel 12-bit pwm driver
2 | USE_PCF8574 | xdrv_28 | PCF8574 | 0x20 - 0x26 | 8-bit I/O expander
2 | USE_PCF8574 | xdrv_28 | PCF8574A | 0x39 - 0x3F | 8-bit I/O expander
3 | USE_DISPLAY_LCD | xdsp_01 | | 0x27, 0x3F | LCD display
4 | USE_DISPLAY_SSD1306 | xdsp_02 | SSD1306 | 0x3C - 0x3D | Oled display
5 | USE_DISPLAY_MATRIX | xdsp_03 | HT16K33 | 0x70 - 0x77 | 8x8 led matrix
6 | USE_DISPLAY_SH1106 | xdsp_07 | SH1106 | 0x3C - 0x3D | Oled display
7 | USE_ADE7953 | xnrg_07 | ADE7953 | 0x38 | Energy monitor
8 | USE_SHT | xsns_07 | SHT1X | Any | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | HTU21 | 0x40 | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | SI7013 | 0x40 | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | SI7020 | 0x40 | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | SI7021 | 0x40 | Temperature and Humidity sensor
10 | USE_BMP | xsns_09 | BMP085 | 0x76 - 0x77 | Pressure and temperature sensor
10 | USE_BMP | xsns_09 | BMP180 | 0x76 - 0x77 | Pressure and temperature sensor
10 | USE_BMP | xsns_09 | BMP280 | 0x76 - 0x77 | Pressure and temperature sensor
10 | USE_BMP | xsns_09 | BME280 | 0x76 - 0x77 | Pressure, temperature and humidity sensor
10 | USE_BMP | xsns_09 | BME680 | 0x76 - 0x77 | Pressure, temperature, humidity and gas sensor
11 | USE_BH1750 | xsns_10 | BH1750 | 0x23, 0x5C | Ambient light intensity sensor
12 | USE_VEML6070 | xsns_11 | VEML6070 | 0x38 - 0x39 | Ultra violet light intensity sensor
13 | USE_ADS1115 | xsns_12 | ADS1115 | 0x48 - 0x4B | 4-channel 16-bit A/D converter
14 | USE_INA219 | xsns_13 | INA219 | 0x40 - 0x41, 0x44 - 0x45 | Low voltage current sensor
15 | USE_SHT3X | xsns_14 | SHT3X | 0x44 - 0x45 | Temperature and Humidity sensor
15 | USE_SHT3X | xsns_14 | SHT4X | 0x44 - 0x45 | Temperature and Humidity sensor
15 | USE_SHT3X | xsns_14 | SHTCX | 0x70 | Temperature and Humidity sensor
16 | USE_TSL2561 | xsns_16 | TSL2561 | 0x29, 0x39, 0x49 | Light intensity sensor
17 | USE_MGS | xsns_19 | Grove | 0x04 | Multichannel gas sensor
18 | USE_SGP30 | xsns_21 | SGP30 | 0x58 | Gas (TVOC) and air quality sensor
19 | USE_SI1145 | xsns_24 | SI1145 | 0x60 | Ultra violet index and light sensor
19 | USE_SI1145 | xsns_24 | SI1146 | 0x60 | Ultra violet index and light sensor
19 | USE_SI1145 | xsns_24 | SI1147 | 0x60 | Ultra violet index and light sensor
20 | USE_LM75AD | xsns_26 | LM75AD | 0x48 - 0x4F | Temperature sensor
21 | USE_APDS9960 | xsns_27 | APDS9960 | 0x39 | Proximity ambient light RGB and gesture sensor
22 | USE_MCP230xx | xsns_29 | MCP23008 | 0x20 - 0x26 | 8-bit I/O expander
22 | USE_MCP230xx | xsns_29 | MCP23017 | 0x20 - 0x26 | 16-bit I/O expander
23 | USE_MPR121 | xsns_30 | MPR121 | 0x5A - 0x5D | Proximity capacitive touch sensor
24 | USE_CCS811 | xsns_31 | CCS811 | 0x5A | Gas (TVOC) and air quality sensor
25 | USE_MPU6050 | xsns_32 | MPU6050 | 0x68 - 0x69 | 3-axis gyroscope and temperature sensor
26 | USE_DS3231 | xsns_33 | DS3231 | 0x68 | Real time clock
27 | USE_MGC3130 | xsns_36 | MGC3130 | 0x42 | Electric field sensor
28 | USE_MAX44009 | xsns_41 | MAX44009 | 0x4A - 0x4B | Ambient light intensity sensor
29 | USE_SCD30 | xsns_42 | SCD30 | 0x61 | CO2 sensor
30 | USE_SPS30 | xsns_44 | SPS30 | 0x69 | Particle sensor
31 | USE_VL53L0X | xsns_45 | VL53L0X | 0x29 | Time-of-flight (ToF) distance sensor
32 | USE_MLX90614 | xsns_46 | MLX90614 | 0x5A | Infra red temperature sensor
33 | USE_CHIRP | xsns_48 | CHIRP | 0x20 | Soil moisture sensor
34 | USE_PAJ7620 | xsns_50 | PAJ7620 | 0x73 | Gesture sensor
35 | USE_INA226 | xsns_54 | INA226 | 0x40 - 0x41, 0x44 - 0x45 | Low voltage current sensor
36 | USE_HIH6 | xsns_55 | HIH6130 | 0x27 | Temperature and Humidity sensor
37 | USE_24C256 | xdrv_10 | 24C256 | 0x50 | Scripter EEPROM storage
38 | USE_DISPLAY_ILI9488 | xdsp_08 | FT6236 | 0x38 | Touch panel controller
39 | USE_DISPLAY_RA8876 | xdsp_10 | FT5316 | 0x38 | Touch panel controller
40 | USE_TSL2591 | xsns_57 | TLS2591 | 0x29 | Light intensity sensor
41 | USE_DHT12 | xsns_58 | DHT12 | 0x5C | Temperature and humidity sensor
42 | USE_DS1624 | xsns_59 | DS1621 | 0x48 - 0x4F | Temperature sensor
42 | USE_DS1624 | xsns_59 | DS1624 | 0x48 - 0x4F | Temperature sensor
43 | USE_AHT1x | xsns_63 | AHT10/15 | 0x38 - 0x39 | Temperature and humidity sensor
43 | USE_AHT2x | xsns_63 | AHT20 | 0x38 | Temperature and humidity sensor
43 | USE_AHT2x | xsns_63 | AM2301B | 0x38 | Temperature and humidity sensor
44 | USE_WEMOS_MOTOR_V1 | xdrv_34 | | 0x2D - 0x30 | WEMOS motor shield v1.0.0 (6612FNG)
45 | USE_HDC1080 | xsns_65 | HDC1080 | 0x40 | Temperature and Humidity sensor
46 | USE_IAQ | xsns_66 | IAQ | 0x5a | Air quality sensor
47 | USE_DISPLAY_SEVENSEG| xdsp_11 | HT16K33 | 0x70 - 0x77 | Seven segment LED
48 | USE_AS3935 | xsns_67 | AS3935 | 0x03 | Franklin Lightning Sensor
49 | USE_VEML6075 | xsns_70 | VEML6075 | 0x10 | UVA/UVB/UVINDEX Sensor
50 | USE_VEML7700 | xsns_71 | VEML7700 | 0x10 | Ambient light intensity sensor
51 | USE_MCP9808 | xsns_72 | MCP9808 | 0x18 - 0x1F | Temperature sensor
52 | USE_HP303B | xsns_73 | HP303B | 0x76 - 0x77 | Pressure and temperature sensor
53 | USE_MLX90640 | xdrv_43 | MLX90640 | 0x33 | IR array temperature sensor
54 | USE_VL53L1X | xsns_77 | VL53L1X | 0x29 | Time-of-flight (ToF) distance sensor
55 | USE_EZOPH | xsns_78 | EZOPH | 0x61 - 0x70 | pH sensor
55 | USE_EZOORP | xsns_78 | EZOORP | 0x61 - 0x70 | ORP sensor
55 | USE_EZORTD | xsns_78 | EZORTD | 0x61 - 0x70 | Temperature sensor
55 | USE_EZOHUM | xsns_78 | EZOHUM | 0x61 - 0x70 | Humidity sensor
55 | USE_EZOEC | xsns_78 | EZOEC | 0x61 - 0x70 | Electric conductivity sensor
55 | USE_EZOCO2 | xsns_78 | EZOCO2 | 0x61 - 0x70 | CO2 sensor
55 | USE_EZOO2 | xsns_78 | EZOO2 | 0x61 - 0x70 | O2 sensor
55 | USE_EZOPRS | xsns_78 | EZOPRS | 0x61 - 0x70 | Pressure sensor
55 | USE_EZOFLO | xsns_78 | EZOFLO | 0x61 - 0x70 | Flow meter sensor
55 | USE_EZODO | xsns_78 | EZODO | 0x61 - 0x70 | Disolved Oxygen sensor
55 | USE_EZORGB | xsns_78 | EZORGB | 0x61 - 0x70 | Color sensor
55 | USE_EZOPMP | xsns_78 | EZOPMP | 0x61 - 0x70 | Peristaltic Pump
56 | USE_SEESAW_SOIL | xsns_81 | SEESOIL | 0x36 - 0x39 | Adafruit seesaw soil moisture sensor
57 | USE_TOF10120 | xsns_84 | TOF10120 | 0x52 | Time-of-flight (ToF) distance sensor
58 | USE_MPU_ACCEL | xsns_85 | MPU_ACCEL| 0x68 | MPU6886/MPU9250 6-axis MotionTracking sensor from M5Stack
59 | USE_BM8563 | xdrv_56 | BM8563 | 0x51 | BM8563 RTC from M5Stack
60 | USE_AM2320 | xsns_88 | AM2320 | 0x5C | Temperature and Humidity sensor
61 | USE_T67XX | xsns_89 | T67XX | 0x15 | CO2 sensor
62 | USE_SCD40 | xsns_92 | SCD40 | 0x62 | CO2 sensor Sensirion SCD40/SCD41
63 | USE_HM330X | xsns_93 | HM330X | 0x40 | Particule sensor
64 | USE_HDC2010 | xsns_94 | HDC2010 | 0x40 | Temperature and Humidity sensor
65 | USE_ADE7880 | xnrg_23 | ADE7880 | 0x38 | Energy monitor
66 | USE_PCF85363 | xsns_99 | PCF85363 | 0x51 | Real time clock
67 | USE_DS3502 | xdrv_61 | DS3502 | 0x28 - 0x2B | Digital potentiometer
68 | USE_HYT | xsns_97 | HYTxxx | 0x28 | Temperature and Humidity sensor
Index | Define | Driver | Device | Address(es) | Bus2 | Description
------|---------------------|----------|----------|-------------|------|-----------------------------------------------
1 | USE_PCA9685 | xdrv_15 | PCA9685 | 0x40 - 0x47 | | 16-channel 12-bit pwm driver
1 | USE_PCA9685_V2 | xdrv_15 | PCA9685 | 0x40 - 0x47 | | 16-channel 12-bit pwm driver
2 | USE_PCF8574 | xdrv_28 | PCF8574 | 0x20 - 0x26 | | 8-bit I/O expander (address range overridable)
2 | USE_PCF8574 | xdrv_28 | PCF8574A | 0x39 - 0x3F | | 8-bit I/O expander (address range overridable)
3 | USE_DISPLAY_LCD | xdsp_01 | | 0x27, 0x3F | | LCD display
4 | REMOVED | | | | | USE_DISPLAY_SSD1306 - REMOVED
5 | USE_DISPLAY_MATRIX | xdsp_03 | HT16K33 | 0x70 - 0x77 | | 8x8 led matrix
6 | REMOVED | | SH1106 | 0x3C - 0x3D | | USE_DISPLAY_SH1106 - REMOVED
7 | USE_ADE7953 | xnrg_07 | ADE7953 | 0x38 | | Energy monitor
8 | USE_SHT | xsns_07 | SHT1X | Any | | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | HTU21 | 0x40 | Yes | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | SI7013 | 0x40 | Yes | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | SI7020 | 0x40 | Yes | Temperature and Humidity sensor
9 | USE_HTU | xsns_08 | SI7021 | 0x40 | Yes | Temperature and Humidity sensor
10 | USE_BMP | xsns_09 | BMP085 | 0x76 - 0x77 | Yes | Pressure and temperature sensor
10 | USE_BMP | xsns_09 | BMP180 | 0x76 - 0x77 | Yes | Pressure and temperature sensor
10 | USE_BMP | xsns_09 | BMP280 | 0x76 - 0x77 | Yes | Pressure and temperature sensor
10 | USE_BMP | xsns_09 | BME280 | 0x76 - 0x77 | Yes | Pressure, temperature and humidity sensor
10 | USE_BMP | xsns_09 | BME680 | 0x76 - 0x77 | Yes | Pressure, temperature, humidity and gas sensor
11 | USE_BH1750 | xsns_10 | BH1750 | 0x23, 0x5C | Yes | Ambient light intensity sensor
12 | USE_VEML6070 | xsns_11 | VEML6070 | 0x38 - 0x39 | | Ultra violet light intensity sensor
13 | USE_ADS1115 | xsns_12 | ADS1115 | 0x48 - 0x4B | Yes | 4-channel 16-bit A/D converter
14 | USE_INA219 | xsns_13 | INA219 | 0x40 - 0x41, 0x44 - 0x45 | | Low voltage current sensor
15 | USE_SHT3X | xsns_14 | SHT3X | 0x44 - 0x45 | Yes | Temperature and Humidity sensor
15 | USE_SHT3X | xsns_14 | SHT4X | 0x44 - 0x46 | Yes | Temperature and Humidity sensor
15 | USE_SHT3X | xsns_14 | SHTCX | 0x70 | Yes | Temperature and Humidity sensor
16 | USE_TSL2561 | xsns_16 | TSL2561 | 0x29, 0x39, 0x49 | | Light intensity sensor
17 | USE_MGS | xsns_19 | Grove | 0x04 | | Multichannel gas sensor
18 | USE_SGP30 | xsns_21 | SGP30 | 0x58 | | Gas (TVOC) and air quality sensor
19 | USE_SI1145 | xsns_24 | SI1145 | 0x60 | Yes | Ultra violet index and light sensor
19 | USE_SI1145 | xsns_24 | SI1146 | 0x60 | Yes | Ultra violet index and light sensor
19 | USE_SI1145 | xsns_24 | SI1147 | 0x60 | Yes | Ultra violet index and light sensor
20 | USE_LM75AD | xsns_26 | LM75AD | 0x48 - 0x4F | Yes | Temperature sensor
21 | USE_APDS9960 | xsns_27 | APDS9960 | 0x39 | | Proximity ambient light RGB and gesture sensor
22 | USE_MCP230xx | xsns_29 | MCP23008 | 0x20 - 0x26 | | 8-bit I/O expander
22 | USE_MCP230xx | xsns_29 | MCP23017 | 0x20 - 0x26 | | 16-bit I/O expander
23 | USE_MPR121 | xsns_30 | MPR121 | 0x5A - 0x5D | | Proximity capacitive touch sensor
24 | USE_CCS811 | xsns_31 | CCS811 | 0x5A | | Gas (TVOC) and air quality sensor
24' | USE_CCS811_V2 | xsns_31 | CCS811 | 0x5A - 0x5B | | Gas (TVOC) and air quality sensor
25 | USE_MPU6050 | xsns_32 | MPU6050 | 0x68 - 0x69 | | 3-axis gyroscope and temperature sensor
26 | USE_DS3231 | xsns_33 | DS1307 | 0x68 | | Real time clock
26 | USE_DS3231 | xsns_33 | DS3231 | 0x68 | | Real time clock
27 | USE_MGC3130 | xsns_36 | MGC3130 | 0x42 | | Electric field sensor
28 | USE_MAX44009 | xsns_41 | MAX44009 | 0x4A - 0x4B | | Ambient light intensity sensor
29 | USE_SCD30 | xsns_42 | SCD30 | 0x61 | | CO2 sensor
30 | USE_SPS30 | xsns_44 | SPS30 | 0x69 | | Particle sensor
31 | USE_VL53L0X | xsns_45 | VL53L0X | 0x29 | | Time-of-flight (ToF) distance sensor
32 | USE_MLX90614 | xsns_46 | MLX90614 | 0x5A | | Infra red temperature sensor
33 | USE_CHIRP | xsns_48 | CHIRP | 0x20 | | Soil moisture sensor
34 | USE_PAJ7620 | xsns_50 | PAJ7620 | 0x73 | | Gesture sensor
35 | USE_INA226 | xsns_54 | INA226 | 0x40 - 0x41, 0x44 - 0x45 | | Low voltage current sensor
36 | USE_HIH6 | xsns_55 | HIH6130 | 0x27 | | Temperature and Humidity sensor
37 | USE_24C256 | xdrv_10 | 24C256 | 0x50 | | Scripter EEPROM storage
38 | USE_DISPLAY_ILI9488 | xdsp_08 | FT6236 | 0x38 | | Touch panel controller
39 | USE_DISPLAY_RA8876 | xdsp_10 | FT5316 | 0x38 | | Touch panel controller
40 | USE_TSL2591 | xsns_57 | TSL2591 | 0x29 | | Light intensity sensor
41 | USE_DHT12 | xsns_58 | DHT12 | 0x5C | | Temperature and humidity sensor
42 | USE_DS1624 | xsns_59 | DS1621 | 0x48 - 0x4F | | Temperature sensor
42 | USE_DS1624 | xsns_59 | DS1624 | 0x48 - 0x4F | | Temperature sensor
43 | USE_AHT1x | xsns_63 | AHT10/15 | 0x38 - 0x39 | | Temperature and humidity sensor
43 | USE_AHT2x | xsns_63 | AHT20 | 0x38 | | Temperature and humidity sensor
43 | USE_AHT2x | xsns_63 | AM2301B | 0x38 | | Temperature and humidity sensor
44 | USE_WEMOS_MOTOR_V1 | xdrv_34 | | 0x2D - 0x30 | | WEMOS motor shield v1.0.0 (6612FNG)
45 | USE_HDC1080 | xsns_65 | HDC1080 | 0x40 | | Temperature and Humidity sensor
46 | USE_IAQ | xsns_66 | IAQ | 0x5a | Yes | Air quality sensor
47 | USE_DISPLAY_SEVENSEG| xdsp_11 | HT16K33 | 0x70 - 0x77 | | Seven segment LED
48 | USE_AS3935 | xsns_67 | AS3935 | 0x03 | | Franklin Lightning Sensor
49 | USE_VEML6075 | xsns_70 | VEML6075 | 0x10 | | UVA/UVB/UVINDEX Sensor
50 | USE_VEML7700 | xsns_71 | VEML7700 | 0x10 | | Ambient light intensity sensor
51 | USE_MCP9808 | xsns_72 | MCP9808 | 0x18 - 0x1F | | Temperature sensor
52 | USE_HP303B | xsns_73 | HP303B | 0x76 - 0x77 | | Pressure and temperature sensor
53 | USE_MLX90640 | xdrv_43 | MLX90640 | 0x33 | | IR array temperature sensor
54 | USE_VL53L1X | xsns_77 | VL53L1X | 0x29 | | Time-of-flight (ToF) distance sensor
55 | USE_EZOPH | xsns_78 | EZOPH | 0x61 - 0x70 | | pH sensor
55 | USE_EZOORP | xsns_78 | EZOORP | 0x61 - 0x70 | | ORP sensor
55 | USE_EZORTD | xsns_78 | EZORTD | 0x61 - 0x70 | | Temperature sensor
55 | USE_EZOHUM | xsns_78 | EZOHUM | 0x61 - 0x70 | | Humidity sensor
55 | USE_EZOEC | xsns_78 | EZOEC | 0x61 - 0x70 | | Electric conductivity sensor
55 | USE_EZOCO2 | xsns_78 | EZOCO2 | 0x61 - 0x70 | | CO2 sensor
55 | USE_EZOO2 | xsns_78 | EZOO2 | 0x61 - 0x70 | | O2 sensor
55 | USE_EZOPRS | xsns_78 | EZOPRS | 0x61 - 0x70 | | Pressure sensor
55 | USE_EZOFLO | xsns_78 | EZOFLO | 0x61 - 0x70 | | Flow meter sensor
55 | USE_EZODO | xsns_78 | EZODO | 0x61 - 0x70 | | Disolved Oxygen sensor
55 | USE_EZORGB | xsns_78 | EZORGB | 0x61 - 0x70 | | Color sensor
55 | USE_EZOPMP | xsns_78 | EZOPMP | 0x61 - 0x70 | | Peristaltic Pump
56 | USE_SEESAW_SOIL | xsns_81 | SEESOIL | 0x36 - 0x39 | | Adafruit seesaw soil moisture sensor
57 | USE_TOF10120 | xsns_84 | TOF10120 | 0x52 | | Time-of-flight (ToF) distance sensor
58 | USE_MPU_ACCEL | xsns_85 | MPU_ACCEL| 0x68 | Yes | MPU6886/MPU9250 6-axis MotionTracking sensor from M5Stack
59 | USE_BM8563 | xdrv_56 | BM8563 | 0x51 | Yes | BM8563 RTC from M5Stack
60 | USE_AM2320 | xsns_88 | AM2320 | 0x5C | | Temperature and Humidity sensor
61 | USE_T67XX | xsns_89 | T67XX | 0x15 | | CO2 sensor
62 | USE_SCD40 | xsns_92 | SCD40 | 0x62 | | CO2 sensor Sensirion SCD40/SCD41
63 | USE_HM330X | xsns_93 | HM330X | 0x40 | | Particule sensor
64 | USE_HDC2010 | xsns_94 | HDC2010 | 0x40 | | Temperature and Humidity sensor
65 | USE_ADE7880 | xnrg_23 | ADE7880 | 0x38 | | Energy monitor
66 | USE_PCF85363 | xsns_99 | PCF85363 | 0x51 | | Real time clock
67 | USE_DS3502 | xdrv_61 | DS3502 | 0x28 - 0x2B | | Digital potentiometer
68 | USE_HYT | xsns_97 | HYTxxx | 0x28 | Yes | Temperature and Humidity sensor
69 | USE_SGP40 | xsns_98 | SGP40 | 0x59 | | Gas (TVOC) and air quality
70 | USE_LUXV30B | xsns_99 | LUXV30B | 0x4A | | DFRobot SEN0390 V30B lux sensor
71 | USE_QMC5883L | xsns_33 | QMC5883L | 0x0D | | Magnetic Field Sensor
72 | USE_INA3221 | xsns_100 | INA3221 | 0x40-0x43 | | 3-channels Voltage and Current sensor
73 | USE_HMC5883L | xsns_101 | HMC5883L | 0x1E | | 3-channels Magnetic Field Sensor
74 | USE_DISPLAY_TM1650 | xdsp_20 | TM1650 | 0x24 - 0x27, 0x34 - 0x37 | | Four-digit seven-segment LED controller
75 | USE_PCA9632 | xdrv_64 | PCA9632 | 0x60 | | 4-channel 4-bit pwm driver
76 | USE_SEN5X | xsns_103 | SEN5X | 0x69 | Yes | Gas (VOC/NOx index) and air quality (PPM <1,<2.5,<4,<10)
77 | USE_MCP23XXX_DRV | xdrv_67 | MCP23x17 | 0x20 - 0x26 | | 16-bit I/O expander as virtual button/switch/relay
78 | USE_PMSA003I | xsns_104 | PMSA003I | 0x12 | | PM2.5 Air Quality Sensor with I2C Interface
79 | USE_GDK101 | xsns_106 | GDK101 | 0x18 - 0x1B | | Gamma Radiation Sensor
80 | USE_TC74 | xsns_108 | TC74 | 0x48 - 0x4F | | Temperature sensor
81 | USE_PCA9557 | xdrv_69 | PCA95xx | 0x18 - 0x1F | | 8-bit I/O expander as virtual button/switch/relay
82 | USE_SGP4X | xsns_109 | SGP4X | 0x59 | | Gas (TVOC/NOx index)
83 | USE_MAX17043 | xsns_110 | MAX17043 | 0x36 | | Fuel-gauge for 3.7 Volt Lipo battery
84 | USE_ENS16x | xsns_111 | ENS16x | 0x52 - 0x53 | | Gas (TVOC, eCO2) and air quality sensor
85 | USE_ENS210 | xsns_112 | ENS210 | 0x43 - 0x44 | | Temperature and humidity sensor
86 | USE_AMSX915 | xsns_114 | AMS6915 | 0x28 | | Pressure (absolute/differential) and temperature sensor
87 | USE_SPL06_007 | xsns_25 | SPL06-007 | 0x76 | | Pressure and temperature sensor
88 | USE_QMP6988 | xsns_28 | QMP6988 | 0x56, 0x70 | Yes | Pressure and temperature sensor
89 | USE_HX711_M5SCALES | xsns_34 | M5SCALES | 0x26 | Yes | M5Unit (Mini)Scales(HX711 STM32) U177
90 | USE_RX8010 | xdrv_56 | RX8010 | 0x32 | Yes | RX8010 RTC from IOTTIMER
91 | USE_MS5837 | xsns_116 | MS5837 | 0x76 | | Pressure and temperature sensor
92 | USE_PCF85063 | xdrv_56 | PCF85063 | 0x51 | | PCF85063 Real time clock
NOTE: Bus2 supported on ESP32 only.

View File

@ -94,4 +94,4 @@ Module | LCode | Description
06 TTGO Watch | x | TTGO Watch
07 M5Stack Core2 | x | M5Stack Core2
Over 2400 additional devices are supported using [templates](TEMPLATES.md).
Over 2800 additional devices are supported using [templates](TEMPLATES.md).

View File

@ -1,4 +1,4 @@
![Tasmota logo](/tools/logo/TASMOTA_FullLogo_Vector.svg)
![Tasmota logo](/tools/logo/TASMOTA_FullLogo_Vector.svg#gh-light-mode-only)![Tasmota logo](/tools/logo/TASMOTA_FullLogo_Vector_White.svg#gh-dark-mode-only)
Alternative firmware for [ESP8266](https://en.wikipedia.org/wiki/ESP8266) and [ESP32](https://en.wikipedia.org/wiki/ESP32) based devices with **easy configuration using webUI, OTA updates, automation using timers or rules, expandability and entirely local control over MQTT, HTTP, Serial or KNX**.
_Written for PlatformIO._
@ -6,7 +6,7 @@ _Written for PlatformIO._
[![GitHub version](https://img.shields.io/github/release/arendst/Tasmota.svg)](http://ota.tasmota.com/tasmota/release)
[![GitHub download](https://img.shields.io/github/downloads/arendst/Tasmota/total.svg)](https://github.com/arendst/Tasmota/releases/latest)
[![License](https://img.shields.io/github/license/arendst/Tasmota.svg)](LICENSE.txt)
[![Chat](https://img.shields.io/discord/479389167382691863.svg)](https://discord.gg/Ks2Kzd4)
[![Discord](https://img.shields.io/discord/479389167382691863.svg?logo=discord&logoColor=white&color=5865F2&label=Discord)](https://discord.gg/Ks2Kzd4)
[![Gitpod Ready-to-Code](https://img.shields.io/badge/Gitpod-Ready--to--Code-blue?logo=gitpod)](https://gitpod.io/#https://github.com/arendst/Tasmota)
<hr></hr>
@ -31,7 +31,7 @@ Firmware binaries can be downloaded from http://ota.tasmota.com/tasmota/release/
## Development
[![Dev Version](https://img.shields.io/badge/development%20version-v12.0.x.x-blue.svg)](https://github.com/arendst/Tasmota)
[![Dev Version](https://img.shields.io/badge/development%20version-v14.6.x.x-blue.svg)](https://github.com/arendst/Tasmota)
[![Download Dev](https://img.shields.io/badge/download-development-yellow.svg)](http://ota.tasmota.com/tasmota/)
[![Tasmota CI](https://github.com/arendst/Tasmota/actions/workflows/build_all_the_things.yml/badge.svg)](https://github.com/arendst/Tasmota/actions/workflows/build_all_the_things.yml)
[![Build_development](https://github.com/arendst/Tasmota/actions/workflows/Tasmota_build_devel.yml/badge.svg)](https://github.com/arendst/Tasmota/actions/workflows/Tasmota_build_devel.yml)
@ -40,13 +40,13 @@ See [CHANGELOG.md](CHANGELOG.md) for detailed change information.
Unless your Tasmota powered device exhibits a problem or lacks a feature that you need, leave your device alone - it works so dont make unnecessary changes! If the release version (i.e., the master branch) exhibits unexpected behaviour for your device and configuration, you should upgrade to the latest development version instead to see if your problem is resolved as some bugs in previous releases or development builds may already have been resolved.
Every commit made to the development branch, which is compiling successfuly, will post new binary files at http://ota.tasmota.com/tasmota/ (this web address can be used for OTA updates too). It is important to note that these binaries are based on the current development codebase. These commits are tested as much as is possible and are typically quite stable. However, it is infeasible to test on the hundreds of different types of devices with all the available configuration options permitted.
Every commit made to the development branch, which is compiling successfully, will post new binary files at http://ota.tasmota.com/tasmota/ (this web address can be used for OTA updates too). It is important to note that these binaries are based on the current development codebase. These commits are tested as much as is possible and are typically quite stable. However, it is infeasible to test on the hundreds of different types of devices with all the available configuration options permitted.
Note that there is a chance, as with any upgrade, that the device may not function as expected. You must always account for the possibility that you may need to flash the device via the serial programming interface if the OTA upgrade fails. Even with the master release, you should always attempt to test the device or a similar prototype before upgrading a device which is in production or is hard to reach. And, as always, make a backup of the device configuration before beginning any firmware update.
## Disclaimer
st:warning: **DANGER OF ELECTROCUTION** :warning:
:warning: **DANGER OF ELECTROCUTION** :warning:
If your device connects to mains electricity (AC power) there is danger of electrocution if not installed properly. If you don't know how to install it, please call an electrician (***Beware:*** certain countries prohibit installation without a licensed electrician present). Remember: _**SAFETY FIRST**_. It is not worth the risk to yourself, your family and your home if you don't know exactly what you are doing. Never tinker or try to flash a device using the serial programming interface while it is connected to MAINS ELECTRICITY (AC power).
@ -129,6 +129,8 @@ You can contribute to Tasmota by
## Credits
People helping to keep the show on the road:
- Sfromis providing extensive user support
- Barbudor providing user support and code fixes and additions
- David Lang providing initial issue resolution and code optimizations
- Heiko Krupp for his IRSend, HTU21, SI70xx and Wemo/Hue emulation drivers
- Wiktor Schmidt for Travis CI implementation
@ -154,7 +156,7 @@ People helping to keep the show on the road:
- Joel Stein, digiblur and Shantur Rathore for their Tuya research and driver
- Frogmore42 for providing many issue answers
- Jason2866 for platformio support and providing many issue answers
- Blakadder for managing the new document site and providing template management
- Blakadder for managing the document site and providing template management
- Stephan Hadinger for refactoring light driver, enhancing HueEmulation, LVGL, Zigbee and Berry support
- tmo for designing the official Tasmota logo
- Stefan Bode for his Shutter and Deep sleep drivers
@ -168,4 +170,4 @@ People helping to keep the show on the road:
## License
This program is licensed under GPL-3.0
This program is licensed under GPL-3.0-only

View File

@ -1,4 +1,7 @@
<img src="https://github.com/arendst/Tasmota/blob/master/tools/logo/TASMOTA_FullLogo_Vector.svg" alt="Logo" align="right" height="76"/>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./tools/logo/TASMOTA_FullLogo_Vector_White.svg">
<img alt="Logo" src="./tools/logo/TASMOTA_FullLogo_Vector.svg" align="right" height="76">
</picture>
# RELEASE NOTES
@ -14,7 +17,7 @@ Pay attention to the following version breaks due to dynamic settings updates:
1. Migrate to **Sonoff-Tasmota 3.9.x**
2. Migrate to **Sonoff-Tasmota 4.x**
3. Migrate to **Sonoff-Tasmota 5.14**
3. Migrate to **Sonoff-Tasmota 5.14** (http://ota.tasmota.com/tasmota/release_5.14.0/sonoff.bin) - NOTICE underscore as a dash is not supported in older versions
4. Migrate to **Sonoff-Tasmota 6.7.1** (http://ota.tasmota.com/tasmota/release_6.7.1/sonoff.bin) - NOTICE underscore as a dash is not supported in older versions
5. Migrate to **Tasmota 7.2.0** (http://ota.tasmota.com/tasmota/release-7.2.0/tasmota.bin)
@ -31,11 +34,11 @@ While fallback or downgrading is common practice it was never supported due to S
## Supported Core versions
This release will be supported from ESP8266/Arduino library Core version **2.7.4.9** due to reported security and stability issues on previous Core version. This will also support gzipped binaries.
This release will be supported from ESP8266/Arduino library Core version **2.7.8** due to reported security and stability issues on previous Core version. This will also support gzipped binaries.
This release will be supported from ESP32/Arduino library Core version **2.0.4.1**.
This release will be supported from ESP32/Arduino library Core version **v3.1.3.250411**.
Support of ESP8266 Core versions before 2.7.4.9 and ESP32 Core versions before 2.0.4.1 have been removed.
Support of ESP8266 Core versions before 2.7.8 and ESP32 Core versions before v3.1.3.250411 have been removed.
## Support of TLS
@ -52,11 +55,11 @@ Easy initial installation of Tasmota can be performed using the [Tasmota WebInst
## Provided Binary Downloads
### ESP8266 or ESP8285 based
The following binary downloads have been compiled with ESP8266/Arduino library core version **2.7.4.9**.
The following binary downloads have been compiled with ESP8266/Arduino library core version **2.7.8**.
- **tasmota.bin** = The Tasmota version with most drivers for 1M+ flash. **RECOMMENDED RELEASE BINARY**
- **tasmota4M.bin** = The Tasmota version with most drivers and filesystem for 4M+ flash.
- **tasmota-AF.bin** to **tasmota-VN.bin** = The Tasmota version in different languages for 1M+ flash.
- **tasmota-4M.bin** = The Tasmota version with most drivers and filesystem for 4M+ flash.
- **tasmota-AD.bin** to **tasmota-VN.bin** = The Tasmota version in different languages for 1M+ flash.
- **tasmota-lite.bin** = The Lite version without most drivers and sensors for 1M+ flash.
- **tasmota-knx.bin** = The Knx version without some features but adds KNX support for 1M+ flash.
- **tasmota-sensors.bin** = The Sensors version adds more useful sensors for 1M+ flash.
@ -68,22 +71,26 @@ The following binary downloads have been compiled with ESP8266/Arduino library c
Above binaries are also available as gzipped version allowing faster uploads.
Latest released binaries can be downloaded from
- https://github.com/arendst/Tasmota-firmware/tree/main/release-firmware
- https://github.com/arendst/Tasmota-firmware/tree/firmware/release-firmware
- http://ota.tasmota.com/tasmota/release
Historical binaries can be downloaded from
- http://ota.tasmota.com/tasmota/release-12.0.2
- http://ota.tasmota.com/tasmota/release-14.6.0
The latter links can be used for OTA upgrades too like ``OtaUrl http://ota.tasmota.com/tasmota/release/tasmota.bin.gz``
### ESP32, ESP32-C3, ESP32-S2 and ESP32-S3 based
The following binary downloads have been compiled with ESP32/Arduino library core version **2.0.4.1**.
### ESP32, ESP32-C2, ESP32-C3, ESP32-C6, ESP32-S2 and ESP32-S3 based
The following binary downloads have been compiled with ESP32/Arduino library core version **v3.1.3.250411**.
- **tasmota32.bin** = The Tasmota version with most drivers including additional sensors and KNX for 4M+ flash. **RECOMMENDED RELEASE BINARY**
- **tasmota32xy.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-C3/S2/S3 and 4M+ flash.
- **tasmota32xycdc.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-C3/S2/S3 with serial over embedded USB CDC only and 4M+ flash.
- **tasmota32solo1.bin** = The Tasmota version with most drivers including additional sensors and KNX for single core ESP32 and 4M+ flash.
- **tasmota32-AF.bin** to **tasmota32-VN.bin** = The Tasmota version in different languages for 4M+ flash.
- **tasmota32s2.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-S2 with serial and 4M+ flash.
- **tasmota32s2cdc.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-S2 with serial over embedded USB CDC only and 4M+ flash.
- **tasmota32s3.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-S3 with USB HWCDC and fallback to serial and 4M+ flash.
- **tasmota32c2.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-C2 with serial and 4M+ flash.
- **tasmota32c3.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-C3 with USB HWCDC and fallback to serial and 4M+ flash.
- **tasmota32c6.bin** = The Tasmota version with most drivers including additional sensors and KNX for ESP32-C6 with USB HWCDC and fallback to serial and 4M+ flash.
- **tasmota32-AD.bin** to **tasmota32-VN.bin** = The Tasmota version in different languages for 4M+ flash.
- **tasmota32-bluetooth.bin** = The Bluetooth version adds BLE support for 4M+ flash.
- **tasmota32-display.bin** = The Display version without Energy Monitoring but adds display support for 4M+ flash.
- **tasmota32-ir.bin** = The InfraRed Receiver and transmitter version allowing all available protocols provided by library IRremoteESP8266 but without most other features for 4M+ flash.
@ -93,13 +100,13 @@ The following binary downloads have been compiled with ESP32/Arduino library cor
- **tasmota32-zbbridgepro.bin** - The Sonoff Zigbee Bridge Pro version with CC2652P firmware load support.
Latest released binaries can be downloaded from
- https://github.com/arendst/Tasmota-firmware/tree/main/release-firmware
- http://ota.tasmota.com/tasmota32/release
- https://github.com/arendst/Tasmota-firmware/tree/firmware/release-firmware
- https://ota.tasmota.com/tasmota32/release
Historical binaries can be downloaded from
- http://ota.tasmota.com/tasmota32/release-12.0.2
- https://ota.tasmota.com/tasmota32/release-14.6.0
The latter links can be used for OTA upgrades too like ``OtaUrl http://ota.tasmota.com/tasmota32/release/tasmota32.bin``
The latter links can be used for OTA upgrades too like ``OtaUrl https://ota.tasmota.com/tasmota32/release/tasmota32.bin``
## Additional information
@ -107,35 +114,17 @@ The latter links can be used for OTA upgrades too like ``OtaUrl http://ota.tasmo
[Complete list](BUILDS.md) of available feature and sensors.
## Changelog v12.0.2.4
## Changelog v14.6.0.1
### Added
- Command ``SetOption45 1..250`` to change default bistable latching relay pulse length of 40 milliseconds
- Command ``SetOption144 1`` includes a timestamp in zigbee `ZbReceived` messages
- Command ``GlobalTemp2 1..250`` to select Global Temperature source indexed from teleperiod occurance data [#15834](https://github.com/arendst/Tasmota/issues/15834)
- Command ``GlobalHum2 1..250`` to select Global Humidity source indexed from teleperiod occurance data [#15834](https://github.com/arendst/Tasmota/issues/15834)
- Command ``GlobalPress2 1..250`` to select Global Pressure source indexed from teleperiod occurance data [#15834](https://github.com/arendst/Tasmota/issues/15834)
- Command ``Sleep2 !`` to cancel pending one-shot speed setting [#15954](https://github.com/arendst/Tasmota/issues/15954)
- Commands ``WifiScan`` and ``WifiTest`` [#16141](https://github.com/arendst/Tasmota/issues/16141)
- Support for 5-channel light dimmer driver SM2335 used in SwitchBot Color Bulbs [#15839](https://github.com/arendst/Tasmota/issues/15839)
- Support for Sonoff POWR3xxD and THR3xxD [#15856](https://github.com/arendst/Tasmota/issues/15856)
- Support for bistable (latching) relays mixed with monostable relays using GPIO Relay_b or Relay_bi as used by Sonoff POWR320D and THR320D
- Support for Modbus bridge adding commands ``ModbusSend``, ``ModbusBaudrate`` and ``ModbusSerialConfig`` [#16013](https://github.com/arendst/Tasmota/issues/16013)
- Support for multiple ``IRsend`` GPIOs [#16138](https://github.com/arendst/Tasmota/issues/16138)
- Support for Catalan language translations by Albert Gonzalez [#16145](https://github.com/arendst/Tasmota/issues/16145)
- Zigbee added recording of when the battery was last reported [#16146](https://github.com/arendst/Tasmota/issues/16146)
- Zigbee add Battery auto-probe (can be disabled with ``SetOption143 1``) [#16148](https://github.com/arendst/Tasmota/issues/16148)
- ESP32 Support for Ultra Low Power (ULP) coprocessor via Berry by Christian Staars [#15916](https://github.com/arendst/Tasmota/issues/15916)
- Command `JsonPP 0..7` to enable (>0) JSON Pretty Print on user interfaces and set number of indents
- Command `JsonPP <command>|backlog <command>;...` to enable JSON PP only once
### Breaking Changed
### Changed
- TasmotaModbus library from v3.4.0 to v3.5.0 [#16245](https://github.com/arendst/Tasmota/issues/16245)
- ESP32 Arduino core from v2.0.3 to v2.0.4.1 [#15940](https://github.com/arendst/Tasmota/issues/15940)
- ESP32 LVGL library from v8.2.0 to v8.3.0 [#16019](https://github.com/arendst/Tasmota/issues/16019)
- Driver DHT v6 consolidation for both ESP8266 and ESP32 to support SI7021, THS01 and MS01 on ESP32 [#15856](https://github.com/arendst/Tasmota/issues/15856)
### Fixed
- Restore EnergyToday after using command ``restart 2`` and power cycle [#16118](https://github.com/arendst/Tasmota/issues/16118)
- ESP32 SendMail not working over ethernet [#15794](https://github.com/arendst/Tasmota/issues/15794)
- Berry `bytes().asstring()` now truncates a string if buffer contains NULL [#23311](https://github.com/arendst/Tasmota/issues/23311)
- Berry string literals containing NULL are truncated [#23312](https://github.com/arendst/Tasmota/issues/23312)
### Removed

View File

@ -2,4 +2,4 @@
## Reporting a Vulnerability
Please report security issues to https://sidweb.nl/cms3/en/contact
Please report security issues to [Tasmota](https://ota.tasmota.com/tasmota/contact/contact.php)

View File

@ -1,4 +1,7 @@
<img src="/tools/logo/TASMOTA_FullLogo_Vector.svg" alt="Logo" align="right" height="76"/>
<picture>
<source media="(prefers-color-scheme: dark)" srcset="./tools/logo/TASMOTA_FullLogo_Vector_White.svg">
<img alt="Logo" src="./tools/logo/TASMOTA_FullLogo_Vector.svg" align="right" height="76">
</picture>
# Templates

File diff suppressed because it is too large Load Diff

54
api/upload-tasmota.php Normal file
View File

@ -0,0 +1,54 @@
<?php
// mkdir and chmod arduino folder to 777
//
//var_dump($_FILES);
/**
* GZIPs a file on disk (appending .gz to the name)
*
* From http://stackoverflow.com/questions/6073397/how-do-you-create-a-gz-file-using-php
* Based on function by Kioob at:
* http://www.php.net/manual/en/function.gzwrite.php#34955
*
* @param string $source Path to file that should be compressed
* @param integer $level GZIP compression level (default: 9)
* @return string New filename (with .gz appended) if success, or false if operation fails
*/
function gzCompressFile($source, $level = 9){
$dest = $source . '.gz';
$mode = 'wb' . $level;
$error = false;
if ($fp_out = gzopen($dest, $mode)) {
if ($fp_in = fopen($source,'rb')) {
while (!feof($fp_in))
gzwrite($fp_out, fread($fp_in, 1024 * 512));
fclose($fp_in);
} else {
$error = true;
}
gzclose($fp_out);
} else {
$error = true;
}
if ($error)
return false;
else
return $dest;
}
$image = basename($_FILES["file"]["name"]);
//$image = $_FILES["file"]["name"]; // Solves an issue where basename returns Array
$target_file = "tasmota/".$image;
$hostname = $_SERVER['SERVER_NAME'];
if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) {
if (strpos($target_file, "tasmota32") | strpos($target_file, ".gz")) {
echo "The file $image has been uploaded to OTA server $hostname. \n";
} else {
gzCompressFile($target_file);
echo "The files $image and $image.gz have been uploaded to OTA server $hostname. \n";
}
} else {
echo "Sorry, there was an error uploading your file $image to OTA server $hostname. \n";
}
?>

View File

@ -1,46 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DHAS_PSRAM_FIX -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "AI Thinker ESP32-CAM, 4M Flash 4MB PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"url": "https://wiki.ai-thinker.com/esp32-cam",
"vendor": "AI Thinker"
}

46
boards/esp32-fix.json Normal file
View File

@ -0,0 +1,46 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DHAS_PSRAM_FIX -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -DESP32_4M",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 >= 4M Flash, PSRAM with fix, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

View File

@ -1,38 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_M5STACK_Core2 -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "m5stack_core2",
"partitions": "partitions/esp32_partition_app2944k_fs10M.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "M5Stack Core2 16M Flash, 4MB PSRAM, Tasmota 2944k Code/OTA, 10M FS",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"speed": 2000000
},
"url": "http://www.m5stack.com",
"vendor": "M5Stack"
}

View File

@ -1,38 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ODROID_ESP32 -DBOARD_HAS_PSRAM -DHAS_PSRAM_FIX -mfix-esp32-psram-cache-issue -mfix-esp32-psram-cache-strategy=memw -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "odroid_esp32",
"partitions": "partitions/esp32_partition_app2944k_fs10M.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "ESP32 ODROID-GO 16M Flash, 4MB PSRAM, Tasmota 2944k Code/OTA, 10M FS",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"speed": 2000000
},
"url": "https://www.hardkernel.com/main/products/prdt_info.php?g_code=G152875062626",
"vendor": "Hardkernel"
}

46
boards/esp32-solo1.json Normal file
View File

@ -0,0 +1,46 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_4M -DCORE32SOLO1",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32-solo-1.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-solo1 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32solo1-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://www.espressif.com/sites/default/files/documentation/esp32-solo-1_datasheet_en.pdf",
"vendor": "Espressif"
}

46
boards/esp32.json Normal file
View File

@ -0,0 +1,46 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M",
"f_cpu": "160000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 >= 4M Flash PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

View File

@ -1,38 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2944k_fs10M.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 16M Flash, Tasmota 2944k Code/OTA, 10M FS",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"speed": 460800
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

View File

@ -1,46 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

View File

@ -1,46 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app1856k_fs1344k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

View File

@ -1,38 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app1856k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

View File

@ -1,38 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_8M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2944k_fs2M.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 8M Flash, Tasmota 2944k Code/OTA, 2112k FS",
"upload": {
"flash_size": "8MB",
"maximum_ram_size": 327680,
"maximum_size": 8388608,
"require_upload_port": true,
"speed": 460800
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

View File

@ -1,46 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DCORE32SOLO1",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
"mcu": "esp32",
"variant": "esp32",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet",
"can"
],
"debug": {
"openocd_target": "esp32-solo-1.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32solo1-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"url": "https://en.wikipedia.org/wiki/ESP32",
"vendor": "Espressif"
}

44
boards/esp32c2.json Normal file
View File

@ -0,0 +1,44 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_4M -DESP32C2",
"f_cpu": "120000000L",
"f_flash": "60000000L",
"flash_mode": "qio",
"mcu": "esp32c2",
"variant": "esp32c2",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth"
],
"debug": {
"openocd_target": "esp32c2.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C2 = 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32c2-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 278528,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitc-1/index.html",
"vendor": "Espressif"
}

44
boards/esp32c2_2M.json Normal file
View File

@ -0,0 +1,44 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_2M -DESP32C2",
"f_cpu": "120000000L",
"f_flash": "60000000L",
"flash_mode": "qio",
"mcu": "esp32c2",
"variant": "esp32c2",
"partitions": "partitions/esp32_partition_app1245k_fs64k.csv"
},
"connectivity": [
"wifi",
"bluetooth"
],
"debug": {
"openocd_target": "esp32c2.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C2 = 2M Flash, Tasmota 1245kB Code/OTA, 64k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32c2-safeboot.bin"
]
]
},
"flash_size": "2MB",
"maximum_ram_size": 278528,
"maximum_size": 2097152,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitc-1/index.html",
"vendor": "Espressif"
}

View File

@ -1,19 +1,17 @@
{
"build": {
"arduino":{
"ldscript": "esp32c3_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DESP32C3",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_USB_MODE=1 -DESP32_4M -DESP32C3 -DUSE_USB_CDC_CONSOLE",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"flash_mode": "dio",
"mcu": "esp32c3",
"variant": "esp32c3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi"
"wifi",
"bluetooth"
],
"debug": {
"openocd_target": "esp32c3.cfg"
@ -22,13 +20,13 @@
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C3 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"name": "Espressif Generic ESP32-C3 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32c3-safeboot.bin"
"tasmota32c3-safeboot.bin"
]
]
},
@ -36,7 +34,10 @@
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32c3/hw-reference/esp32c3/user-guide-devkitm-1.html",
"vendor": "Espressif"

View File

@ -1,44 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32c3_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DESP32C3 -DUSE_USB_CDC_CONSOLE",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"mcu": "esp32c3",
"variant": "esp32c3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi"
],
"debug": {
"openocd_target": "esp32c3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C3 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32c3cdc-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"before_reset": "usb_reset",
"speed": 460800
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32c3/hw-reference/esp32c3/user-guide-devkitm-1.html",
"vendor": "Espressif"
}

44
boards/esp32c3ser.json Normal file
View File

@ -0,0 +1,44 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_4M -DESP32C3",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"mcu": "esp32c3",
"variant": "esp32c3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth"
],
"debug": {
"openocd_target": "esp32c3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C3 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32c3ser-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32c3/hw-reference/esp32c3/user-guide-devkitm-1.html",
"vendor": "Espressif"
}

44
boards/esp32c6.json Normal file
View File

@ -0,0 +1,44 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_USB_MODE=1 -DESP32_4M -DESP32C6 -DUSE_USB_CDC_CONSOLE",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32c6",
"variant": "esp32c6",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth"
],
"debug": {
"openocd_target": "esp32c6.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C6 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32c6-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitc-1/index.html",
"vendor": "Espressif"
}

44
boards/esp32c6ser.json Normal file
View File

@ -0,0 +1,44 @@
{
"build": {
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_4M -DESP32C6",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32c6",
"variant": "esp32c6",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth"
],
"debug": {
"openocd_target": "esp32c6.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C6 >= 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32c6ser-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitc-1/index.html",
"vendor": "Espressif"
}

View File

@ -1,13 +1,10 @@
{
"build": {
"arduino":{
"ldscript": "esp32s2_out.ld"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=0 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DESP32_4M -DESP32S2",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M -DESP32S2",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"flash_mode": "dio",
"mcu": "esp32s2",
"variant": "esp32s2",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
@ -19,16 +16,16 @@
"openocd_target": "esp32s2.cfg"
},
"frameworks": [
"espidf",
"arduino"
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S2 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"name": "Espressif Generic ESP32-S2 >= 4M Flash PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32s2-safeboot.bin"
"tasmota32s2-safeboot.bin"
]
]
},
@ -38,6 +35,9 @@
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/hw-reference/esp32s2/user-guide-saola-1-v1.2.html",
"vendor": "Espressif"
}

View File

@ -1,13 +1,10 @@
{
"build": {
"arduino":{
"ldscript": "esp32s2_out.ld"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=0 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S2",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S2",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"flash_mode": "dio",
"mcu": "esp32s2",
"variant": "esp32s2",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
@ -19,16 +16,16 @@
"openocd_target": "esp32s2.cfg"
},
"frameworks": [
"espidf",
"arduino"
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S2 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"name": "Espressif Generic ESP32-S2 >= 4M Flash PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32s2cdc-safeboot.bin"
"tasmota32s2cdc-safeboot.bin"
]
]
},
@ -37,7 +34,10 @@
"maximum_size": 4194304,
"require_upload_port": true,
"before_reset": "usb_reset",
"speed": 460800
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s2/hw-reference/esp32s2/user-guide-saola-1-v1.2.html",
"vendor": "Espressif"

View File

@ -0,0 +1,48 @@
{
"build": {
"arduino":{
"memory_type": "opi_opi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M OPI Flash + PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,50 @@
{
"build": {
"arduino":{
"memory_type": "opi_opi"
},
"core": "esp32",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"f_boot": "120000000L",
"boot": "opi",
"flash_mode": "dout",
"mcu": "esp32s3",
"variant": "esp32s3",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M OPI Flash + PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,48 @@
{
"build": {
"arduino":{
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M Flash OPI PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,50 @@
{
"build": {
"arduino":{
"memory_type": "qio_opi"
},
"core": "esp32",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"f_boot": "120000000L",
"boot": "qio",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M QIO Flash + OPI PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,48 @@
{
"build": {
"arduino":{
"memory_type": "qio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M Flash QSPI PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,50 @@
{
"build": {
"arduino":{
"memory_type": "qio_qspi"
},
"core": "esp32",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"f_boot": "120000000L",
"boot": "qio",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M QIO Flash + QSPI PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 2000000
},
"download": {
"speed": 2000000
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -1,45 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32s3_out.ld"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=0 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"espidf",
"arduino"
],
"name": "Espressif Generic ESP32-S3 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32s3-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -1,37 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32s3_out.ld"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=0 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DESP32_8M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2944k_fs2M.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"espidf",
"arduino"
],
"name": "Espressif Generic ESP32-S3 8M Flash, Tasmota 2944k Code/OTA, 2112k FS",
"upload": {
"flash_size": "8MB",
"maximum_ram_size": 327680,
"maximum_size": 8388608,
"require_upload_port": true,
"speed": 460800
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -1,40 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32s3_out.ld",
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2944k_fs10M.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"espidf",
"arduino"
],
"name": "Espressif Generic ESP32-S3 16M Flash, Tasmota 2880k Code/OTA, 10M FS",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"before_reset": "usb_reset",
"speed": 460800
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -1,46 +0,0 @@
{
"build": {
"arduino":{
"ldscript": "esp32s3_out.ld"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DARDUINO_USB_CDC_ON_BOOT=0 -DARDUINO_USB_MSC_ON_BOOT=0 -DARDUINO_USB_DFU_ON_BOOT=0 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"espidf",
"arduino"
],
"name": "Espressif Generic ESP32-S3 4M Flash, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"variants/tasmota/tasmota32s3cdc-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"before_reset": "usb_reset",
"speed": 460800
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,48 @@
{
"build": {
"arduino":{
"memory_type": "opi_opi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dout",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M OPI Flash + PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3ser-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,50 @@
{
"build": {
"arduino":{
"memory_type": "opi_opi"
},
"core": "esp32",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"f_boot": "120000000L",
"boot": "opi",
"flash_mode": "dout",
"mcu": "esp32s3",
"variant": "esp32s3",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M -DESP32S3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M OPI Flash + PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3ser-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,48 @@
{
"build": {
"arduino":{
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M Flash OPI PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3ser-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,50 @@
{
"build": {
"arduino":{
"memory_type": "qio_opi"
},
"core": "esp32",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"f_boot": "120000000L",
"boot": "qio",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M -DESP32S3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M QIO Flash + OPI PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3ser-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,48 @@
{
"build": {
"arduino":{
"memory_type": "qio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M -DESP32S3",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32s3",
"variant": "esp32s3",
"partitions": "partitions/esp32_partition_app2880k_fs320k.csv"
},
"connectivity": [
"wifi",
"bluetooth",
"ethernet"
],
"debug": {
"openocd_target": "esp32s3.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-S3 >= 4M Flash QSPI PSRAM, Tasmota 2880k Code/OTA, 320k FS",
"upload": {
"arduino": {
"flash_extra_images": [
[
"0x10000",
"tasmota32s3ser-safeboot.bin"
]
]
},
"flash_size": "4MB",
"maximum_ram_size": 327680,
"maximum_size": 4194304,
"require_upload_port": true,
"speed": 460800
},
"download": {
"speed": 230400
},
"url": "https://docs.espressif.com/projects/esp-idf/en/latest/esp32s3/hw-reference/esp32s3/",
"vendor": "Espressif"
}

View File

@ -0,0 +1,30 @@
{
"build": {
"arduino": {
"ldscript": "eagle.flash.16m14m.ld"
},
"core": "esp8266",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_16M -DESP8266_16M14M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
"mcu": "esp8266",
"variant": "generic"
},
"connectivity": [
"wifi"
],
"frameworks": [
"arduino"
],
"name": "Espressif Generic ESP8266 Tasmota 1M sketch 1M OTA 14M FS",
"upload": {
"maximum_ram_size": 81920,
"maximum_size": 995326,
"require_upload_port": true,
"resetmethod": "ck",
"speed": 115200
},
"url": "http://www.esp8266.com/wiki/doku.php?id=esp8266-module-family",
"vendor": "Espressif"
}

View File

@ -4,7 +4,7 @@
"ldscript": "eagle.flash.1m.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_1M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_1M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
@ -15,9 +15,7 @@
"wifi"
],
"frameworks": [
"arduino",
"esp8266-rtos-sdk",
"esp8266-nonos-sdk"
"arduino"
],
"name": "Espressif Generic ESP8266 Tasmota 1M sketch NO FS",
"upload": {

View File

@ -4,7 +4,7 @@
"ldscript": "eagle.flash.2m1m.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_2M -DESP8266_2M1M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_2M -DESP8266_2M1M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
@ -15,9 +15,7 @@
"wifi"
],
"frameworks": [
"arduino",
"esp8266-rtos-sdk",
"esp8266-nonos-sdk"
"arduino"
],
"name": "Espressif Generic ESP8266 Tasmota 1M sketch 1M FS",
"upload": {

View File

@ -4,7 +4,7 @@
"ldscript": "eagle.flash.2m256.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_2M -DESP8266_2M256",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_2M -DESP8266_2M256",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
@ -15,9 +15,7 @@
"wifi"
],
"frameworks": [
"arduino",
"esp8266-rtos-sdk",
"esp8266-nonos-sdk"
"arduino"
],
"name": "Espressif Generic ESP8266 Tasmota 1M sketch 772k OTA 256k FS",
"upload": {

View File

@ -4,7 +4,7 @@
"ldscript": "eagle.flash.4m2m.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_4M2M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_4M2M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
@ -15,9 +15,7 @@
"wifi"
],
"frameworks": [
"arduino",
"esp8266-rtos-sdk",
"esp8266-nonos-sdk"
"arduino"
],
"name": "Espressif Generic ESP8266 Tasmota 1M sketch 1M OTA 2M FS",
"upload": {

View File

@ -4,7 +4,7 @@
"ldscript": "eagle.flash.4m3m.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_4M3M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_4M3M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
@ -15,9 +15,7 @@
"wifi"
],
"frameworks": [
"arduino",
"esp8266-rtos-sdk",
"esp8266-nonos-sdk"
"arduino"
],
"name": "Espressif Generic ESP8266 Tasmota 1M sketch 3M FS",
"upload": {

View File

@ -4,7 +4,7 @@
"ldscript": "eagle.flash.2m256.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_2M -DESP8266_2M256",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_2M -DESP8266_2M256",
"f_cpu": "160000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
@ -15,9 +15,7 @@
"wifi"
],
"frameworks": [
"arduino",
"esp8266-rtos-sdk",
"esp8266-nonos-sdk"
"arduino"
],
"name": "Sonoff ZbBridge Tasmota 1M sketch 772k OTA 256k FS",
"upload": {

View File

@ -58,20 +58,22 @@
#define FSPI_HOST SPI2_HOST
#define HSPI_HOST SPI3_HOST
#define VSPI_HOST SPI3_HOST
#ifndef REG_SPI_BASE
#define REG_SPI_BASE(i) (DR_REG_SPI1_BASE + (((i)>1) ? (((i)* 0x1000) + 0x20000) : (((~(i)) & 1)* 0x1000 )))
// SPI_MOSI_DLEN_REG is not defined anymore in esp32s3, instead use SPI_MS_DLEN_REG
// SPI_MOSI_DLEN_REG is not defined anymore in esp32s3
#define SPI_MOSI_DLEN_REG(x) SPI_MS_DLEN_REG(x)
#endif // REG_SPI_BASE
#elif CONFIG_IDF_TARGET_ESP32C3
#elif CONFIG_IDF_TARGET_ESP32C2 || CONFIG_IDF_TARGET_ESP32C3 || CONFIG_IDF_TARGET_ESP32C6
#define SPI_HOST SPI1_HOST
#define HSPI_HOST SPI2_HOST
#define VSPI_HOST SPI2_HOST /* No SPI3_host on C3 */
// fix a bug in esp-idf 4.4 for esp32c3
#ifndef REG_SPI_BASE
#define REG_SPI_BASE(i) (DR_REG_SPI1_BASE + (((i)>1) ? (((i)* 0x1000) + 0x20000) : (((~(i)) & 1)* 0x1000 )))
// SPI_MOSI_DLEN_REG is not defined anymore in esp32c3, instead use SPI_MS_DLEN_REG
#define VSPI_HOST SPI2_HOST /* No SPI3_host on C2/C6 */
#define VSPI SPI
// SPI_MOSI_DLEN_REG is not defined anymore
#define SPI_MOSI_DLEN_REG(x) SPI_MS_DLEN_REG(x)
#endif // REG_SPI_BASE
#endif // TARGET
// This trick makes sure that 'lto' optimizer does not inline `delay()
// so we can override it with `-Wl,--wrap=delay` linker directive
#ifdef __cplusplus
extern "C"
#endif // _cplusplus
void delay(__UINT32_TYPE__ ms) __attribute__((noinline)) __attribute__ ((noclone));

View File

@ -8,7 +8,7 @@ Automatic payload encryption is applied using the WiFi-password1 as the key. A m
As ACK/NACK messages seem to be not reliable on both ESP-platforms, the method "send-and-pray" is used.
## Working priciple
## Working principle
An ESP32 is needed as gateway/broker to connect the nodes (typically an ESP8266) to the WLAN. The ESP32 will receive the MQTT-topic of every node and subscribe to it as a proxy.
If a MQTT-message in the form of 'cmnd/node_topic/...' is received, the broker will automatically send this to the referring node via ESP-NOW.

View File

@ -1,7 +0,0 @@
name=DnsClient
version=1.0
author=MCQN Ltd, Theo Arends
maintainer=Theo
sentence=Dns client allowing timeout selection.
paragraph=This class uses WifiUdp.
architectures=esp8266,esp32

View File

@ -1,334 +0,0 @@
/*
DnsClient.cpp - DNS client for Arduino
SPDX-FileCopyrightText: 2009-2010 MCQN Ltd. and Theo Arends
SPDX-License-Identifier: GPL-3.0-only
*/
// Arduino DNS client for WizNet5100-based Ethernet shield
// (c) Copyright 2009-2010 MCQN Ltd.
// Released under Apache License, version 2.0
#include "DnsClient.h"
// Various flags and header field values for a DNS message
#define UDP_HEADER_SIZE 8
#define DNS_HEADER_SIZE 12
#define TTL_SIZE 4
#define QUERY_FLAG (0)
#define RESPONSE_FLAG (1<<15)
#define QUERY_RESPONSE_MASK (1<<15)
#define OPCODE_STANDARD_QUERY (0)
#define OPCODE_INVERSE_QUERY (1<<11)
#define OPCODE_STATUS_REQUEST (2<<11)
#define OPCODE_MASK (15<<11)
#define AUTHORITATIVE_FLAG (1<<10)
#define TRUNCATION_FLAG (1<<9)
#define RECURSION_DESIRED_FLAG (1<<8)
#define RECURSION_AVAILABLE_FLAG (1<<7)
#define RESP_NO_ERROR (0)
#define RESP_FORMAT_ERROR (1)
#define RESP_SERVER_FAILURE (2)
#define RESP_NAME_ERROR (3)
#define RESP_NOT_IMPLEMENTED (4)
#define RESP_REFUSED (5)
#define RESP_MASK (15)
#define TYPE_A (0x0001)
#define CLASS_IN (0x0001)
#define LABEL_COMPRESSION_MASK (0xC0)
// Port number that DNS servers listen on
#define DNS_PORT 53
// Possible return codes from ProcessResponse
#define SUCCESS 1
#define TIMED_OUT -1
#define INVALID_SERVER -2
#define TRUNCATED -3
#define INVALID_RESPONSE -4
#ifndef htons
#define htons(x) ( ((x)<< 8 & 0xFF00) | ((x)>> 8 & 0x00FF) )
#endif
void DNSClient::begin(const IPAddress& aDNSServer) {
iDNSServer = aDNSServer;
iRequestId = 0;
}
void DNSClient::setTimeout(uint32_t aTimeout) {
iTimeout = aTimeout;
}
int DNSClient::getHostByName(const char* aHostname, IPAddress& aResult) {
// See if it's a numeric IP address
if (aResult.fromString(aHostname)) {
// It is, our work here is done
return SUCCESS;
}
// Check we've got a valid DNS server to use
if ((0xFFFFFFFF == (uint32_t)iDNSServer) || (0 == (uint32_t)iDNSServer)) {
return INVALID_SERVER;
}
int ret = 0;
// Find a socket to use
if (iUdp.begin(1024+(millis() & 0xF)) == 1) {
// Try up to three times
int retries = 0;
// while ((retries < 3) && (ret <= 0)) {
// Send DNS request
ret = iUdp.beginPacket(iDNSServer, DNS_PORT);
if (ret != 0) {
// Now output the request data
ret = BuildRequest(aHostname);
if (ret != 0) {
// And finally send the request
ret = iUdp.endPacket();
if (ret != 0) {
// Now wait for a response
int wait_retries = 0;
ret = TIMED_OUT;
while ((wait_retries < 3) && (ret == TIMED_OUT)) {
ret = ProcessResponse(iTimeout, aResult);
wait_retries++;
}
}
}
}
retries++;
// }
// We're done with the socket now
iUdp.stop();
}
return ret;
}
int DNSClient::BuildRequest(const char* aName) {
// Build header
// 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
// +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
// | ID |
// +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
// |QR| Opcode |AA|TC|RD|RA| Z | RCODE |
// +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
// | QDCOUNT |
// +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
// | ANCOUNT |
// +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
// | NSCOUNT |
// +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
// | ARCOUNT |
// +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+
// As we only support one request at a time at present, we can simplify
// some of this header
iRequestId = millis(); // generate a random ID
uint16_t twoByteBuffer;
// FIXME We should also check that there's enough space available to write to, rather
// FIXME than assume there's enough space (as the code does at present)
iUdp.write((uint8_t*)&iRequestId, sizeof(iRequestId));
twoByteBuffer = htons(QUERY_FLAG | OPCODE_STANDARD_QUERY | RECURSION_DESIRED_FLAG);
iUdp.write((uint8_t*)&twoByteBuffer, sizeof(twoByteBuffer));
twoByteBuffer = htons(1); // One question record
iUdp.write((uint8_t*)&twoByteBuffer, sizeof(twoByteBuffer));
twoByteBuffer = 0; // Zero answer records
iUdp.write((uint8_t*)&twoByteBuffer, sizeof(twoByteBuffer));
iUdp.write((uint8_t*)&twoByteBuffer, sizeof(twoByteBuffer));
// and zero additional records
iUdp.write((uint8_t*)&twoByteBuffer, sizeof(twoByteBuffer));
// Build question
const char* start =aName;
const char* end =start;
uint8_t len;
// Run through the name being requested
while (*end) {
// Find out how long this section of the name is
end = start;
while (*end && (*end != '.') ) {
end++;
}
if (end-start > 0) {
// Write out the size of this section
len = end-start;
iUdp.write(&len, sizeof(len));
// And then write out the section
iUdp.write((uint8_t*)start, end-start);
}
start = end+1;
}
// We've got to the end of the question name, so terminate it with a zero-length section
len = 0;
iUdp.write(&len, sizeof(len));
// Finally the type and class of question
twoByteBuffer = htons(TYPE_A);
iUdp.write((uint8_t*)&twoByteBuffer, sizeof(twoByteBuffer));
twoByteBuffer = htons(CLASS_IN); // Internet class of question
iUdp.write((uint8_t*)&twoByteBuffer, sizeof(twoByteBuffer));
// Success! Everything buffered okay
return SUCCESS;
}
int DNSClient::ProcessResponse(uint32_t aTimeout, IPAddress& aAddress) {
uint32_t startTime = millis();
// Wait for a response packet
while(iUdp.parsePacket() <= 0) {
if ((millis() - startTime) > aTimeout) {
return TIMED_OUT;
}
delay(20);
}
// We've had a reply!
// Read the UDP header
uint8_t header[DNS_HEADER_SIZE]; // Enough space to reuse for the DNS header
// Check that it's a response from the right server and the right port
if ( (iDNSServer != iUdp.remoteIP()) || (iUdp.remotePort() != DNS_PORT) ) {
// It's not from who we expected
return INVALID_SERVER;
}
// Read through the rest of the response
if (iUdp.available() < DNS_HEADER_SIZE) {
return TRUNCATED;
}
iUdp.read(header, DNS_HEADER_SIZE);
uint16_t staging; // Staging used to avoid type-punning warnings
memcpy(&staging, &header[2], sizeof(uint16_t));
uint16_t header_flags = htons(staging);
memcpy(&staging, &header[0], sizeof(uint16_t));
// Check that it's a response to this request
if ( (iRequestId != staging) || ((header_flags & QUERY_RESPONSE_MASK) != (uint16_t)RESPONSE_FLAG) ) {
// Mark the entire packet as read
iUdp.flush();
return INVALID_RESPONSE;
}
// Check for any errors in the response (or in our request)
// although we don't do anything to get round these
if ( (header_flags & TRUNCATION_FLAG) || (header_flags & RESP_MASK) ) {
// Mark the entire packet as read
iUdp.flush();
return -5; // INVALID_RESPONSE;
}
// And make sure we've got (at least) one answer
memcpy(&staging, &header[6], sizeof(uint16_t));
uint16_t answerCount = htons(staging);
if (answerCount == 0 ) {
// Mark the entire packet as read
iUdp.flush();
return -6; // INVALID_RESPONSE;
}
// Skip over any questions
memcpy(&staging, &header[4], sizeof(uint16_t));
for (uint32_t i = 0; i < htons(staging); i++) {
// Skip over the name
uint8_t len;
do {
iUdp.read(&len, sizeof(len));
if (len > 0) {
// Don't need to actually read the data out for the string, just
// advance ptr to beyond it
while(len--) {
iUdp.read(); // we don't care about the returned byte
}
}
} while (len != 0);
// Now jump over the type and class
for (uint32_t i = 0; i < 4; i++) {
iUdp.read(); // we don't care about the returned byte
}
}
// Now we're up to the bit we're interested in, the answer
// There might be more than one answer (although we'll just use the first
// type A answer) and some authority and additional resource records but
// we're going to ignore all of them.
for (uint32_t i = 0; i < answerCount; i++) {
// Skip the name
uint8_t len;
do {
iUdp.read(&len, sizeof(len));
if ((len & LABEL_COMPRESSION_MASK) == 0) {
// It's just a normal label
if (len > 0) {
// And it's got a length
// Don't need to actually read the data out for the string,
// just advance ptr to beyond it
while(len--) {
iUdp.read(); // we don't care about the returned byte
}
}
} else {
// This is a pointer to a somewhere else in the message for the
// rest of the name. We don't care about the name, and RFC1035
// says that a name is either a sequence of labels ended with a
// 0 length octet or a pointer or a sequence of labels ending in
// a pointer. Either way, when we get here we're at the end of
// the name
// Skip over the pointer
iUdp.read(); // we don't care about the returned byte
// And set len so that we drop out of the name loop
len = 0;
}
} while (len != 0);
// Check the type and class
uint16_t answerType;
uint16_t answerClass;
iUdp.read((uint8_t*)&answerType, sizeof(answerType));
iUdp.read((uint8_t*)&answerClass, sizeof(answerClass));
// Ignore the Time-To-Live as we don't do any caching
for (uint32_t i = 0; i < TTL_SIZE; i++) {
iUdp.read(); // We don't care about the returned byte
}
// And read out the length of this answer
// Don't need header_flags anymore, so we can reuse it here
iUdp.read((uint8_t*)&header_flags, sizeof(header_flags));
if ( (htons(answerType) == TYPE_A) && (htons(answerClass) == CLASS_IN) ) {
if (htons(header_flags) != 4) {
// It's a weird size
// Mark the entire packet as read
iUdp.flush();
return -9; // INVALID_RESPONSE;
}
iUdp.read(aAddress.raw_address(), 4);
// uint32_t address;
// iUdp.read((uint8_t*)&address, sizeof(address));
// aAddress = (IPAddress)address;
// Check we've got a valid address
if ((0xFFFFFFFF != (uint32_t)aAddress) && (0 != (uint32_t)aAddress)) {
return SUCCESS;
}
} else {
// This isn't an answer type we're after, move onto the next one
for (uint32_t i = 0; i < htons(header_flags); i++) {
iUdp.read(); // we don't care about the returned byte
}
}
}
// Mark the entire packet as read
iUdp.flush();
// If we get here then we haven't found an answer
return -10; // INVALID_RESPONSE;
}

View File

@ -1,42 +0,0 @@
/*
DnsClient.h - DNS client for Arduino
SPDX-FileCopyrightText: 2009-2010 MCQN Ltd. and Theo Arends
SPDX-License-Identifier: GPL-3.0-only
*/
// Arduino DNS client for WizNet5100-based Ethernet shield
// (c) Copyright 2009-2010 MCQN Ltd.
// Released under Apache License, version 2.0
#ifndef DNSClient_h
#define DNSClient_h
#include <Arduino.h>
#include <IPAddress.h>
#include <WiFiUdp.h>
class DNSClient {
public:
void begin(const IPAddress& aDNSServer);
void setTimeout(uint32_t aTimeout = 1000);
/* Resolve the given hostname to an IP address.
@param aHostname Name to be resolved
@param aResult IPAddress structure to store the returned IP address
@result 1 if aIPAddrString was successfully converted to an IP address, else error code
*/
int getHostByName(const char* aHostname, IPAddress& aResult);
protected:
int BuildRequest(const char* aName);
int ProcessResponse(uint32_t aTimeout, IPAddress& aAddress);
IPAddress iDNSServer;
uint16_t iRequestId;
uint16_t iTimeout = 1000;
WiFiUDP iUdp;
};
#endif

View File

@ -79,6 +79,12 @@ public:
_buf->buf[offset] = data;
}
}
void set16(const size_t offset, const uint16_t data) {
if (offset + 1 < _buf->len) {
_buf->buf[offset] = data & 0xFF;
_buf->buf[offset+1] = (data >> 8) & 0xFF;
}
}
size_t add8(const uint8_t data) { // append 8 bits value
if (_buf->len < _buf->size) { // do we have room for 1 byte

View File

@ -157,6 +157,42 @@ char * U64toHex(uint64_t value, char *str) {
}
*/
char * ToBinary(uint32_t value, char *str, int32_t digits) {
if (digits > 32) { digits = 32; }
if (digits < 1) { digits = 1; }
int32_t digits_to_one = 1; // how many digits until we find the last `1`
str[32] = 0; // end of string
for (uint32_t i=0; i<32; i++) { // 32 digits in uint32_t
if ((value & 1) && (i+1 > digits_to_one)) {
digits_to_one = i+1;
}
str[31 - i] = (char)(value & 1)+'0';
value = value >> 1;
}
// adjust digits to always show the total value
if (digits_to_one > digits) { digits = digits_to_one; }
if (digits < 32) {
memmove(str, str + 32 - digits, digits + 1);
}
return str;
}
char * U64toStr(uint64_t value, char *str) {
// str must be at least 24 bytes long
uint32_t i = 23;
str[--i] = 0; // end of string
do {
uint64_t m = value;
value /= 10;
char c = m - 10 * value;
str[--i] = c < 10 ? c + '0' : c + 'A' - 10;
} while (value);
if (i) {
memmove(str, str +i, 23 -i);
}
return str;
}
char * U64toHex(uint64_t value, char *str, uint32_t zeroleads) {
// str must be at least 17 bytes long
str[16] = 0; // end of string
@ -208,9 +244,12 @@ char* ToHex_P(const unsigned char * in, size_t insz, char * out, size_t outsz, c
// get a fresh malloc allocated string based on the current pointer (can be in PROGMEM)
// It is the caller's responsibility to free the memory
//
// Returns nullptr if something went wrong
char * copyStr(const char * str) {
if (str == nullptr) { return nullptr; }
char * cpy = (char*) malloc(strlen_P(str) + 1);
if (cpy == nullptr) { return nullptr; } // something went wrong
strcpy_P(cpy, str);
return cpy;
}
@ -224,13 +263,15 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
// iterate on fmt to extract arguments and patch them in place
char * fmt_cpy = copyStr(fmt_P);
if (fmt_cpy == nullptr) { return 0; }
if (fmt_cpy == nullptr) { return 0; } // we couldn't copy the format, abort
char * fmt = fmt_cpy;
int32_t ret = 0; // return 0 if unsuccessful
bool aborted = true; // did something went wrong?
const uint32_t ALLOC_SIZE = 12;
static const char * allocs[ALLOC_SIZE] = {}; // initialized to zeroes
uint32_t alloc_idx = 0;
static char hex[20]; // buffer used for 64 bits, favor RAM instead of stack to remove pressure
static char hex[34]; // buffer used for 64 bits, favor RAM instead of stack to remove pressure
for (; *fmt != 0; ++fmt) {
int32_t decimals = -2; // default to 2 decimals and remove trailing zeros
@ -277,6 +318,7 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
if (cur_val < min_valid_ptr) { new_val_str = ext_invalid_mem; }
else if (decimals > 0) {
char * hex_char = (char*) malloc(decimals*2 + 2);
if (hex_char == nullptr) { goto free_allocs; }
ToHex_P((const uint8_t *)cur_val, decimals, hex_char, decimals*2 + 2);
new_val_str = hex_char;
allocs[alloc_idx++] = new_val_str;
@ -284,6 +326,7 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
}
}
break;
case 'B': // Pointer to SBuffer
{
if (cur_val < min_valid_ptr) { new_val_str = ext_invalid_mem; }
@ -292,6 +335,7 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
size_t buf_len = (&buf != nullptr) ? buf.len() : 0;
if (buf_len) {
char * hex_char = (char*) malloc(buf_len*2 + 2);
if (hex_char == nullptr) { goto free_allocs; }
ToHex_P(buf.getBuffer(), buf_len, hex_char, buf_len*2 + 2);
new_val_str = hex_char;
allocs[alloc_idx++] = new_val_str;
@ -299,6 +343,39 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
}
}
break;
// '%_b' outputs a uint32_t to binary
// '%8_b' outputs a uint8_t to binary
case 'b': // Binary, decimals indicates the zero prefill
{
ToBinary(cur_val, hex, decimals);
new_val_str = copyStr(hex);
if (new_val_str == nullptr) { goto free_allocs; }
allocs[alloc_idx++] = new_val_str;
}
break;
/*
case 'V': // 2-byte values, decimals indicates the length, default 2
{
if (decimals < 0) { decimals = 0; }
if (cur_val < min_valid_ptr) { new_val_str = ext_invalid_mem; }
else if (decimals > 0) {
uint32_t val_size = decimals*6 + 2;
char * val_char = (char*) malloc(val_size);
if (val_char == nullptr) { goto free_allocs; }
val_char[0] = '\0';
for (uint32_t count = 0; count < decimals; count++) {
uint32_t value = pgm_read_byte((const uint8_t *)cur_val +1) << 8 | pgm_read_byte((const uint8_t *)cur_val);
snprintf_P(val_char, val_size, PSTR("%s%s%d"), val_char, (count)?",":"", value);
cur_val += 2;
}
new_val_str = val_char;
allocs[alloc_idx++] = new_val_str;
// Serial.printf("> values=%s\n", hex_char);
}
}
break;
*/
// case 'D':
// decimals = *(int32_t*)cur_val_ptr;
// break;
@ -307,6 +384,7 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
case 'I': // Input is `uint32_t` 32 bits IP address, output is decimal dotted address
{
char * ip_str = (char*) malloc(16);
if (ip_str == nullptr) { goto free_allocs; }
snprintf_P(ip_str, 16, PSTR("%u.%u.%u.%u"), cur_val & 0xFF, (cur_val >> 8) & 0xFF, (cur_val >> 16) & 0xFF, (cur_val >> 24) & 0xFF);
new_val_str = ip_str;
allocs[alloc_idx++] = new_val_str;
@ -335,7 +413,8 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
if (isnan(number) || isinf(number)) {
new_val_str = "null";
} else {
dtostrf(*(float*)cur_val, (decimals + 2), decimals, hex);
uint32_t len = (decimals) ? decimals +2 : 1;
dtostrf(*(float*)cur_val, len, decimals, hex);
if (truncate) {
uint32_t last = strlen(hex) - 1;
@ -349,11 +428,13 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
}
}
new_val_str = copyStr(hex);
if (new_val_str == nullptr) { goto free_allocs; }
allocs[alloc_idx++] = new_val_str;
}
}
}
break;
// '%_X' outputs a 64 bits unsigned int to uppercase HEX with 16 digits
case 'X': // input is `uint64_t*`, printed as 16 hex digits (no prefix 0x)
{
@ -362,24 +443,25 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
if ((decimals < 0) || (decimals > 16)) { decimals = 16; }
U64toHex(*(uint64_t*)cur_val, hex, decimals);
new_val_str = copyStr(hex);
if (new_val_str == nullptr) { goto free_allocs; }
allocs[alloc_idx++] = new_val_str;
}
}
break;
// Trying to do String allocation alternatives, but not as interesting as I thought in the beginning
// case 's':
// {
// new_val_str = copyStr(((String*)cur_val)->c_str());
// allocs[alloc_idx++] = new_val_str;
// }
// break;
// case 'S':
// {
// funcString_t * func_str = (funcString_t*) cur_val;
// new_val_str = copyStr((*func_str)().c_str());
// allocs[alloc_idx++] = new_val_str;
// }
// break;
// '%_U' outputs a 64 bits unsigned int to decimal
case 'U': // input is `uint64_t*`, printed as decimal
{
if (cur_val < min_valid_ptr) { new_val_str = ext_invalid_mem; }
else {
U64toStr(*(uint64_t*)cur_val, hex);
new_val_str = copyStr(hex);
if (new_val_str == nullptr) { goto free_allocs; }
allocs[alloc_idx++] = new_val_str;
}
}
break;
}
*cur_val_ptr = new_val_str;
*fmt = 's'; // replace `%_X` with `%0s` to display a string instead
@ -391,9 +473,9 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
}
}
// Serial.printf("> format_final=%s\n", fmt_cpy); Serial.flush();
int32_t ret = 0; // return 0 if unsuccessful
if (out_buf != nullptr) {
ret = vsnprintf_P(out_buf, buf_len, fmt_cpy, va_cpy);
aborted = false; // we completed without malloc error
} else {
// if there is no output buffer, we allocate one on the heap
// first we do a dry-run to know the target size
@ -406,12 +488,18 @@ int32_t ext_vsnprintf_P(char * out_buf, size_t buf_len, const char * fmt_P, va_l
allocated_buf[0] = 0; // default to empty string
vsnprintf_P(allocated_buf, target_len + 1, fmt_cpy, va_cpy);
ret = (int32_t) allocated_buf;
aborted = false; // we completed without malloc error
}
}
}
va_end(va_cpy);
free_allocs:
if (aborted && out_buf != nullptr) { // if something went wrong, set output string to empty string to avoid corrupt data
*out_buf = '\0';
}
// disallocated all temporary strings
for (uint32_t i = 0; i < alloc_idx; i++) {
free((void*)allocs[i]); // it is ok to call free() on nullptr so we don't test for nullptr first

View File

@ -66,11 +66,14 @@ void test_ext_snprintf_P(void) {
Serial.printf("--> out=%s\n", c);
ext_snprintf_P(c, sizeof(c), "Float default=%*_f, int(3)=%*_f, int(3)=%*_f, int(3)=%*_f, 6dec=%*_f", 1, &fpi, 4, &f3, -4, &f3, -4, &f31, -8, &fpi);
Serial.printf("--> out=%s\n", c);
uint64_t u641 = 0x1122334455667788LL;
uint64_t u642 = 0x0123456789ABCDEFLL;
uint64_t u643 = 0xFEDCBA9876543210LL;
uint64_t u641 = 0x1122334455667788LL; // 1234605616436508552
uint64_t u642 = 0x0123456789ABCDEFLL; // 81985529216486895
uint64_t u643 = 0xFEDCBA9876543210LL; // 18364758544493064720
ext_snprintf_P(c, sizeof(c), "Int64 0x%_X 0x%_X 0x%_X", &u641, &u642, &u643);
Serial.printf("--> out=%s\n", c);
ext_snprintf_P(c, sizeof(c), "Int64 decimal %_U %_U %_U", &u641, &u642, &u643);
Serial.printf("--> out=%s\n", c);
// ext_snprintf_P(c, sizeof(c), "Float default=%*_f, int(3)=%*_f, int(3)=%*_f, int(3)=%*_f, 6dec=%*_f", &fpi, &f3, &f3, &f31, &fpi);

View File

@ -7,6 +7,8 @@
Created by Ivan Seidel Gomes, March, 2013.
Released into the public domain.
20240118 - Removed sort functions not used by Tasmota (@arendst)
*/
@ -39,8 +41,6 @@ protected:
ListNode<T>* getNode(int index);
ListNode<T>* findEndOfSortedString(ListNode<T> *p, int (*cmp)(T &, T &));
public:
LinkedList();
LinkedList(int sizeIndex, T _t); //initiate list size and default value
@ -96,11 +96,6 @@ public:
*/
virtual void clear();
/*
Sort the list, given a comparison function
*/
virtual void sort(int (*cmp)(T &, T &));
// add support to array brakets [] operator
inline T& operator[](int index);
inline T& operator[](size_t& i) { return this->get(i); }
@ -347,73 +342,4 @@ void LinkedList<T>::clear(){
shift();
}
template<typename T>
void LinkedList<T>::sort(int (*cmp)(T &, T &)){
if(_size < 2) return; // trivial case;
for(;;) {
ListNode<T> **joinPoint = &root;
while(*joinPoint) {
ListNode<T> *a = *joinPoint;
ListNode<T> *a_end = findEndOfSortedString(a, cmp);
if(!a_end->next ) {
if(joinPoint == &root) {
last = a_end;
isCached = false;
return;
}
else {
break;
}
}
ListNode<T> *b = a_end->next;
ListNode<T> *b_end = findEndOfSortedString(b, cmp);
ListNode<T> *tail = b_end->next;
a_end->next = NULL;
b_end->next = NULL;
while(a && b) {
if(cmp(a->data, b->data) <= 0) {
*joinPoint = a;
joinPoint = &a->next;
a = a->next;
}
else {
*joinPoint = b;
joinPoint = &b->next;
b = b->next;
}
}
if(a) {
*joinPoint = a;
while(a->next) a = a->next;
a->next = tail;
joinPoint = &a->next;
}
else {
*joinPoint = b;
while(b->next) b = b->next;
b->next = tail;
joinPoint = &b->next;
}
}
}
}
template<typename T>
ListNode<T>* LinkedList<T>::findEndOfSortedString(ListNode<T> *p, int (*cmp)(T &, T &)) {
while(p->next && cmp(p->data, p->next->data) <= 0) {
p = p->next;
}
return p;
}
#endif

View File

@ -0,0 +1,419 @@
/*
LinkedList.h - V1.1 - Generic LinkedList implementation
Works better with FIFO, because LIFO will need to
search the entire List to find the last one;
For instructions, go to https://github.com/ivanseidel/LinkedList
Created by Ivan Seidel Gomes, March, 2013.
Released into the public domain.
*/
#ifndef LinkedList_h
#define LinkedList_h
#include <stddef.h>
template<class T>
struct ListNode
{
T data;
ListNode<T> *next;
};
template <typename T>
class LinkedList{
protected:
int _size;
ListNode<T> *root;
ListNode<T> *last;
// Helps "get" method, by saving last position
ListNode<T> *lastNodeGot;
int lastIndexGot;
// isCached should be set to FALSE
// everytime the list suffer changes
bool isCached;
ListNode<T>* getNode(int index);
ListNode<T>* findEndOfSortedString(ListNode<T> *p, int (*cmp)(T &, T &));
public:
LinkedList();
LinkedList(int sizeIndex, T _t); //initiate list size and default value
~LinkedList();
/*
Returns current size of LinkedList
*/
virtual int size();
/*
Adds a T object in the specified index;
Unlink and link the LinkedList correcly;
Increment _size
*/
virtual bool add(int index, T);
/*
Adds a T object in the end of the LinkedList;
Increment _size;
*/
virtual bool add(T);
/*
Adds a T object in the start of the LinkedList;
Increment _size;
*/
virtual bool unshift(T);
/*
Set the object at index, with T;
*/
virtual bool set(int index, T);
/*
Remove object at index;
If index is not reachable, returns false;
else, decrement _size
*/
virtual T remove(int index);
/*
Remove last object;
*/
virtual T pop();
/*
Remove first object;
*/
virtual T shift();
/*
Get the index'th element on the list;
Return Element if accessible,
else, return false;
*/
virtual T get(int index);
/*
Clear the entire array
*/
virtual void clear();
/*
Sort the list, given a comparison function
*/
virtual void sort(int (*cmp)(T &, T &));
// add support to array brakets [] operator
inline T& operator[](int index);
inline T& operator[](size_t& i) { return this->get(i); }
inline const T& operator[](const size_t& i) const { return this->get(i); }
};
// Initialize LinkedList with false values
template<typename T>
LinkedList<T>::LinkedList()
{
root=NULL;
last=NULL;
_size=0;
lastNodeGot = root;
lastIndexGot = 0;
isCached = false;
}
// Clear Nodes and free Memory
template<typename T>
LinkedList<T>::~LinkedList()
{
ListNode<T>* tmp;
while(root!=NULL)
{
tmp=root;
root=root->next;
delete tmp;
}
last = NULL;
_size=0;
isCached = false;
}
/*
Actualy "logic" coding
*/
template<typename T>
ListNode<T>* LinkedList<T>::getNode(int index){
int _pos = 0;
ListNode<T>* current = root;
// Check if the node trying to get is
// immediatly AFTER the previous got one
if(isCached && lastIndexGot <= index){
_pos = lastIndexGot;
current = lastNodeGot;
}
while(_pos < index && current){
current = current->next;
_pos++;
}
// Check if the object index got is the same as the required
if(_pos == index){
isCached = true;
lastIndexGot = index;
lastNodeGot = current;
return current;
}
return NULL;
}
template<typename T>
int LinkedList<T>::size(){
return _size;
}
template<typename T>
LinkedList<T>::LinkedList(int sizeIndex, T _t){
for (int i = 0; i < sizeIndex; i++){
add(_t);
}
}
template<typename T>
bool LinkedList<T>::add(int index, T _t){
if(index >= _size)
return add(_t);
if(index == 0)
return unshift(_t);
ListNode<T> *tmp = new ListNode<T>(),
*_prev = getNode(index-1);
tmp->data = _t;
tmp->next = _prev->next;
_prev->next = tmp;
_size++;
isCached = false;
return true;
}
template<typename T>
bool LinkedList<T>::add(T _t){
ListNode<T> *tmp = new ListNode<T>();
tmp->data = _t;
tmp->next = NULL;
if(root){
// Already have elements inserted
last->next = tmp;
last = tmp;
}else{
// First element being inserted
root = tmp;
last = tmp;
}
_size++;
isCached = false;
return true;
}
template<typename T>
bool LinkedList<T>::unshift(T _t){
if(_size == 0)
return add(_t);
ListNode<T> *tmp = new ListNode<T>();
tmp->next = root;
tmp->data = _t;
root = tmp;
_size++;
isCached = false;
return true;
}
template<typename T>
T& LinkedList<T>::operator[](int index) {
return getNode(index)->data;
}
template<typename T>
bool LinkedList<T>::set(int index, T _t){
// Check if index position is in bounds
if(index < 0 || index >= _size)
return false;
getNode(index)->data = _t;
return true;
}
template<typename T>
T LinkedList<T>::pop(){
if(_size <= 0)
return T();
isCached = false;
if(_size >= 2){
ListNode<T> *tmp = getNode(_size - 2);
T ret = tmp->next->data;
delete(tmp->next);
tmp->next = NULL;
last = tmp;
_size--;
return ret;
}else{
// Only one element left on the list
T ret = root->data;
delete(root);
root = NULL;
last = NULL;
_size = 0;
return ret;
}
}
template<typename T>
T LinkedList<T>::shift(){
if(_size <= 0)
return T();
if(_size > 1){
ListNode<T> *_next = root->next;
T ret = root->data;
delete(root);
root = _next;
_size --;
isCached = false;
return ret;
}else{
// Only one left, then pop()
return pop();
}
}
template<typename T>
T LinkedList<T>::remove(int index){
if (index < 0 || index >= _size)
{
return T();
}
if(index == 0)
return shift();
if (index == _size-1)
{
return pop();
}
ListNode<T> *tmp = getNode(index - 1);
ListNode<T> *toDelete = tmp->next;
T ret = toDelete->data;
tmp->next = tmp->next->next;
delete(toDelete);
_size--;
isCached = false;
return ret;
}
template<typename T>
T LinkedList<T>::get(int index){
ListNode<T> *tmp = getNode(index);
return (tmp ? tmp->data : T());
}
template<typename T>
void LinkedList<T>::clear(){
while(size() > 0)
shift();
}
template<typename T>
void LinkedList<T>::sort(int (*cmp)(T &, T &)){
if(_size < 2) return; // trivial case;
for(;;) {
ListNode<T> **joinPoint = &root;
while(*joinPoint) {
ListNode<T> *a = *joinPoint;
ListNode<T> *a_end = findEndOfSortedString(a, cmp);
if(!a_end->next ) {
if(joinPoint == &root) {
last = a_end;
isCached = false;
return;
}
else {
break;
}
}
ListNode<T> *b = a_end->next;
ListNode<T> *b_end = findEndOfSortedString(b, cmp);
ListNode<T> *tail = b_end->next;
a_end->next = NULL;
b_end->next = NULL;
while(a && b) {
if(cmp(a->data, b->data) <= 0) {
*joinPoint = a;
joinPoint = &a->next;
a = a->next;
}
else {
*joinPoint = b;
joinPoint = &b->next;
b = b->next;
}
}
if(a) {
*joinPoint = a;
while(a->next) a = a->next;
a->next = tail;
joinPoint = &a->next;
}
else {
*joinPoint = b;
while(b->next) b = b->next;
b->next = tail;
joinPoint = &b->next;
}
}
}
}
template<typename T>
ListNode<T>* LinkedList<T>::findEndOfSortedString(ListNode<T> *p, int (*cmp)(T &, T &)) {
while(p->next && cmp(p->data, p->next->data) <= 0) {
p = p->next;
}
return p;
}
#endif

View File

@ -59,9 +59,9 @@ public:
~LList() { reset(); }
// remove elements
void removeHead(void); // remove first element
T * removeHead(void); // remove first element
void reset(void); // remove all elements
void remove(const T * val);
const T * remove(const T * val);
// read the list
inline bool isEmpty(void) const { return (_head == nullptr) ? true : false; }
@ -77,6 +77,7 @@ public:
T & addHead(void);
T & addHead(const T &val);
T & addToLast(void);
T & insertAt(size_t index);
// add an element allocated externally
// memory is free by us now -- don't free it!
T & addHead(LList_elt<T> * elt);
@ -142,17 +143,20 @@ void LList<T>::reset(void) {
}
template <typename T>
void LList<T>::removeHead(void) {
T * LList<T>::removeHead(void) {
if (_head) {
T * orginal_head = &_head->_val;
LList_elt<T> * next = _head->next();
delete _head;
_head = next;
return orginal_head;
}
return nullptr;
}
template <typename T>
void LList<T>::remove(const T * val) {
if (nullptr == val) { return; }
const T * LList<T>::remove(const T * val) {
if (nullptr == val) { return val; }
// find element in chain and find pointer before
LList_elt<T> **curr_ptr = &_head;
while (*curr_ptr) {
@ -164,6 +168,7 @@ void LList<T>::remove(const T * val) {
}
curr_ptr = &((*curr_ptr)->_next); // move to next element
}
return val;
}
template <typename T>
@ -201,6 +206,27 @@ T & LList<T>::addToLast(void) {
return elt->_val;
}
template <typename T>
T & LList<T>::insertAt(size_t index) {
if (0 == index) {
return addHead(); // insert at the head
}
index--;
LList_elt<T> **curr_ptr = &_head;
size_t count = 0;
while (*curr_ptr) {
if (count == index) {
LList_elt<T> * elt = new LList_elt<T>(); // create element
elt->next((*curr_ptr)->next());
(*curr_ptr)->next(elt);
return elt->_val;
}
curr_ptr = &((*curr_ptr)->_next);
count++;
}
return addToLast();
}
template <typename T>
T & LList<T>::addToLast(LList_elt<T> * elt) {
LList_elt<T> **curr_ptr = &_head;

View File

@ -1,17 +0,0 @@
{
"name": "TasmotaSerial",
"version": "3.5.0",
"keywords": [
"serial", "io", "TasmotaSerial"
],
"description": "Implementation of software serial with hardware serial fallback for ESP8266 and ESP32.",
"repository":
{
"type": "git",
"url": "https://github.com/arendst/Tasmota/lib/TasmotaSerial"
},
"frameworks": "arduino",
"platforms": [
"espressif8266", "espressif32"
]
}

View File

@ -1,9 +0,0 @@
name=TasmotaSerial
version=3.5.0
author=Theo Arends
maintainer=Theo Arends <theo@arends.com>
sentence=Implementation of software serial with hardware serial fallback for ESP8266 and ESP32.
paragraph=
category=Signal Input/Output
url=
architectures=esp8266,esp32

View File

@ -1,476 +0,0 @@
/*
TasmotaSerial.cpp - Implementation of software serial with hardware serial fallback for Tasmota
Copyright (C) 2021 Theo Arends
This library is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <Arduino.h>
// The Arduino standard GPIO routines are not enough,
// must use some from the Espressif SDK as well
extern "C" {
#include "gpio.h"
}
#include <TasmotaSerial.h>
#ifdef ESP8266
void IRAM_ATTR callRxRead(void *self) { ((TasmotaSerial*)self)->rxRead(); };
// As the Arduino attachInterrupt has no parameter, lists of objects
// and callbacks corresponding to each possible GPIO pins have to be defined
TasmotaSerial *tms_obj_list[16];
#endif // ESP8266
#ifdef ESP32
#include "driver/uart.h"
static uint32_t tasmota_serial_uart_bitmap = 0; // Assigned UARTs
#endif // ESP32
TasmotaSerial::TasmotaSerial(int receive_pin, int transmit_pin, int hardware_fallback, int nwmode, int buffer_size) {
m_valid = false;
m_hardserial = false;
m_hardswap = false;
m_stop_bits = 1;
m_nwmode = nwmode;
serial_buffer_size = buffer_size;
m_rx_pin = receive_pin;
m_tx_pin = transmit_pin;
m_in_pos = m_out_pos = 0;
#ifdef ESP8266
if (!((isValidGPIOpin(receive_pin)) && (isValidGPIOpin(transmit_pin) || transmit_pin == 16))) {
return;
}
if (hardware_fallback && (((3 == m_rx_pin) && (1 == m_tx_pin)) || ((3 == m_rx_pin) && (-1 == m_tx_pin)) || ((-1 == m_rx_pin) && (1 == m_tx_pin)))) {
m_hardserial = true;
}
else if ((2 == hardware_fallback) && (((13 == m_rx_pin) && (15 == m_tx_pin)) || ((13 == m_rx_pin) && (-1 == m_tx_pin)) || ((-1 == m_rx_pin) && (15 == m_tx_pin)))) {
m_hardserial = true;
m_hardswap = true;
}
else {
if ((m_rx_pin < 0) && (m_tx_pin < 0)) { return; }
if (m_rx_pin > -1) {
m_buffer = (uint8_t*)malloc(serial_buffer_size);
if (m_buffer == NULL) return;
// Use getCycleCount() loop to get as exact timing as possible
m_bit_time = ESP.getCpuFreqMHz() * 1000000 / TM_SERIAL_BAUDRATE;
m_bit_start_time = m_bit_time + m_bit_time/3 - 500; // pre-compute first wait
pinMode(m_rx_pin, INPUT);
tms_obj_list[m_rx_pin] = this;
attachInterruptArg(m_rx_pin, callRxRead, this, (m_nwmode) ? CHANGE : FALLING);
}
if (m_tx_pin > -1) {
pinMode(m_tx_pin, OUTPUT);
digitalWrite(m_tx_pin, HIGH);
}
}
#endif // ESP8266
#ifdef ESP32
if ((receive_pin >= 0) && !GPIO_IS_VALID_GPIO(receive_pin)) { return; }
if ((transmit_pin >= 0) && !GPIO_IS_VALID_OUTPUT_GPIO(transmit_pin)) { return; }
m_hardserial = true;
TSerial = nullptr;
#endif // ESP32
m_valid = true;
}
void TasmotaSerial::end(bool turnOffDebug) {
#ifdef ESP8266
if (m_hardserial) {
Serial.end();
} else {
if (m_rx_pin > -1) {
detachInterrupt(m_rx_pin);
tms_obj_list[m_rx_pin] = NULL;
if (m_buffer) {
free(m_buffer);
}
}
}
#endif // ESP8266
#ifdef ESP32
// Serial.printf("TSR: Freeing UART%d\n", m_uart);
TSerial->end(turnOffDebug);
bitClear(tasmota_serial_uart_bitmap, m_uart);
#endif // ESP32
}
TasmotaSerial::~TasmotaSerial(void) {
end();
}
bool TasmotaSerial::isValidGPIOpin(int pin) {
return (pin >= -1 && pin <= 5) || (pin >= 12 && pin <= 15);
}
#ifdef ESP32
bool TasmotaSerial::freeUart(void) {
for (uint32_t i = SOC_UART_NUM -1; i >= 0; i--) {
if (0 == bitRead(tasmota_serial_uart_bitmap, i)) {
m_uart = i;
bitSet(tasmota_serial_uart_bitmap, m_uart);
return true;
}
}
return false;
}
#endif
bool TasmotaSerial::begin(uint32_t speed, uint32_t config) {
if (!m_valid) { return false; }
if (m_hardserial) {
#ifdef ESP8266
Serial.flush();
Serial.begin(speed, (SerialConfig)config);
if (m_hardswap) {
Serial.swap();
}
if (serial_buffer_size > 256) {
Serial.setRxBufferSize(serial_buffer_size);
}
#endif // ESP8266
#ifdef ESP32
if (TSerial == nullptr) { // Allow for dynamic change in baudrate or config
if (freeUart()) { // We prefer UART1 and UART2 and keep UART0 for debugging
#ifdef ARDUINO_USB_CDC_ON_BOOT
TSerial = new HardwareSerial(m_uart);
#else
if (0 == m_uart) {
Serial.flush();
Serial.end();
delay(10); // Allow time to cleanup queues - if not used hangs ESP32
TSerial = &Serial;
} else {
TSerial = new HardwareSerial(m_uart);
}
#endif // ARDUINO_USB_CDC_ON_BOOT
if (serial_buffer_size > 256) { // RX Buffer can't be resized when Serial is already running (HardwareSerial.cpp)
TSerial->setRxBufferSize(serial_buffer_size);
}
} else {
m_valid = false;
return m_valid; // As we currently only support hardware serial on ESP32 it's safe to exit here
}
}
TSerial->begin(speed, config, m_rx_pin, m_tx_pin);
// For low bit rate, below 9600, set the Full RX threshold at 10 bytes instead of the default 120
if (speed <= 9600) {
// At 9600, 10 chars are ~10ms
uart_set_rx_full_threshold(m_uart, 10);
} else if (speed < 115200) {
// At 19200, 120 chars are ~60ms
// At 76800, 120 chars are ~15ms
uart_set_rx_full_threshold(m_uart, 120);
} else {
// At 115200, 256 chars are ~20ms
// Zigbee requires to keep frames together, i.e. 256 bytes max
uart_set_rx_full_threshold(m_uart, 256);
}
// For bitrate below 115200, set the Rx time out to 6 chars instead of the default 10
if (speed < 115200) {
// At 76800 the timeout is ~1ms
uart_set_rx_timeout(m_uart, 6);
}
// Serial.printf("TSR: Using UART%d\n", m_uart);
#endif // ESP32
} else {
// Software serial fakes two stop bits if either stop bits is 2 or parity is not None
// #define UART_NB_STOP_BIT_0 0B00000000
// #define UART_NB_STOP_BIT_1 0B00010000
// #define UART_NB_STOP_BIT_15 0B00100000
// #define UART_NB_STOP_BIT_2 0B00110000
m_stop_bits = ((config &0x30) >> 5) +1;
// #define UART_PARITY_NONE 0B00000000
// #define UART_PARITY_EVEN 0B00000010
// #define UART_PARITY_ODD 0B00000011
if ((1 == m_stop_bits) && (config &0x03)) {
m_stop_bits++;
}
// Use getCycleCount() loop to get as exact timing as possible
m_bit_time = ESP.getCpuFreqMHz() * 1000000 / speed;
m_bit_start_time = m_bit_time + m_bit_time/3 - (ESP.getCpuFreqMHz() > 120 ? 700 : 500); // pre-compute first wait
m_high_speed = (speed >= 9600);
m_very_high_speed = (speed >= 50000);
}
return m_valid;
}
bool TasmotaSerial::hardwareSerial(void) {
#ifdef ESP8266
return m_hardserial;
#endif // ESP8266
#ifdef ESP32
return (0 == m_uart); // We prefer UART1 and UART2 and keep UART0 for debugging
#endif // ESP32
}
void TasmotaSerial::flush(void) {
if (m_hardserial) {
#ifdef ESP8266
Serial.flush();
#endif // ESP8266
#ifdef ESP32
TSerial->flush(); // Flushes Tx only https://github.com/espressif/arduino-esp32/pull/4263
while (TSerial->available()) { TSerial->read(); }
#endif // ESP32
} else {
m_in_pos = m_out_pos = 0;
}
}
int TasmotaSerial::peek(void) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.peek();
#endif // ESP8266
#ifdef ESP32
return TSerial->peek();
#endif // ESP32
} else {
if ((-1 == m_rx_pin) || (m_in_pos == m_out_pos)) return -1;
return m_buffer[m_out_pos];
}
}
int TasmotaSerial::read(void) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.read();
#endif // ESP8266
#ifdef ESP32
return TSerial->read();
#endif // ESP32
} else {
if ((-1 == m_rx_pin) || (m_in_pos == m_out_pos)) return -1;
uint32_t ch = m_buffer[m_out_pos];
m_out_pos = (m_out_pos +1) % serial_buffer_size;
return ch;
}
}
size_t TasmotaSerial::read(char* buffer, size_t size) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.read(buffer, size);
#endif // ESP8266
#ifdef ESP32
return TSerial->read(buffer, size);
#endif // ESP32
} else {
if ((-1 == m_rx_pin) || (m_in_pos == m_out_pos)) { return 0; }
size_t count = 0;
for( ; size && (m_in_pos == m_out_pos) ; --size, ++count) {
*buffer++ = m_buffer[m_out_pos];
m_out_pos = (m_out_pos +1) % serial_buffer_size;
}
return count;
}
}
int TasmotaSerial::available(void) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.available();
#endif // ESP8266
#ifdef ESP32
return TSerial->available();
#endif // ESP32
} else {
int avail = m_in_pos - m_out_pos;
if (avail < 0) avail += serial_buffer_size;
return avail;
}
}
#define TM_SERIAL_WAIT_SND { while (ESP.getCycleCount() < (wait + start)) if (!m_high_speed) optimistic_yield(1); wait += m_bit_time; } // Watchdog timeouts
#define TM_SERIAL_WAIT_SND_FAST { while (ESP.getCycleCount() < (wait + start)); wait += m_bit_time; }
#define TM_SERIAL_WAIT_RCV { while (ESP.getCycleCount() < (wait + start)); wait += m_bit_time; }
#define TM_SERIAL_WAIT_RCV_LOOP { while (ESP.getCycleCount() < (wait + start)); }
void IRAM_ATTR TasmotaSerial::_fast_write(uint8_t b) {
uint32_t wait = m_bit_time;
uint32_t start = ESP.getCycleCount();
// Start bit;
digitalWrite(m_tx_pin, LOW);
TM_SERIAL_WAIT_SND_FAST;
for (uint32_t i = 0; i < 8; i++) {
digitalWrite(m_tx_pin, (b & 1) ? HIGH : LOW);
TM_SERIAL_WAIT_SND_FAST;
b >>= 1;
}
// Stop bit(s)
digitalWrite(m_tx_pin, HIGH);
for (uint32_t i = 0; i < m_stop_bits; i++) {
TM_SERIAL_WAIT_SND_FAST;
}
}
size_t TasmotaSerial::write(uint8_t b) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.write(b);
#endif // ESP8266
#ifdef ESP32
return TSerial->write(b);
#endif // ESP32
} else {
if (-1 == m_tx_pin) return 0;
if (m_high_speed) {
cli(); // Disable interrupts in order to get a clean transmit
_fast_write(b);
sei();
} else {
uint32_t wait = m_bit_time;
//digitalWrite(m_tx_pin, HIGH); // already in HIGH mode
uint32_t start = ESP.getCycleCount();
// Start bit;
digitalWrite(m_tx_pin, LOW);
TM_SERIAL_WAIT_SND;
for (uint32_t i = 0; i < 8; i++) {
digitalWrite(m_tx_pin, (b & 1) ? HIGH : LOW);
TM_SERIAL_WAIT_SND;
b >>= 1;
}
// Stop bit(s)
digitalWrite(m_tx_pin, HIGH);
// re-enable interrupts during stop bits, it's not an issue if they are longer than expected
for (uint32_t i = 0; i < m_stop_bits; i++) {
TM_SERIAL_WAIT_SND;
}
}
return 1;
}
}
void IRAM_ATTR TasmotaSerial::rxRead(void) {
if (!m_nwmode) {
int32_t loop_read = m_very_high_speed ? serial_buffer_size : 1;
// Advance the starting point for the samples but compensate for the
// initial delay which occurs before the interrupt is delivered
uint32_t wait = m_bit_start_time;
uint32_t start = ESP.getCycleCount();
while (loop_read-- > 0) { // try to receveive all consecutive bytes in a raw
uint32_t rec = 0;
for (uint32_t i = 0; i < 8; i++) {
TM_SERIAL_WAIT_RCV;
rec >>= 1;
if (digitalRead(m_rx_pin)) rec |= 0x80;
}
// Store the received value in the buffer unless we have an overflow
uint32_t next = (m_in_pos+1) % serial_buffer_size;
if (next != (int)m_out_pos) {
m_buffer[m_in_pos] = rec;
m_in_pos = next;
}
TM_SERIAL_WAIT_RCV_LOOP; // wait for stop bit
if (2 == m_stop_bits) {
wait += m_bit_time;
TM_SERIAL_WAIT_RCV_LOOP;
}
wait += m_bit_time / 4;
if (loop_read <= 0) { break; } // exit now if not very high speed or buffer full
bool start_of_next_byte = false;
for (uint32_t i = 0; i < 12; i++) {
TM_SERIAL_WAIT_RCV_LOOP; // wait for 1/4 bits
wait += m_bit_time / 4;
if (!digitalRead(m_rx_pin)) {
// this is the start bit of the next byte
wait += m_bit_time; // we have advanced in the first 1/4 of bit, and already added 1/4 of bit so we're roughly centered. Just skip start bit.
start_of_next_byte = true;
m_bit_follow_metric++;
break; // exit loop
}
}
if (!start_of_next_byte) {
break; // exit now if no sign of next byte
}
}
// Must clear this bit in the interrupt register,
// it gets set even when interrupts are disabled
GPIO_REG_WRITE(GPIO_STATUS_W1TC_ADDRESS, 1 << m_rx_pin);
} else {
uint32_t diff;
uint32_t level;
#define LASTBIT 9
GPIO_REG_WRITE(GPIO_STATUS_W1TC_ADDRESS, 1 << m_rx_pin);
level = digitalRead(m_rx_pin);
if (!level && !ss_index) {
// start condition
ss_bstart = ESP.getCycleCount() - (m_bit_time / 4);
ss_byte = 0;
ss_index++;
//digitalWrite(1, LOW);
} else {
// now any bit changes go here
// calc bit number
diff = (ESP.getCycleCount() - ss_bstart) / m_bit_time;
//digitalWrite(1, level);
if (!level && diff > LASTBIT) {
// start bit of next byte, store and restart
// leave irq at change
for (uint32_t i = ss_index; i <= LASTBIT; i++) {
ss_byte |= (1 << i);
}
//stobyte(0,ssp->ss_byte>>1);
uint32_t next = (m_in_pos + 1) % serial_buffer_size;
if (next != (uint32_t)m_out_pos) {
m_buffer[m_in_pos] = ss_byte >> 1;
m_in_pos = next;
}
ss_bstart = ESP.getCycleCount() - (m_bit_time / 4);
ss_byte = 0;
ss_index = 1;
return;
}
if (diff >= LASTBIT) {
// bit zero was 0,
//stobyte(0,ssp->ss_byte>>1);
uint32_t next = (m_in_pos + 1) % serial_buffer_size;
if (next != (uint32_t)m_out_pos) {
m_buffer[m_in_pos] = ss_byte >> 1;
m_in_pos = next;
}
ss_byte = 0;
ss_index = 0;
} else {
// shift in
for (uint32_t i = ss_index; i < diff; i++) {
if (!level) ss_byte |= (1 << i);
}
ss_index = diff;
}
}
}
}

View File

@ -1,101 +0,0 @@
/*
TasmotaSerial.h - Implementation of software serial with hardware serial fallback for Tasmota
Copyright (C) 2021 Theo Arends
This library is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef TasmotaSerial_h
#define TasmotaSerial_h
/*********************************************************************************************\
* TasmotaSerial supports up to 115200 baud with default buffer size of 64 bytes using optional no iram
*
* Based on EspSoftwareSerial v3.4.3 by Peter Lerup (https://github.com/plerup/espsoftwareserial)
\*********************************************************************************************/
#define TM_SERIAL_BAUDRATE 9600 // Default baudrate
#define TM_SERIAL_BUFFER_SIZE 64 // Receive buffer size
#include <inttypes.h>
#include <Stream.h>
#ifdef ESP32
#include <HardwareSerial.h>
#endif
class TasmotaSerial : public Stream {
public:
TasmotaSerial(int receive_pin, int transmit_pin, int hardware_fallback = 0, int nwmode = 0, int buffer_size = TM_SERIAL_BUFFER_SIZE);
virtual ~TasmotaSerial();
bool begin(uint32_t speed = TM_SERIAL_BAUDRATE, uint32_t config = SERIAL_8N1);
void end(bool turnOffDebug = true);
bool hardwareSerial(void);
int peek(void);
size_t write(uint8_t byte) override;
int read(void) override;
size_t read(char* buffer, size_t size);
int available(void) override;
void flush(void) override;
void rxRead(void);
uint32_t getLoopReadMetric(void) const { return m_bit_follow_metric; }
#ifdef ESP32
uint32_t getUart(void) const { return m_uart; }
#endif
bool isValid() { return m_valid; }
using Print::write;
private:
bool isValidGPIOpin(int pin);
#ifdef ESP32
bool freeUart(void);
#endif
size_t txWrite(uint8_t byte);
// Member variables
int m_rx_pin;
int m_tx_pin;
uint32_t m_stop_bits;
uint32_t ss_byte;
uint32_t ss_bstart;
uint32_t ss_index;
uint32_t m_bit_time;
uint32_t m_bit_start_time;
uint32_t m_bit_follow_metric = 0;
uint32_t m_in_pos;
uint32_t m_out_pos;
uint32_t serial_buffer_size;
bool m_valid;
bool m_nwmode;
bool m_hardserial;
bool m_hardswap;
bool m_high_speed = false;
bool m_very_high_speed = false; // above 100000 bauds
uint8_t *m_buffer;
void _fast_write(uint8_t b); // IRAM minimized version
#ifdef ESP32
HardwareSerial *TSerial;
int m_uart = 0;
#endif
};
#endif // TasmotaSerial_h

View File

@ -0,0 +1,17 @@
{
"name": "TasmotaSerial",
"version": "3.6.0",
"keywords": [
"serial", "io", "TasmotaSerial"
],
"description": "Implementation of software serial with hardware serial fallback for ESP8266 and ESP32.",
"repository":
{
"type": "git",
"url": "https://github.com/arendst/Tasmota/lib/TasmotaSerial"
},
"frameworks": "arduino",
"platforms": [
"espressif8266", "espressif32"
]
}

View File

@ -0,0 +1,9 @@
name=TasmotaSerial
version=3.6.0
author=Theo Arends
maintainer=Theo Arends <theo@arends.com>
sentence=Implementation of software serial with hardware serial fallback for ESP8266 and ESP32.
paragraph=
category=Signal Input/Output
url=
architectures=esp8266,esp32

View File

@ -0,0 +1,646 @@
/*
TasmotaSerial.cpp - Implementation of software serial with hardware serial fallback for Tasmota
Copyright (C) 2021 Theo Arends
This library is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <Arduino.h>
// The Arduino standard GPIO routines are not enough,
// must use some from the Espressif SDK as well
extern "C" {
#include "gpio.h"
}
#include <TasmotaSerial.h>
#ifdef ESP8266
void IRAM_ATTR callRxRead(void *self) { ((TasmotaSerial*)self)->rxRead(); };
// As the Arduino attachInterrupt has no parameter, lists of objects
// and callbacks corresponding to each possible GPIO pins have to be defined
TasmotaSerial *tms_obj_list[16];
#endif // ESP8266
#ifdef ESP32
#include "driver/uart.h"
#include "driver/gpio.h"
#include "esp_rom_gpio.h"
static uint32_t tasmota_serial_uart_bitmap = 0; // Assigned UARTs
#endif // ESP32
TasmotaSerial::TasmotaSerial(int receive_pin, int transmit_pin, int hardware_fallback, int nwmode, int buffer_size, bool invert) {
m_valid = false;
m_hardserial = false;
m_hardswap = false;
m_overflow = false;
m_invert = invert;
m_data_bits = 8;
m_stop_bits = 1;
m_nwmode = nwmode;
serial_buffer_size = buffer_size;
m_rx_pin = receive_pin;
m_tx_pin = transmit_pin;
m_tx_enable_pin = -1;
m_in_pos = 0;
m_out_pos = 0;
#ifdef ESP8266
if (!((isValidGPIOpin(receive_pin)) && (isValidGPIOpin(transmit_pin) || transmit_pin == 16))) {
return;
}
if (hardware_fallback && (((3 == m_rx_pin) && (1 == m_tx_pin)) || ((3 == m_rx_pin) && (-1 == m_tx_pin)) || ((-1 == m_rx_pin) && (1 == m_tx_pin)))) {
m_hardserial = true;
}
else if ((2 == hardware_fallback) && (((13 == m_rx_pin) && (15 == m_tx_pin)) || ((13 == m_rx_pin) && (-1 == m_tx_pin)) || ((-1 == m_rx_pin) && (15 == m_tx_pin)))) {
m_hardserial = true;
m_hardswap = true;
}
else {
if ((m_rx_pin < 0) && (m_tx_pin < 0)) { return; }
if (m_rx_pin > -1) {
m_buffer = (uint8_t*)malloc(serial_buffer_size);
if (m_buffer == NULL) return;
// Use getCycleCount() loop to get as exact timing as possible
m_bit_time = ESP.getCpuFreqMHz() * 1000000 / TM_SERIAL_BAUDRATE;
m_bit_start_time = m_bit_time + m_bit_time/3 - 500; // pre-compute first wait
pinMode(m_rx_pin, INPUT);
tms_obj_list[m_rx_pin] = this;
attachInterruptArg(m_rx_pin, callRxRead, this, (m_nwmode) ? CHANGE : FALLING);
}
if (m_tx_pin > -1) {
pinMode(m_tx_pin, OUTPUT);
digitalWrite(m_tx_pin, HIGH);
}
}
#endif // ESP8266
#ifdef ESP32
if ((receive_pin >= 0) && !GPIO_IS_VALID_GPIO(receive_pin)) { return; }
if ((transmit_pin >= 0) && !GPIO_IS_VALID_OUTPUT_GPIO(transmit_pin)) { return; }
m_hardserial = true;
TSerial = nullptr;
#endif // ESP32
m_valid = true;
}
void TasmotaSerial::end(void) {
#ifdef ESP8266
if (m_hardserial) {
// Serial.end(); // Keep active for logging
} else {
if (m_rx_pin > -1) {
detachInterrupt(m_rx_pin);
tms_obj_list[m_rx_pin] = NULL;
if (m_buffer) {
free(m_buffer);
}
}
}
#endif // ESP8266
#ifdef ESP32
// Serial.printf("TSR: Freeing UART%d\n", m_uart);
TSerial->end();
bitClear(tasmota_serial_uart_bitmap, m_uart);
#endif // ESP32
}
TasmotaSerial::~TasmotaSerial(void) {
if (m_valid) {
end();
}
}
bool TasmotaSerial::isValidGPIOpin(int pin) {
#ifdef ESP8266
return (pin >= -1 && pin <= 5) || (pin >= 12 && pin <= 15);
#endif
#ifdef ESP32
return GPIO_IS_VALID_OUTPUT_GPIO(pin);
#endif
}
void TasmotaSerial::setTransmitEnablePin(int tx_enable_pin) {
#ifdef ESP8266
if ((tx_enable_pin > -1) && (isValidGPIOpin(tx_enable_pin) || (16 == tx_enable_pin))) {
#endif
#ifdef ESP32
if ((tx_enable_pin > -1) && isValidGPIOpin(tx_enable_pin)) {
#endif
m_tx_enable_pin = tx_enable_pin;
pinMode(m_tx_enable_pin, OUTPUT);
digitalWrite(m_tx_enable_pin, LOW);
}
}
#ifdef ESP32
bool TasmotaSerial::freeUart(void) {
for (uint32_t i = SOC_UART_HP_NUM -1; i >= 0; i--) {
if (0 == bitRead(tasmota_serial_uart_bitmap, i)) {
m_uart = uart_port_t(i);
bitSet(tasmota_serial_uart_bitmap, m_uart);
return true;
}
}
return false;
}
void TasmotaSerial::Esp32Begin(void) {
TSerial->begin(m_speed, m_config, m_rx_pin, m_tx_pin, m_invert);
// For low bit rate, below 9600, set the Full RX threshold at 10 bytes instead of the default 120
if (m_speed <= 9600) {
// At 9600, 10 chars are ~10ms
uart_set_rx_full_threshold(m_uart, 10);
} else {
// At 19200, 120 chars are ~60ms
// At 76800, 120 chars are ~15ms
uart_set_rx_full_threshold(m_uart, 120);
}
/*
} else if (m_speed < 115200) {
// At 19200, 120 chars are ~60ms
// At 76800, 120 chars are ~15ms
uart_set_rx_full_threshold(m_uart, 120);
} else if (m_speed == 115200) {
// At 115200, 256 chars are ~20ms
// Zigbee requires to keep frames together, i.e. 256 bytes max
uart_set_rx_full_threshold(m_uart, 256);
} else {
// At even higher speeds set 75% of the buffer
uart_set_rx_full_threshold(m_uart, serial_buffer_size * 3 / 4);
}
*/
// For bitrate below 115200, set the Rx time out to 6 chars instead of the default 10
if (m_speed < 115200) {
// At 76800 the timeout is ~1ms
uart_set_rx_timeout(m_uart, 6);
}
}
#endif
size_t TasmotaSerial::setRxBufferSize(size_t size) {
if (size != serial_buffer_size) {
if (m_hardserial) {
if (size > 256) { // Default hardware serial Rx buffer size
#ifdef ESP8266
serial_buffer_size = size;
Serial.setRxBufferSize(serial_buffer_size);
#endif // ESP8266
#ifdef ESP32
if (TSerial) {
// RX Buffer can't be resized when Serial is already running
serial_buffer_size = size;
TSerial->flush();
TSerial->end();
delay(10); // Allow time to cleanup queues - if not used hangs ESP32
TSerial->setRxBufferSize(serial_buffer_size);
Esp32Begin();
}
#endif // ESP32
}
}
else if (m_buffer) {
uint8_t *m_buffer_temp = (uint8_t*)malloc(size); // Allocate new buffer
if (m_buffer_temp) { // If succesful de-allocate old buffer
free(m_buffer);
m_buffer = m_buffer_temp;
serial_buffer_size = size;
}
}
}
return serial_buffer_size;
}
bool TasmotaSerial::begin(uint32_t speed, uint32_t config) {
if (!m_valid) { return false; }
if (m_hardserial) {
if (serial_buffer_size < 256) {
serial_buffer_size = 256;
}
#ifdef ESP8266
Serial.flush();
Serial.begin(speed, (SerialConfig)config, SERIAL_FULL, m_tx_pin, m_invert);
if (m_hardswap) {
Serial.swap();
}
if (serial_buffer_size > 256) {
Serial.setRxBufferSize(serial_buffer_size);
}
#endif // ESP8266
#ifdef ESP32
if (TSerial == nullptr) { // Allow for dynamic change in baudrate or config
if (freeUart()) { // We prefer UART1 and UART2 and keep UART0 for debugging
#if ARDUINO_USB_MODE
TSerial = new HardwareSerial(m_uart);
#else
if (0 == m_uart) {
Serial.flush();
Serial.end();
delay(10); // Allow time to cleanup queues - if not used hangs ESP32
TSerial = &Serial;
} else {
TSerial = new HardwareSerial(m_uart);
}
#endif // ARDUINO_USB_MODE
if (serial_buffer_size > 256) { // RX Buffer can't be resized when Serial is already running (HardwareSerial.cpp)
TSerial->setRxBufferSize(serial_buffer_size);
}
} else {
m_valid = false;
return m_valid; // As we currently only support hardware serial on ESP32 it's safe to exit here
}
}
m_speed = speed;
m_config = config;
Esp32Begin();
// Serial.printf("TSR: Using UART%d\n", m_uart);
#endif // ESP32
} else {
// #define UART_NB_BIT_5 0B00000000
// #define UART_NB_BIT_6 0B00000100
// #define UART_NB_BIT_7 0B00001000
// #define UART_NB_BIT_8 0B00001100
m_data_bits = 5 + ((config &0x0C) >> 2);
// Software serial fakes two stop bits if either stop bits is 2 or parity is not None
// #define UART_NB_STOP_BIT_0 0B00000000
// #define UART_NB_STOP_BIT_1 0B00010000
// #define UART_NB_STOP_BIT_15 0B00100000
// #define UART_NB_STOP_BIT_2 0B00110000
m_stop_bits = 1 + ((config &0x30) >> 5);
// #define UART_PARITY_NONE 0B00000000
// #define UART_PARITY_EVEN 0B00000010
// #define UART_PARITY_ODD 0B00000011
if ((1 == m_stop_bits) && (config &0x03)) {
m_stop_bits++;
}
// Use getCycleCount() loop to get as exact timing as possible
m_bit_time = ESP.getCpuFreqMHz() * 1000000 / speed;
m_bit_start_time = m_bit_time + m_bit_time/3 - (ESP.getCpuFreqMHz() > 120 ? 700 : 500); // pre-compute first wait
m_high_speed = (speed >= 9600);
m_very_high_speed = (speed >= 50000);
}
return m_valid;
}
void TasmotaSerial::setReadChunkMode(bool mode) {
m_very_high_speed = mode;
}
bool TasmotaSerial::hardwareSerial(void) {
#ifdef ESP8266
return m_hardserial;
#endif // ESP8266
#ifdef ESP32
return (0 == m_uart); // We prefer UART1 and UART2 and keep UART0 for debugging
#endif // ESP32
}
bool TasmotaSerial::overflow(void) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.hasOverrun(); // Returns then clear overrun flag
#endif // ESP8266
#ifdef ESP32
return false; // Not implemented
#endif // ESP32
} else {
bool res = m_overflow;
m_overflow = false;
return res;
}
}
void TasmotaSerial::flush(void) {
if (m_hardserial) {
#ifdef ESP8266
Serial.flush();
#endif // ESP8266
#ifdef ESP32
TSerial->flush(); // Flushes Tx only https://github.com/espressif/arduino-esp32/pull/4263
while (TSerial->available()) { TSerial->read(); }
#endif // ESP32
} else {
m_in_pos = 0;
m_out_pos = 0;
}
}
int TasmotaSerial::peek(void) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.peek();
#endif // ESP8266
#ifdef ESP32
return TSerial->peek();
#endif // ESP32
} else {
if ((-1 == m_rx_pin) || (m_in_pos == m_out_pos)) return -1;
return m_buffer[m_out_pos];
}
}
int TasmotaSerial::read(void) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.read();
#endif // ESP8266
#ifdef ESP32
return TSerial->read();
#endif // ESP32
} else {
if ((-1 == m_rx_pin) || (m_in_pos == m_out_pos)) {
return -1;
}
uint32_t ch = m_buffer[m_out_pos];
m_out_pos = (m_out_pos +1) % serial_buffer_size;
return ch;
}
}
size_t TasmotaSerial::read(char* buffer, size_t size) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.read(buffer, size);
#endif // ESP8266
#ifdef ESP32
return TSerial->read(buffer, size);
#endif // ESP32
} else {
if ((-1 == m_rx_pin) || (m_in_pos == m_out_pos)) {
return 0;
}
size_t count = 0;
for( ; size && (m_in_pos != m_out_pos) ; --size, ++count) {
*buffer++ = m_buffer[m_out_pos];
m_out_pos = (m_out_pos +1) % serial_buffer_size;
}
return count;
}
}
int TasmotaSerial::available(void) {
if (m_hardserial) {
#ifdef ESP8266
return Serial.available();
#endif // ESP8266
#ifdef ESP32
return TSerial->available();
#endif // ESP32
} else {
int avail = m_in_pos - m_out_pos;
if (avail < 0) avail += serial_buffer_size;
// if (!avail) {
// optimistic_yield(10000);
// }
return avail;
}
}
#define TM_SERIAL_WAIT_SND { while (ESP.getCycleCount() < (wait + start)) if (!m_high_speed) optimistic_yield(1); wait += m_bit_time; } // Watchdog timeouts
#define TM_SERIAL_WAIT_SND_FAST { while (ESP.getCycleCount() < (wait + start)); wait += m_bit_time; }
#define TM_SERIAL_WAIT_RCV { while (ESP.getCycleCount() < (wait + start)); wait += m_bit_time; }
#define TM_SERIAL_WAIT_RCV_LOOP { while (ESP.getCycleCount() < (wait + start)); }
void IRAM_ATTR TasmotaSerial::_fast_write(uint8_t b) {
uint32_t wait = m_bit_time;
uint32_t start = ESP.getCycleCount();
// Start bit;
digitalWrite(m_tx_pin, LOW);
TM_SERIAL_WAIT_SND_FAST;
for (uint32_t i = 0; i < m_data_bits; i++) {
digitalWrite(m_tx_pin, (b & 1) ? HIGH : LOW);
TM_SERIAL_WAIT_SND_FAST;
b >>= 1;
}
// Stop bit(s)
digitalWrite(m_tx_pin, HIGH);
for (uint32_t i = 0; i < m_stop_bits; i++) {
TM_SERIAL_WAIT_SND_FAST;
}
}
size_t TasmotaSerial::write(uint8_t b) {
if (!m_hardserial && (-1 == m_tx_pin)) { return 0; }
if (m_tx_enable_pin > -1) {
digitalWrite(m_tx_enable_pin, HIGH);
}
size_t size = 0;
if (m_hardserial) {
#ifdef ESP8266
size = Serial.write(b);
#endif // ESP8266
#ifdef ESP32
size = TSerial->write(b);
#endif // ESP32
} else {
if (m_high_speed) {
cli(); // Disable interrupts in order to get a clean transmit
_fast_write(b);
sei();
} else {
uint32_t wait = m_bit_time;
//digitalWrite(m_tx_pin, HIGH); // already in HIGH mode
uint32_t start = ESP.getCycleCount();
// Start bit;
digitalWrite(m_tx_pin, LOW);
TM_SERIAL_WAIT_SND;
for (uint32_t i = 0; i < m_data_bits; i++) {
digitalWrite(m_tx_pin, (b & 1) ? HIGH : LOW);
TM_SERIAL_WAIT_SND;
b >>= 1;
}
// Stop bit(s)
digitalWrite(m_tx_pin, HIGH);
// re-enable interrupts during stop bits, it's not an issue if they are longer than expected
for (uint32_t i = 0; i < m_stop_bits; i++) {
TM_SERIAL_WAIT_SND;
}
}
size = 1;
}
if (m_tx_enable_pin > -1) {
flush(); // Must wait for all data sent
digitalWrite(m_tx_enable_pin, LOW);
}
return size;
}
#ifdef ESP32
// Add ability to change parity on the fly, for RS-485
// See https://github.com/arendst/Tasmota/discussions/22272
int32_t TasmotaSerial::setConfig(uint32_t config) {
uint32_t data_bits_before = (m_config & 0xc) >> 2;
uint32_t parity_before = m_config & 0x3;
uint32_t stop_bits_before = (m_config & 0x30) >> 4;
uint32_t data_bits = (config & 0xc) >> 2;
uint32_t parity = config & 0x3;
uint32_t stop_bits = (config & 0x30) >> 4;
esp_err_t err;
if (data_bits_before != data_bits) {
if (err = uart_set_word_length(m_uart, (uart_word_length_t) data_bits)) {
return (int32_t) err;
}
}
if (parity_before != parity) {
if (err = uart_set_parity(m_uart, (uart_parity_t) parity)) {
return (int32_t) err;
}
}
if (stop_bits_before != stop_bits) {
if (err = uart_set_stop_bits(m_uart, (uart_stop_bits_t) stop_bits)) {
return (int32_t) err;
}
}
m_config = config;
return 0; // no error
}
#endif
#ifdef ESP8266
void IRAM_ATTR TasmotaSerial::rxRead(void) {
if (!m_nwmode) {
uint32_t start = ESP.getCycleCount();
// Advance the starting point for the samples but compensate for the
// initial delay which occurs before the interrupt is delivered
uint32_t wait = m_bit_start_time;
// Decide to read as much data as buffer can hold or a single byte
// The first option may keep interrupt busy too long resulting in Hardware Watchdog
// The second option may receive ocasional invalid data
// User control by function setReadChunkMode()
int32_t loop_read = m_very_high_speed ? serial_buffer_size : 1;
uint32_t bit_mask = 0x01 << (m_data_bits -1);
while (loop_read-- > 0) { // try to receive all consecutive bytes in a row
uint32_t rec = 0;
for (uint32_t i = 0; i < m_data_bits; i++) {
TM_SERIAL_WAIT_RCV;
rec >>= 1;
if (digitalRead(m_rx_pin)) rec |= bit_mask;
}
// Store the received value in the buffer unless we have an overflow
uint32_t next = (m_in_pos + 1) % serial_buffer_size;
if (next != m_out_pos) {
m_buffer[m_in_pos] = rec;
m_in_pos = next;
} else {
// Buffer overrun - exit
m_overflow = true;
loop_read = 0;
}
TM_SERIAL_WAIT_RCV_LOOP; // wait for stop bit
if (2 == m_stop_bits) {
wait += m_bit_time;
TM_SERIAL_WAIT_RCV_LOOP;
}
wait += m_bit_time / 4;
if (loop_read <= 0) { break; } // exit now if not very high speed or buffer full
bool start_of_next_byte = false;
for (uint32_t i = 0; i < 12; i++) {
TM_SERIAL_WAIT_RCV_LOOP; // wait for 1/4 bits
wait += m_bit_time / 4;
if (!digitalRead(m_rx_pin)) {
// this is the start bit of the next byte
wait += m_bit_time; // we have advanced in the first 1/4 of bit, and already added 1/4 of bit so we're roughly centered. Just skip start bit.
start_of_next_byte = true;
m_bit_follow_metric++;
break; // exit loop
}
}
if (!start_of_next_byte) {
break; // exit now if no sign of next byte
}
}
// Must clear this bit in the interrupt register,
// it gets set even when interrupts are disabled
GPIO_REG_WRITE(GPIO_STATUS_W1TC_ADDRESS, 1 << m_rx_pin);
} else {
// Currently supports 8-bit data only
uint32_t diff;
uint32_t level;
#define LASTBIT 9
GPIO_REG_WRITE(GPIO_STATUS_W1TC_ADDRESS, 1 << m_rx_pin);
level = digitalRead(m_rx_pin);
if (!level && !ss_index) {
// start condition
ss_bstart = ESP.getCycleCount() - (m_bit_time / 4);
ss_byte = 0;
ss_index++;
//digitalWrite(1, LOW);
} else {
// now any bit changes go here
// calc bit number
diff = (ESP.getCycleCount() - ss_bstart) / m_bit_time;
//digitalWrite(1, level);
if (!level && diff > LASTBIT) {
// start bit of next byte, store and restart
// leave irq at change
for (uint32_t i = ss_index; i <= LASTBIT; i++) {
ss_byte |= (1 << i);
}
//stobyte(0,ssp->ss_byte>>1);
uint32_t next = (m_in_pos + 1) % serial_buffer_size;
if (next != m_out_pos) {
m_buffer[m_in_pos] = ss_byte >> 1;
m_in_pos = next;
}
ss_bstart = ESP.getCycleCount() - (m_bit_time / 4);
ss_byte = 0;
ss_index = 1;
return;
}
if (diff >= LASTBIT) {
// bit zero was 0,
//stobyte(0,ssp->ss_byte>>1);
uint32_t next = (m_in_pos + 1) % serial_buffer_size;
if (next != m_out_pos) {
m_buffer[m_in_pos] = ss_byte >> 1;
m_in_pos = next;
}
ss_byte = 0;
ss_index = 0;
} else {
// shift in
for (uint32_t i = ss_index; i < diff; i++) {
if (!level) ss_byte |= (1 << i);
}
ss_index = diff;
}
}
}
}
#endif // ESP8266

View File

@ -0,0 +1,124 @@
/*
TasmotaSerial.h - Implementation of software serial with hardware serial fallback for Tasmota
Copyright (C) 2021 Theo Arends
This library is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef TasmotaSerial_h
#define TasmotaSerial_h
/*********************************************************************************************\
* TasmotaSerial supports up to 115200 baud with default buffer size of 64 bytes using optional no iram
*
* Based on EspSoftwareSerial v3.4.3 by Peter Lerup (https://github.com/plerup/espsoftwareserial)
\*********************************************************************************************/
#define TM_SERIAL_BAUDRATE 9600 // Default baudrate
#define TM_SERIAL_BUFFER_SIZE 64 // Receive buffer size
#include <inttypes.h>
#include <Stream.h>
#ifdef ESP32
#include <HardwareSerial.h>
// IDF 5.2 has changed counting UART channels, SOC_UART_NUM includes now LP UARTS too for ESP32-C6 and -P4
#ifndef SOC_UART_HP_NUM
#define SOC_UART_HP_NUM SOC_UART_NUM // Set new define SOC_UART_HP_NUM in pre IDF 5.2 to SOC_UART_NUM
#endif
#endif
class TasmotaSerial : public Stream {
public:
TasmotaSerial(int receive_pin, int transmit_pin, int hardware_fallback = 0, int nwmode = 0, int buffer_size = TM_SERIAL_BUFFER_SIZE, bool invert = false);
virtual ~TasmotaSerial();
void setTransmitEnablePin(int tx_enable_pin);
void clearTransmitEnablePin(void) { m_tx_enable_pin = -1; }
size_t setRxBufferSize(size_t size);
size_t getRxBufferSize() { return serial_buffer_size; }
bool begin(uint32_t speed = TM_SERIAL_BAUDRATE, uint32_t config = SERIAL_8N1);
void end(void);
bool hardwareSerial(void);
int peek(void);
size_t write(uint8_t byte) override;
int read(void) override;
size_t read(char* buffer, size_t size);
size_t read(uint8_t* buffer, size_t size) {
return read(reinterpret_cast<char*>(buffer), size);
}
void setReadChunkMode(bool mode);
int available(void) override;
void flush(void) override;
void rxRead(void);
uint32_t getLoopReadMetric(void) const { return m_bit_follow_metric; }
#ifdef ESP32
uint32_t getUart(void) const { return m_uart; }
HardwareSerial *getesp32hws(void) { return TSerial; }
int32_t setConfig(uint32_t config);
#endif
bool isValid(void) { return m_valid; }
bool overflow(void);
using Print::write;
private:
bool isValidGPIOpin(int pin);
size_t txWrite(uint8_t byte);
void _fast_write(uint8_t b); // IRAM minimized version
#ifdef ESP32
bool freeUart(void);
void Esp32Begin(void);
#endif
// Member variables
int m_rx_pin;
int m_tx_pin;
int m_tx_enable_pin;
uint32_t m_data_bits;
uint32_t m_stop_bits;
uint32_t ss_byte;
uint32_t ss_bstart;
uint32_t ss_index;
uint32_t m_bit_time;
uint32_t m_bit_start_time;
uint32_t m_bit_follow_metric = 0;
uint32_t m_in_pos;
uint32_t m_out_pos;
uint32_t serial_buffer_size = TM_SERIAL_BUFFER_SIZE;
bool m_valid;
bool m_nwmode;
bool m_hardserial;
bool m_hardswap;
bool m_overflow;
bool m_high_speed = false;
bool m_very_high_speed = false; // above 100000 bauds
bool m_invert;
uint8_t *m_buffer = nullptr;
#ifdef ESP32
uint32_t m_speed;
uint32_t m_config;
HardwareSerial *TSerial;
uart_port_t m_uart = uart_port_t(0);
#endif
};
#endif // TasmotaSerial_h

View File

@ -0,0 +1,19 @@
Wifi Helper for Tasmota bridging differences between ESP8266 and ESP32
This Class is for compatibility with esp8266 code
== License ==
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

View File

@ -0,0 +1,8 @@
{
"name": "WiFiHelper",
"keywords": "esp32, esp8266",
"description": "Bridges differences in Arduino WiFi between ESP32 and ESP8266",
"version": "1.0.0",
"frameworks": "arduino",
"platforms": "*"
}

View File

@ -0,0 +1,97 @@
/*
WiFiHelper.h - provide a wrapper for differences between ESP8266 and ESP32 WiFi
Copyright (C) 2024 Theo Arends / Stephan Hadinger
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifndef WIFIHELPER_H
#define WIFIHELPER_H
// ======================================================
// ESP8266 specific section
// ======================================================
#ifdef ESP8266
#include "ESP8266WiFi.h"
#endif
// ======================================================
// ESP32 specific section
// ======================================================
#ifdef ESP32
#include <WiFi.h>
#define ENC_TYPE_NONE WIFI_AUTH_OPEN
#define ENC_TYPE_WEP WIFI_AUTH_WEP
#define ENC_TYPE_CCMP WIFI_AUTH_WPA2_PSK
#define ENC_TYPE_TKIP WIFI_AUTH_WPA_WPA2_PSK
#define ENC_TYPE_AUTO WIFI_AUTH_MAX + 1
#define WIFI_NONE_SLEEP 0
#define WIFI_LIGHT_SLEEP 1
#define WIFI_MODEM_SLEEP 2
// ESP8266
typedef enum WiFiPhyMode
{
TAS_WIFI_PHY_MODE_LR = 0, TAS_WIFI_PHY_MODE_11B = 1, TAS_WIFI_PHY_MODE_11G = 2, TAS_WIFI_PHY_MODE_11N = 3
#if ESP_IDF_VERSION_MAJOR >= 5
, TAS_WIFI_PHY_MODE_11AX = 4
#endif
} WiFiPhyMode_t;
#endif // ESP32
// This is an abstract class containing wrappers to call WiFi
class WiFiHelper {
public:
#ifdef ESP32
static wl_status_t begin(const char* wpa2_ssid, wpa2_auth_method_t method, const char* wpa2_identity=NULL, const char* wpa2_username=NULL, const char *wpa2_password=NULL, const char* ca_pem=NULL, const char* client_crt=NULL, const char* client_key=NULL, int ttls_phase2_type=-1, int32_t channel=0, const uint8_t* bssid=0, bool connect=true);
#endif
static wl_status_t begin(const char* ssid, const char *passphrase = NULL, int32_t channel = 0, const uint8_t* bssid = NULL, bool connect = true);
static wl_status_t begin(char* ssid, char *passphrase = NULL, int32_t channel = 0, const uint8_t* bssid = NULL, bool connect = true);
static wl_status_t begin();
static void hostname(const char* aHostname);
static void setSleepMode(int iSleepMode);
static int getPhyMode();
static bool setPhyMode(WiFiPhyMode_t mode);
static void setOutputPower(int n);
static void forceSleepBegin();
static void forceSleepWake();
static bool getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel, bool &hidden_scan);
static int hostByName(const char* aHostname, IPAddress& aResult, int32_t timer_ms);
static int hostByName(const char* aHostname, IPAddress& aResult);
static void scrubDNS(void);
// With ESP32 Core3, the WiFi mac address is not valid until the wifi is actually started
// this helper function always provide a valid mac address
static String macAddress(void);
// Auto-fix zone
//
// After a reconnect, the zone id may not be valid anymore
// In such case we detect any "%st<n>" or "%en<n>" zone identifier
// and replace with the current zone id
static void IPv6ZoneAutoFix(IPAddress &addr, const char* aHostname);
};
#endif // WIFIHELPER_H

View File

@ -0,0 +1,356 @@
/*
WiFi compat with ESP32
Copyright (C) 2021 Theo Arends / Jörg Schüler-Maroldt
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#ifdef ESP32
#include "Arduino.h"
#include "WiFiHelper.h"
#include <esp_wifi.h>
extern void AddLog(uint32_t loglevel, PGM_P formatP, ...);
enum LoggingLevels {LOG_LEVEL_NONE, LOG_LEVEL_ERROR, LOG_LEVEL_INFO, LOG_LEVEL_DEBUG, LOG_LEVEL_DEBUG_MORE};
#ifdef USE_IPV6
ip_addr_t dns_save4[DNS_MAX_SERVERS] = {}; // IPv4 DNS servers
ip_addr_t dns_save6[DNS_MAX_SERVERS] = {}; // IPv6 DNS servers
#endif // USE_IPV6
#include "tasmota_options.h"
#include "lwip/dns.h"
#if CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT
wl_status_t WiFiHelper::begin(const char *wpa2_ssid, wpa2_auth_method_t method, const char *wpa2_identity, const char *wpa2_username, const char *wpa2_password, const char *ca_pem, const char *client_crt, const char *client_key, int ttls_phase2_type, int32_t channel, const uint8_t *bssid, bool connect) {
WiFiHelper::scrubDNS();
wl_status_t ret = WiFi.begin(wpa2_ssid, method, wpa2_identity, wpa2_username, wpa2_password, ca_pem, client_crt, client_key, ttls_phase2_type, channel, bssid, connect);
WiFiHelper::scrubDNS();
return ret;
}
#endif // CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT
wl_status_t WiFiHelper::begin(const char* ssid, const char *passphrase, int32_t channel, const uint8_t* bssid, bool connect) {
WiFiHelper::scrubDNS();
wl_status_t ret = WiFi.begin(ssid, passphrase, channel, bssid, connect);
WiFiHelper::scrubDNS();
return ret;
}
wl_status_t WiFiHelper::begin(char* ssid, char *passphrase, int32_t channel, const uint8_t* bssid, bool connect) {
WiFiHelper::scrubDNS();
wl_status_t ret = WiFi.begin(ssid, passphrase, channel, bssid, connect);
WiFiHelper::scrubDNS();
return ret;
}
wl_status_t WiFiHelper::begin() {
WiFiHelper::scrubDNS();
wl_status_t ret = WiFi.begin();
WiFiHelper::scrubDNS();
return ret;
}
// scrubDNS
//
// LWIP has a single DNS table for all interfaces and for v4/v6
// Unfortunately when trying to connect to Wifi, the dns server table is erased.
//
// We restore DNS previous values if they are empty
// We restore or erase DNS entries if they are unsupported (v4 vs v6)
extern bool WifiHasIPv4(void);
extern bool EthernetHasIPv4(void);
extern bool WifiHasIPv6(void);
extern bool EthernetHasIPv6(void);
void WiFiHelper::scrubDNS(void) {
// String dns_entry0 = IPAddress(dns_getserver(0)).toString();
// String dns_entry1 = IPAddress(dns_getserver(1)).toString();
// scan DNS entries
bool has_v4 = WifiHasIPv4() || EthernetHasIPv4();
bool has_v6 = false;
#ifdef USE_IPV6
has_v6 = WifiHasIPv6() || EthernetHasIPv6();
#endif
// First pass, save values
for (uint32_t i=0; i<DNS_MAX_SERVERS; i++) {
#ifdef USE_IPV6
const IPAddress ip_dns = IPAddress(dns_getserver(i));
// Step 1. save valid values from DNS
if (!ip_addr_isany_val((const ip_addr_t &)ip_dns)) {
if (ip_dns.type() == IPv4 && has_v4) {
ip_dns.to_ip_addr_t(&dns_save4[i]);
// dns_save4[i] = (ip_addr_t) ip_dns; // dns entry is populated, save it in v4 slot
} else if (has_v6) {
ip_dns.to_ip_addr_t(&dns_save6[i]);
// dns_save6[i] = (ip_addr_t) ip_dns; // dns entry is populated, save it in v6 slot
}
}
// Step 2. scrub addresses not supported
if (!has_v4) { dns_save4[i] = *IP4_ADDR_ANY; }
if (!has_v6) { dns_save6[i] = *IP_ADDR_ANY; }
// Step 3. restore saved value
if (has_v4 && has_v6) { // if both IPv4 and IPv6 are active, prefer IPv4
if (!ip_addr_isany_val(dns_save4[i])) { dns_setserver(i, &dns_save4[i]); }
else { dns_setserver(i, &dns_save6[i]); }
} else if (has_v4) {
dns_setserver(i, &dns_save4[i]);
} else if (has_v6) {
dns_setserver(i, &dns_save6[i]);
} else {
dns_setserver(i, IP4_ADDR_ANY);
}
#endif // USE_IPV6
}
// AddLog(LOG_LEVEL_DEBUG, "IP>: DNS: from(%s %s) to (%s %s) has4/6:%i-%i", dns_entry0.c_str(), dns_entry1.c_str(), IPAddress(dns_getserver(0)).toString().c_str(), IPAddress(dns_getserver(1)).toString().c_str(), has_v4, has_v6);
}
void WiFiHelper::hostname(const char* aHostname) {
WiFi.setHostname(aHostname);
}
void WiFiHelper::setSleepMode(int iSleepMode) {
// WIFI_LIGHT_SLEEP and WIFI_MODEM_SLEEP
WiFi.setSleep(iSleepMode != WIFI_NONE_SLEEP);
}
int WiFiHelper::getPhyMode() {
/*
typedef enum
{
WIFI_PHY_MODE_LR, // PHY mode for Low Rate
WIFI_PHY_MODE_11B, // PHY mode for 11b
WIFI_PHY_MODE_11G, // PHY mode for 11g
WIFI_PHY_MODE_HT20, // PHY mode for Bandwidth HT20 (11n)
WIFI_PHY_MODE_HT40, // PHY mode for Bandwidth HT40 (11n)
WIFI_PHY_MODE_HE20, // PHY mode for Bandwidth HE20 (11ax)
} wifi_phy_mode_t;
*/
int phy_mode = 0; // "low rate|11b|11g|HT20|HT40|HE20"
wifi_phy_mode_t WiFiMode;
if (esp_wifi_sta_get_negotiated_phymode(&WiFiMode) == ESP_OK) {
phy_mode = (int)WiFiMode;
if (phy_mode > 5) {
phy_mode = 5;
}
}
return phy_mode;
}
bool WiFiHelper::setPhyMode(WiFiPhyMode_t mode) {
uint8_t protocol_bitmap = WIFI_PROTOCOL_11B; // 1
switch (mode) {
#if ESP_IDF_VERSION_MAJOR >= 5
case 4: protocol_bitmap |= WIFI_PROTOCOL_11AX; // 16
#endif
case 3: protocol_bitmap |= WIFI_PROTOCOL_11N; // 4
case 2: protocol_bitmap |= WIFI_PROTOCOL_11G; // 2
}
return (ESP_OK == esp_wifi_set_protocol(WIFI_IF_STA, protocol_bitmap));
}
void WiFiHelper::setOutputPower(int n) {
wifi_power_t p = WIFI_POWER_2dBm;
if (n > 19)
p = WIFI_POWER_19_5dBm;
else if (n > 18)
p = WIFI_POWER_18_5dBm;
else if (n >= 17)
p = WIFI_POWER_17dBm;
else if (n >= 15)
p = WIFI_POWER_15dBm;
else if (n >= 13)
p = WIFI_POWER_13dBm;
else if (n >= 11)
p = WIFI_POWER_11dBm;
else if (n >= 8)
p = WIFI_POWER_8_5dBm;
else if (n >= 7)
p = WIFI_POWER_7dBm;
else if (n >= 5)
p = WIFI_POWER_5dBm;
WiFi.setTxPower(p);
}
void WiFiHelper::forceSleepBegin() {
}
void WiFiHelper::forceSleepWake() {
}
bool WiFiHelper::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t *&bssid, int32_t &channel, bool &hidden_scan) {
hidden_scan = false;
return WiFi.getNetworkInfo(i, ssid, encType, rssi, bssid, channel);
}
//
// Manage dns callbacks from lwip DNS resolver.
// We need a trick here, because the callback may be called after we timed-out and
// launched a new request. We need to discard outdated responses.
//
// We use a static ip_addr_t (anyways we don't support multi-threading)
// and use a counter so the callback can check if it's responding to the current
// request or to an old one (hence discard)
//
// It's not an issue to have old requests in flight. LWIP has a default limit of 4
// DNS requests in flight.
// If the buffer for in-flight requests is full, LWIP removes the oldest from the list.
// (it does not block new DNS resolutions)
static ip_addr_t dns_ipaddr;
static volatile uint32_t ip_addr_counter = 0; // counter for requests
extern int32_t WifiDNSGetTimeout(void);
extern bool WifiDNSGetIPv6Priority(void);
static volatile bool dns_found = false;
bool DNS_TimeReached(uint32_t timer)
{
// Check if a certain timeout has been reached.
int32_t passed = ((int32_t) (millis() - timer));
return (passed >= 0);
}
static void wifi32_dns_found_callback(const char *name, const ip_addr_t *ipaddr, void *callback_arg)
{
// Serial.printf("DNS: cb name=%s ipaddr=%s arg=%i counter=%i\n", name ? name : "<null>", IPAddress(ipaddr).toString().c_str(), (int) callback_arg, ip_addr_counter);
uint32_t cb_counter = (uint32_t) callback_arg;
if (cb_counter != ip_addr_counter) { return; } // the response is from a previous request, ignore
if (ipaddr != nullptr) {
dns_ipaddr = *ipaddr;
} else {
dns_ipaddr = *IP4_ADDR_ANY; // set to IPv4 0.0.0.0
}
dns_found = true;
// AddLog(LOG_LEVEL_DEBUG, "WIF: dns_found=%s", ipaddr ? IPAddress(*ipaddr).toString().c_str() : "<null>");
}
// Auto-fix zone
//
// After a reconnect, the zone id may not be valid anymore
// In such case we detect any "%st<n>" or "%en<n>" zone identifier
// and replace with the current zone id
extern bool WifiGetIPv6LinkLocal(IPAddress *ip);
extern bool EthernetGetIPv6LinkLocal(IPAddress *ip);
void WiFiHelper::IPv6ZoneAutoFix(IPAddress &addr, const char* aHostname) {
#ifdef USE_IPV6
if ((addr.type() == IPv6) && (addr.zone() == 0)) {
// check if hostname contains '%'
const char *zone_identifier = strchr(aHostname, '%');
if (zone_identifier != nullptr) {
uint8_t zone_id = 0;
// check if zone id is valid
if (strncmp(zone_identifier, "%st", 3) == 0) {
IPAddress wifi_link_local;
if (WifiGetIPv6LinkLocal(&wifi_link_local)) {
zone_id = wifi_link_local.zone();
}
} else if (strncmp(zone_identifier, "%en", 3) == 0) {
IPAddress eth_link_local;
if (EthernetGetIPv6LinkLocal(&eth_link_local)) {
zone_id = eth_link_local.zone();
}
}
if (zone_id) {
// convert to ip_addr_t which is currently the only way to change the zone_id
ip_addr_t ip_addr;
addr.to_ip_addr_t(&ip_addr);
ip_addr.u_addr.ip6.zone = zone_id;
addr = IPAddress(&ip_addr);
}
}
}
#endif
}
/**
* Resolve the given hostname to an IP address.
* @param aHostname Name to be resolved
* @param aResult IPAddress structure to store the returned IP address
* @return 1 if aIPAddrString was successfully converted to an IP address,
* else error code
*/
int WiFiHelper::hostByName(const char* aHostname, IPAddress& aResult, int32_t timer_ms)
{
// return WiFi.hostByName(aHostname, aResult);
// #if 0
ip_addr_t addr;
aResult = (uint32_t) 0; // by default set to IPv4 0.0.0.0
dns_ipaddr = *IP4_ADDR_ANY; // by default set to IPv4 0.0.0.0
WiFiHelper::scrubDNS(); // internal calls to reconnect can zero the DNS servers, save DNS for future use
ip_addr_counter++; // increase counter, from now ignore previous responses
// clearStatusBits(NET_DNS_IDLE_BIT | NET_DNS_DONE_BIT);
uint8_t v4v6priority = LWIP_DNS_ADDRTYPE_IPV4;
#ifdef USE_IPV6
v4v6priority = WifiDNSGetIPv6Priority() ? LWIP_DNS_ADDRTYPE_IPV6_IPV4 : LWIP_DNS_ADDRTYPE_IPV4_IPV6;
#endif // USE_IPV6
dns_found = false;
err_t err = dns_gethostbyname_addrtype(aHostname, &dns_ipaddr, &wifi32_dns_found_callback, (void*) ip_addr_counter, v4v6priority);
// Serial.printf("DNS: dns_gethostbyname_addrtype errg=%i counter=%i\n", err, ip_addr_counter);
if(err == ERR_OK && !ip_addr_isany_val(dns_ipaddr)) {
#ifdef USE_IPV6
aResult.from_ip_addr_t(&dns_ipaddr);
#else // USE_IPV6
aResult = ip_addr_get_ip4_u32(&dns_ipaddr);
#endif // USE_IPV6
} else if(err == ERR_INPROGRESS) {
uint32_t deadline = millis() + timer_ms;
while ((!DNS_TimeReached(deadline)) && !dns_found) {
delay(1);
}
}
if (!ip_addr_isany_val(dns_ipaddr)) {
#ifdef USE_IPV6
aResult.from_ip_addr_t(&dns_ipaddr);
WiFiHelper::IPv6ZoneAutoFix(aResult, aHostname);
#else // USE_IPV6
aResult = ip_addr_get_ip4_u32(&dns_ipaddr);
#endif // USE_IPV6
return true;
}
return false;
// #endif
}
int WiFiHelper::hostByName(const char* aHostname, IPAddress& aResult)
{
return WiFiHelper::hostByName(aHostname, aResult, WifiDNSGetTimeout());
}
#if (ESP_IDF_VERSION_MAJOR >= 5)
#include "esp_mac.h"
#endif
String WiFiHelper::macAddress(void) {
#if (ESP_IDF_VERSION_MAJOR < 5)
return WiFi.macAddress();
#else
uint8_t mac[6] = {0,0,0,0,0,0};
char macStr[18] = { 0 };
esp_read_mac(mac, ESP_MAC_WIFI_STA);
snprintf(macStr, sizeof(macStr), "%02X:%02X:%02X:%02X:%02X:%02X", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
return String(macStr);
#endif
}
#endif // ESP32

View File

@ -0,0 +1,82 @@
/*
WiFi compat with ESP32
Copyright (C) 2021 Theo Arends / Jörg Schüler-Maroldt
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
//
#ifdef ESP8266
#include "Arduino.h"
#include "WiFiHelper.h"
wl_status_t WiFiHelper::begin(const char* ssid, const char *passphrase, int32_t channel, const uint8_t* bssid, bool connect) {
return WiFi.begin(ssid, passphrase, channel, bssid, connect);
}
wl_status_t WiFiHelper::begin(char* ssid, char *passphrase, int32_t channel, const uint8_t* bssid, bool connect) {
return WiFi.begin(ssid, passphrase, channel, bssid, connect);
}
wl_status_t WiFiHelper::begin() {
return WiFi.begin();
}
void WiFiHelper::scrubDNS(void) {
}
void WiFiHelper::hostname(const char* aHostname) {
WiFi.hostname(aHostname);
}
void WiFiHelper::setSleepMode(int iSleepMode) {
WiFi.setSleepMode((WiFiSleepType_t)iSleepMode);
}
int WiFiHelper::getPhyMode() {
return WiFi.getPhyMode();
}
bool WiFiHelper::setPhyMode(WiFiPhyMode_t mode) {
return WiFi.setPhyMode(mode);
}
void WiFiHelper::setOutputPower(int n) {
WiFi.setOutputPower(n);
}
void WiFiHelper::forceSleepBegin() {
WiFi.forceSleepBegin();
}
void WiFiHelper::forceSleepWake() {
WiFi.forceSleepWake();
}
bool WiFiHelper::getNetworkInfo(uint8_t i, String &ssid, uint8_t &encType, int32_t &rssi, uint8_t* &bssid, int32_t &channel, bool &hidden_scan) {
return WiFi.getNetworkInfo(i, ssid, encType, rssi, bssid, channel, hidden_scan);
}
int WiFiHelper::hostByName(const char* aHostname, IPAddress& aResult, int32_t timer_ms) {
return WiFi.hostByName(aHostname, aResult, timer_ms);
}
int WiFiHelper::hostByName(const char* aHostname, IPAddress& aResult) {
return WiFi.hostByName(aHostname, aResult);
}
String WiFiHelper::macAddress(void) {
return WiFi.macAddress();
}
void WiFiHelper::IPv6ZoneAutoFix(IPAddress &addr, const char* aHostname) {
}
#endif // ESP8266

View File

@ -0,0 +1,128 @@
/**
* Base64 encoding and decoding of strings. Uses '+' for 62, '/' for 63, '=' for padding
*/
#include "base64.hpp"
unsigned char binary_to_base64(unsigned char v) {
// Capital letters - 'A' is ascii 65 and base64 0
if(v < 26) return v + 'A';
// Lowercase letters - 'a' is ascii 97 and base64 26
if(v < 52) return v + 71;
// Digits - '0' is ascii 48 and base64 52
if(v < 62) return v - 4;
// '+' is ascii 43 and base64 62
if(v == 62) return '+';
// '/' is ascii 47 and base64 63
if(v == 63) return '/';
return 64;
}
unsigned char base64_to_binary(unsigned char c) {
// Capital letters - 'A' is ascii 65 and base64 0
if('A' <= c && c <= 'Z') return c - 'A';
// Lowercase letters - 'a' is ascii 97 and base64 26
if('a' <= c && c <= 'z') return c - 71;
// Digits - '0' is ascii 48 and base64 52
if('0' <= c && c <= '9') return c + 4;
// '+' is ascii 43 and base64 62
if(c == '+') return 62;
// '/' is ascii 47 and base64 63
if(c == '/') return 63;
return 255;
}
unsigned int encode_base64_length(unsigned int input_length) {
return (input_length + 2)/3*4;
}
unsigned int decode_base64_length(unsigned char input[]) {
unsigned char *start = input;
while(base64_to_binary(input[0]) < 64) {
++input;
}
unsigned int input_length = input - start;
unsigned int output_length = input_length/4*3;
switch(input_length % 4) {
default: return output_length;
case 2: return output_length + 1;
case 3: return output_length + 2;
}
}
unsigned int encode_base64(unsigned char input[], unsigned int input_length, unsigned char output[]) {
unsigned int full_sets = input_length/3;
// While there are still full sets of 24 bits...
for(unsigned int i = 0; i < full_sets; ++i) {
output[0] = binary_to_base64( input[0] >> 2);
output[1] = binary_to_base64((input[0] & 0x03) << 4 | input[1] >> 4);
output[2] = binary_to_base64((input[1] & 0x0F) << 2 | input[2] >> 6);
output[3] = binary_to_base64( input[2] & 0x3F);
input += 3;
output += 4;
}
switch(input_length % 3) {
case 0:
output[0] = '\0';
break;
case 1:
output[0] = binary_to_base64( input[0] >> 2);
output[1] = binary_to_base64((input[0] & 0x03) << 4);
output[2] = '=';
output[3] = '=';
output[4] = '\0';
break;
case 2:
output[0] = binary_to_base64( input[0] >> 2);
output[1] = binary_to_base64((input[0] & 0x03) << 4 | input[1] >> 4);
output[2] = binary_to_base64((input[1] & 0x0F) << 2);
output[3] = '=';
output[4] = '\0';
break;
}
return encode_base64_length(input_length);
}
unsigned int decode_base64(unsigned char input[], unsigned char output[]) {
unsigned int output_length = decode_base64_length(input);
// While there are still full sets of 24 bits...
for(unsigned int i = 2; i < output_length; i += 3) {
output[0] = base64_to_binary(input[0]) << 2 | base64_to_binary(input[1]) >> 4;
output[1] = base64_to_binary(input[1]) << 4 | base64_to_binary(input[2]) >> 2;
output[2] = base64_to_binary(input[2]) << 6 | base64_to_binary(input[3]);
input += 4;
output += 3;
}
switch(output_length % 3) {
case 1:
output[0] = base64_to_binary(input[0]) << 2 | base64_to_binary(input[1]) >> 4;
break;
case 2:
output[0] = base64_to_binary(input[0]) << 2 | base64_to_binary(input[1]) >> 4;
output[1] = base64_to_binary(input[1]) << 4 | base64_to_binary(input[2]) >> 2;
break;
}
return output_length;
}

Some files were not shown because too many files have changed in this diff Show More