Commit Graph

309 Commits

Author SHA1 Message Date
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
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
s-hadinger
1a91dc441b
Berry improve tasmota.scale_uint() (#19197) 2023-07-26 22:31:22 +02:00
s-hadinger
758b0237b4
Matter latency improvement for single attribute reads and single commands (#19158) 2023-07-20 21:26:55 +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
ada754c582
Berry add energy.update_total() to call EnergyUpdateTotal() from energy driver (#19117) 2023-07-15 17:06:10 +02:00
s-hadinger
7404b8ddbb
Berry _class can be used in static var initialization code (#19088) 2023-07-10 17:50:04 +02:00
s-hadinger
57c4825ccd
BrRestart now supports web handlers to work after Berry restart (#19057) 2023-07-06 21:37:46 +02:00
s-hadinger
f56307e321
Fix to Partition_Wizard for shelly (#19056) 2023-07-06 20:59:50 +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
s-hadinger
34456e6193
Berry import strict now detects useless expr without side effects (#18997) 2023-06-29 09:04:16 +02:00
s-hadinger
b9588e6192
Berry bool( [] ) and bool( {} ) now evaluate as false (#18986) 2023-06-27 22:07:13 +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
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
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
btsimonh
c88bff5a46
Berry: add path.rmdir(path), path.mkdir(path) (#18853)
(cherry picked from commit 7ce04b8624c88279c57d4a7556aabbe5f3317773)
2023-06-11 20:40:28 +02: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
844caf51f9
Fixed HASPmota event when value is non-integer (fixes #18229) (#18791) 2023-06-04 20:06:04 +02:00
s-hadinger
61f17221d0
Berry simplify I2S implementation (#18778) 2023-06-02 16:36:09 +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
s-hadinger
82895c53e3
Berry add set_lsb_justified(bool) to AudioOutputI2S (#18774) 2023-06-02 09:58:39 +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
s-hadinger
3c75bc92a2
Zigbee Berry mapping fix attributes (#18747) 2023-05-29 23:05:45 +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
2baba2b9c2 Fix berry mute option (#18684) 2023-05-19 12:48:19 +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
s-hadinger
884b6713a8
Berry fix energy (#18628) 2023-05-09 23:24:23 +02:00
Jason2866
efc464e998
Berry code solidifying with GH actions (#18611) 2023-05-08 20:44:31 +02:00
s-hadinger
ae6d435aaf
autoconf extract display.ini to file system (#18604) 2023-05-07 22:58:27 +02:00
s-hadinger
069278f966
Berry add tcpclientasync class for non-blocking TCP client (#18584) 2023-05-05 15:13:22 +02:00
s-hadinger
13de7a4863
Berry make add_driver() idempotent (#18580) 2023-05-04 21:27:55 +02:00
Christian Baars
f6763eb37b
Berry: add BLE server/advertiser (#18494) 2023-04-26 08:39:29 +02:00
s-hadinger
3c57755bb7
Berry fix rules for string comparisons (#18464) 2023-04-21 08:59:49 +02:00
s-hadinger
b235dffb29
Fix Berry hue_bridge (#18459) 2023-04-19 23:45:05 +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
d6ed4adcf6
Berry add mdns.remove_service() (#18238) 2023-03-21 22:34:10 +01:00
s-hadinger
83812f158b
`UrlFetch` now follows redirects (#18173) 2023-03-12 18:48:12 +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
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
af8dbe8724
Berry rule engine fix array index (#18123) 2023-03-05 22:35:16 +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
s-hadinger
dcbf50a918
Matter automatic ifdefs (#18002) 2023-02-19 22:25:29 +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
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
s-hadinger
03815d827a
Berry energy_ctypes fixed accordingly (#17820) 2023-01-29 12:09:29 +01:00
s-hadinger
61be95841f
Berry crypto.EC_P256 ECDSA signature ASN.1 (#17740) 2023-01-18 20:50:01 +01:00
s-hadinger
457f706d17
Berry `crypto.EC_P256` ECDSA signature (required by Matter protocol) (#17723) 2023-01-16 21:48:28 +01:00
s-hadinger
4e60bd7465
Berry add static class to declare inner classes (#17699) 2023-01-14 11:38:51 +01:00
s-hadinger
7104d10d61
Berry add spake2+ mods needed for Matter (#17598) 2023-01-04 21:22:07 +01:00
s-hadinger
d59caa7203
Berry `crypto.AES_CCM` (required by Matter protocol) (#17586) 2023-01-03 20:26:46 +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
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
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
s-hadinger
d670f476ba
Berry add crypto AES_CTR, HDMAC_SHA256, MD5 (#17451) 2022-12-19 22:30:54 +01:00
s-hadinger
318c83cb36
Revert UDP begin() (#17431) 2022-12-18 14:28:05 +01:00
s-hadinger
30ace5a3f3
Berry support for crypto.SHA256 (#17430) 2022-12-17 23:38:57 +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
Stephan Hadinger
4a32623a51 IPv6 improvements 2022-12-10 13:44:16 +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
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
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
barbudor
743c162499 Adding PUT, PATCH and DELETE to Berry webclient 2022-11-21 19:42:46 +01:00
Stephan Hadinger
d40c24d6d3 Berry ArtNet implementation 2022-11-20 22:04:30 +01:00
Stephan Hadinger
0849b6e5ef Rename to udp.close() 2022-11-16 08:33:13 +01:00
Stephan Hadinger
f7fa09ebbe Berry add `udp->stop()` method 2022-11-15 23:28:34 +01:00
Stephan Hadinger
0e5f79da9c Fix to Leds set_bytes, and added persistance to ArtNet Berry 2022-11-13 18:05:13 +01:00
Stephan Hadinger
e910f3071c Berry add `dyn` class 2022-11-06 10:52:17 +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
Christian Baars
0b063f62df
allow ULP on ESP32, S2 and S3 2022-10-30 18:43:37 +01:00
Stephan Hadinger
2bf7ea1154 Prepare for DMX Artnet support on ESP32 2022-10-24 23:05:23 +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
Stephan Hadinger
5e03066883 Resize FS to max at initial boot 2022-10-16 11:49:30 +02:00
Stephan Hadinger
fac1b89afa HASPmota support for TTF fonts 2022-10-08 15:19:38 +02:00
Stephan Hadinger
51f4bae703 HASPmota support for switch val attribute 2022-10-04 18:03:11 +02:00
Stephan Hadinger
eb65038b6c Zigbee report unprocessed attributes 2022-09-19 22:03:46 +02:00
Stephan Hadinger
6c6031f0b3 Command `UrlFetch <url>` to download a file to filesystem 2022-09-19 19:20:11 +02:00
Stephan Hadinger
d266e511ee Berry final auto-solidify 2022-09-19 09:02:39 +02:00
Stephan Hadinger
62fcba4b11 Berry more auto-solidification 2022-09-18 23:12:57 +02:00
Stephan Hadinger
2f81bfff21 Berry more automated solidification 2022-09-14 19:39:46 +02:00
Stephan Hadinger
e0f9154986 Berry automated solidification of code 2022-09-12 22:02: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
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
Christian Baars
d57a1cadc9 refactor MI32 and BLE in Berry to module 2022-09-10 16:38:12 +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
Stephan Hadinger
8df2d10f52 HASPmota val_rule ignores non numeric matches 2022-09-09 22:23:43 +02:00
Stephan Hadinger
e1e04d9525 HASPmota increase details for exceptions 2022-09-09 21:38:28 +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
Stephan Hadinger
979288570e HASPmota make spinner editable 2022-08-26 08:37:28 +02:00
Stephan Hadinger
a3c29375e8 Berry Zigbee integration for received messages 2022-08-22 21:32:39 +02:00
Stephan Hadinger
d5ed1abf07 Berry add tasmota.remove_fast_loop() 2022-07-10 19:34:04 +02:00
Stephan Hadinger
5e758db898 Berry tcpserver 2022-07-07 19:28:17 +02:00
Christian Baars
ea90138181 add the missing '@' 2022-07-02 22:59:10 +02:00
Christian Baars
e730f43d26 change error reporting for adc_config 2022-07-02 22:33:31 +02:00
Christian Baars
a793296bc1 ESP32: support ULP via Berry 2022-07-02 21:30:04 +02:00
Stephan Hadinger
9a74a63740 Berry improved mqtt.unsubscribe() 2022-06-26 18:59:31 +02:00
Stephan Hadinger
dd364c92da Berry comobj standard deallocator 2022-06-16 22:37:33 +02:00
Stephan Hadinger
9b26c01dd0 Berry virtual member can return nil 2022-06-15 22:00:31 +02:00
Stephan Hadinger
af41d81c5a Berry ctypes small optimization 2022-06-07 22:20:42 +02:00
Stephan Hadinger
0aefb278cd Berry optimization of crypto module 2022-06-07 21:59:27 +02:00
Stephan Hadinger
ffbc95717a Berry weak strings 2022-06-06 21:01:12 +02:00
Stephan Hadinger
82d4e14171 Cleaning unused variables 2022-06-03 22:57:05 +02:00
Stephan Hadinger
19ff938d09 Berry Zigbee support payload of zcl_frame as bytes() 2022-06-01 22:06:57 +02:00
Theo Arends
e8376885ff Fix another future compile error 2022-05-31 15:29:03 +02:00
Stephan Hadinger
82636e41b5 Berry LVGL fix memory leak in log reader 2022-05-29 18:32:04 +02:00
Stephan Hadinger
ce33aa5f9d Berry zigbee phase 1 2022-05-24 22:45:04 +02:00
Stephan Hadinger
2a38c1c0f6 Berry add crc.sum() 2022-05-24 22:06:50 +02:00
Stephan Hadinger
18dee9ff3b Partition_core suppport unknown types 2022-05-21 19:02:58 +02:00
Stephan Hadinger
086c4d6371 Rename OpenHASP to HASPmota 2022-05-20 21:29:39 +02:00
Stephan Hadinger
c4767578a0 OpenHASP fix dropdown direction 2022-05-13 22:39:51 +02:00
Stephan Hadinger
1e55a9ba50 OpenHASP support for dropdown attributes 2022-05-13 22:28:17 +02:00
Stephan Hadinger
e6411a5d69 OpenHASP support for roller's text attribute 2022-05-13 12:12:48 +02:00
Stephan Hadinger
aa1a0179a4 OpenHASP event value 2022-05-11 22:50:17 +02:00
Stephan Hadinger
a3c5a190de Berry partition_core fixes 2022-05-10 23:13:27 +02:00
Stephan Hadinger
b5206206d7 OpenHSAP fix val attribute for roller and slider 2022-05-10 21:31:18 +02:00
Stephan Hadinger
350b670fa0 Esp32 real flash size 2022-05-09 22:43:27 +02:00
Christian Baars
0e87f06ba6 Berry: add content_response() to webserver 2022-05-08 18:00:15 +02:00
Stephan Hadinger
8689563d90 Berry add additional primitives to partition_core 2022-05-08 14:15:36 +02:00
Stephan Hadinger
190b9ca17f Berry flash.factory and partition_core 2022-05-06 20:31:24 +02:00
Stephan Hadinger
02cafa1c85 OpenHASP support string in template 2022-05-06 18:57:49 +02:00
Stephan Hadinger
f28dc39b82 Berry flash write unaligned and download to flash 2022-05-04 21:13:32 +02:00
Stephan Hadinger
5fbf1f266f Berry flash.factory() 2022-05-01 17:30:33 +02:00
Stephan Hadinger
495bfaf047 Berry add ota rollback 2022-05-01 16:14:19 +02:00
Stephan Hadinger
66aa714524 Berry partition manager display factory partition 2022-04-30 18:50:05 +02:00
Stephan Hadinger
c394830f99 Berry make partition manager compatible with single OTA 2022-04-30 17:00:24 +02:00
Stephan Hadinger
83ba50f904 Berry make commands and rules reentrant 2022-04-30 12:48:06 +02:00
Stephan Hadinger
80cb0564cd Berry easier MQTT subscribe 2022-04-29 23:43:55 +02:00
s-hadinger
950933cafa
Berry rename solidified partition to partition_core (#15482)
* Berry rename solidified partition to partition_core

* Add init to force `partition_core` as global
2022-04-29 12:03:19 +02:00
Stephan Hadinger
fd3bce508c Berry use crc32 code from esp rom 2022-04-29 10:19:47 +02:00