Compare commits

...
Author SHA1 Message Date
TD-er b5af85ece7 automatically updated release notes for mega-20240401 2024-04-01 00:13:54 +02:00
TD-erandGitHub f2d8962ba8 Merge pull request #5018 from tonhuisman/bugfix/Release-packaging-step-once-more
[Bugfix] Release script fixes and simplifications
2024-04-01 00:12:43 +02:00
Ton Huisman 1f50d84d83 [Bugfix] Release script fixes and simplifications 2024-03-31 20:12:50 +02:00
TD-er f4f1e318c6 automatically updated release notes for mega-20240331 2024-03-31 15:40:09 +02:00
TD-erandGitHub 6f15538ef3 Merge pull request #5003 from tonhuisman/feature/P116-add-alternative-st7789-revisions
[P116] Add alternative model selections for ST7789/ST7735
2024-03-31 14:56:09 +02:00
TD-erandGitHub 33de614645 Merge pull request #4988 from erstec/ina219-add-range
INA219 26V 8A range added
2024-03-31 14:31:54 +02:00
TD-erandGitHub 0ca698b23f Merge branch 'mega' into ina219-add-range 2024-03-31 14:12:07 +02:00
TD-erandGitHub dce1268d07 Merge pull request #5014 from TD-er/bugfix/MQTT_formula_crash
[MQTT] Fix crash and disconnect sending to MQTT using formula
2024-03-29 17:23:12 +01:00
TD-erandGitHub 3f250a4d4c Merge pull request #5015 from tonhuisman/bugfix/Build-disable-notifiers-in-full-binaries
[Build] Disable Notifiers in full binaries
2024-03-28 22:43:29 +01:00
Ton Huisman 5442b8a739 [Build] Fix typo 2024-03-28 22:03:34 +01:00
Ton Huisman a7d7c69fc4 [Build] Disable Notifiers in full binaries 2024-03-28 19:23:19 +01:00
TD-er b823374ce8 [MQTT] Fix crash and disconnect sending to MQTT using formula 2024-03-28 13:52:42 +01:00
Ton Huisman 66ed1b55b1 [P116] Update documentation for supported displays 2024-03-26 21:19:09 +01:00
Ton Huisman bdbf0527f9 [P095] Documentation improvement. 2024-03-25 22:03:45 +01:00
Ton Huisman 3fa9a3603a [P116] Documentation improvement. 2024-03-25 22:02:23 +01:00
Ton Huisman 9567b33279 [P116] Fine-tuning the rotation column-offset for ST7735 135x240 display 2024-03-25 21:57:19 +01:00
Ton Huisman 558a8f3ddf Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P116-add-alternative-st7789-revisions 2024-03-25 20:55:24 +01:00
TD-erandGitHub edccb0b90e Merge pull request #5012 from TD-er/build/Reduce_display_build
[Display] Reduce ESP8266 'display' build size
2024-03-25 17:13:09 +01:00
TD-er 318d3b6345 [Display] Reduce ESP8266 'display' build size 2024-03-25 14:55:42 +01:00
TD-erandGitHub 4cd2b373ec Merge pull request #5009 from TD-er/feature/UpdateCULreader
[CUL Reader] Cherry pick code from ESPEasy_NOW pull request
2024-03-25 12:41:05 +01:00
TD-erandGitHub d77fa3a04c Merge branch 'mega' into feature/UpdateCULreader 2024-03-24 23:50:22 +01:00
TD-erandGitHub cf3dcfbb11 Merge pull request #5010 from tonhuisman/feature/P029-C002-Add-invert-on-off-value-option
[P029][C002] Add option Invert On/Off value
2024-03-24 23:49:33 +01:00
TD-erandGitHub c8301e27b6 Merge branch 'mega' into feature/UpdateCULreader 2024-03-24 23:08:09 +01:00
TD-erandGitHub cd215057c8 Merge pull request #5006 from tonhuisman/bugfix/Small-fixes-march-2024
[Bugfix] Small fixes (March 2024)
2024-03-24 23:07:11 +01:00
TD-erandGitHub 6775abdc01 Merge pull request #4997 from tonhuisman/feature/Build-add-C6-max-builds
[Build] Add ESP32-C6 MAX builds (preliminary)
2024-03-24 23:06:38 +01:00
TD-erandGitHub 790896c1b6 Merge pull request #4990 from tonhuisman/feature/P087-add-data-retrieval-from-parsed-regex
[P087] Add serialproxy_test command and Get the parsed data
2024-03-24 23:06:20 +01:00
TD-erandGitHub 5b5b5240f2 Merge pull request #4995 from tonhuisman/bugfix/Release-yml-dont-move-non-existing-file
[Bugfix] Release.yml shouldn't try to move a non-existing file
2024-03-24 23:05:56 +01:00
Ton HuismanandGitHub aa3b8cb2c8 Merge branch 'mega' into bugfix/Release-yml-dont-move-non-existing-file 2024-03-24 22:26:55 +01:00
Ton Huisman 174b9e6f6d Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P116-add-alternative-st7789-revisions 2024-03-24 20:47:11 +01:00
Ton HuismanandGitHub 26e31bd2ba Merge branch 'mega' into feature/P087-add-data-retrieval-from-parsed-regex 2024-03-24 19:37:03 +01:00
Ton Huisman c5be15b8ed [C002] Reduce .bin size (slightly) 2024-03-24 16:35:57 +01:00
Ton Huisman eaded12e55 [Docs] Update P029 documentation with new option 2024-03-24 16:35:10 +01:00
Ton Huisman 4aa51452df [P029][C002] Add option Invert On/Off value 2024-03-24 14:23:13 +01:00
TD-erandGitHub 9824369d60 Merge branch 'mega' into feature/UpdateCULreader 2024-03-21 23:58:38 +01:00
TD-erandGitHub 71a3290cee Merge pull request #5004 from TD-er/bugfix/ESP8266_WiFi_AP_capabilities
[ESP8266 WiFi] Initialize flags for AP capabilities
2024-03-21 23:57:54 +01:00
TD-er 834b0a7a12 [Save Settings] Fix issue where data may get corrupted saving task 2024-03-21 13:40:24 +01:00
TD-er cd354b013e [CUL Reader] Fix not being able to set flags 2024-03-21 12:43:16 +01:00
TD-er efb456bdf9 [CUL Reader] Cherry pick code from ESPEasy_NOW pull request
This is part of the step-by-step merging of the massive ESPEasy-NOW pull request into the `mega` branch
2024-03-21 10:18:30 +01:00
Ton Huisman 294a6a31a9 [P116] Add alternative model selection for ST7735 2024-03-17 22:09:20 +01:00
Ton Huisman 3754981f8a Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P116-add-alternative-st7789-revisions 2024-03-16 23:25:39 +01:00
TD-erandGitHub 8ca65fbdf2 Merge pull request #5007 from Jason2866/patch-1
small refactor of `post_esp32.py` Platformio script
2024-03-16 22:08:11 +01:00
Jason2866andGitHub 701890b023 small refactor
use Platformio Platform functions
2024-03-16 20:32:42 +01:00
Ton Huisman 6ec42d2db0 [Build] Custom IR ESP32 configurations not using the pre_custom_esp32_IR.py Python script 2024-03-16 16:42:16 +01:00
TD-er 548dd5959f [HWCDC] Test for ESP32-C3/C6/S3 HWCDC issues 2024-03-15 22:14:41 +01:00
Ton Huisman c8494f9ce3 [Bugfix] Remove duplicate define in Custom-sample.h 2024-03-14 22:48:24 +01:00
TD-er 7a73e8d418 [Build] Reduce build size regarding WiFi AP Candidate duplicate code 2024-03-12 15:12:11 +01:00
TD-er 8ee39955d8 [ESP-IDF5.1] Revert to older SDK code due to issues with HWCDC 2024-03-12 15:11:01 +01:00
TD-er a906eb1ebb [ESP8266] Remove use of union due to issues on ESP8266 2024-03-11 10:59:11 +01:00
TD-er 627ea80970 [ESP8266] Get rid of several union structs which may cause weird issues 2024-03-11 00:51:35 +01:00
TD-er 04c3ff3027 [ESP8266 WiFi] Initialize flags for AP capabilities
May fix issues where the ESP may not properly (re)connect  to an AP
2024-03-09 18:15:20 +01:00
Ton Huisman d191a285e9 [P116] Add alternative model selections for ST7789 2024-03-09 17:38:45 +01:00
TD-erandGitHub 8cf9050560 Merge pull request #5002 from TD-er/bugfix/install_pygit2
[PlatformIO] Fix installing pygit2
2024-03-09 16:23:48 +01:00
TD-er 92383a82a5 [PlatformIO] Fix installing pygit2
Fixes: #4943
2024-03-09 13:17:48 +01:00
TD-erandGitHub 87c1d6a55c Merge pull request #5000 from TD-er/bugfix/JL1101_Ethernet
[JL1101] Fix JL1101 Ethernet + update to latest ESP-IDF5.1 code
2024-03-06 13:41:39 +01:00
TD-er d0d67829b9 [JL1101] Fix JL1101 Ethernet + update to latest ESP-IDF5.1 code
Fixes: #4998
2024-03-06 11:01:02 +01:00
Ton Huisman bc4a051753 [Docs] Update ESP chip info 2024-03-02 23:21:47 +01:00
Ton Huisman d8da6b5a1c [Docs] Update ESP chip info 2024-03-02 22:42:36 +01:00
Ton Huisman fd8300dcbe [Build] Add ESP32-C6 MAX builds (preliminary) 2024-03-02 21:39:11 +01:00
Ton Huisman 91543ec87b [Bugfix] Release.yml shouldn't try to move a non-existing file 2024-02-29 23:02:52 +01:00
TD-er d6514ec699 automatically updated release notes for mega-20240229 2024-02-29 15:10:58 +01:00
Ton Huisman cd2083b107 [P087] Always process Global Match so values can be retrieved 2024-02-27 21:06:03 +01:00
Ton Huisman 17e391514b [P087] Apply log-string and code optimizations 2024-02-26 23:15:50 +01:00
Ton Huisman ae6aea4226 [P087] Documentation clarification 2024-02-26 21:26:15 +01:00
Ton Huisman 2e0d83a9e4 [P087] Fix typo 2024-02-26 21:06:50 +01:00
Ton Huisman 756c3594a9 [P087] Add serialproxy_test command and Get the parsed data 2024-02-25 23:19:06 +01:00
TD-erandGitHub c4fd0e9644 Merge pull request #4985 from tonhuisman/feature/Docs-and-easycolorcode-updates-feb-2024
[Docs] Documentation and EasyColorCode updates and fixes, Feb 2024
2024-02-22 22:58:16 +01:00
Ton Huisman 01ce6fff39 [EasyColorCode] Correction and var rename commonEvents 2024-02-22 20:36:16 +01:00
Ton Huisman 497d00031d Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/Docs-and-easycolorcode-updates-feb-2024 2024-02-22 20:27:59 +01:00
Ernest (ErNis) 64699e1de7 INA219 26V 8A range added 2024-02-22 20:24:12 +02:00
TD-erandGitHub 9b8b0f0d95 Merge pull request #4987 from chromoxdor/Update/EasyColorCode
[EasyColorCode] Update codemirror to 5.65.16
2024-02-22 13:12:20 +01:00
chromoxdor 013fcfe846 Update codemirror to 5.65.16 2024-02-22 12:18:16 +01:00
TD-erandGitHub f46a8fb6c7 Merge pull request #4973 from chromoxdor/docs/thinkspeak-event-typos
[Docs] minor corrections for "thingspeak event"
2024-02-21 21:30:09 +01:00
TD-erandGitHub 4abfdaab69 Merge pull request #4984 from tonhuisman/feature/PublishR-mqtt-publish-with-retain
[MQTT] Add PublishR command: publish with will-retain
2024-02-21 21:29:33 +01:00
Ton Huisman 0f6eebcda7 [MQTT] Fix debug strformat message 2024-02-21 20:50:41 +01:00
Ton Huisman c34d14bcbf [Docs] Documentation and EasyColorCode updates and fixes, Feb 2024 2024-02-20 22:09:29 +01:00
Ton Huisman 299510ddfa [MQTT] Add PublishR command: publish with will-retain 2024-02-20 20:56:38 +01:00
TD-erandGitHub 887ce21018 Merge pull request #4979 from TD-er/feature/DetectRealEmbeddedFlashPSRAM
[Misc] Various fixes for new installed nodes
2024-02-18 21:46:41 +01:00
TD-er acd31386d4 [Build] Add flag to help not compile/download unused libs 2024-02-18 01:44:15 +01:00
TD-er bfe5926589 [ESP32-C3/C6] Fix stalling on concurrent connections 2024-02-18 01:43:18 +01:00
TD-er 517b259739 [Build] Fix typo in ESP32-S2 code 2024-02-17 17:27:07 +01:00
TD-er 3a4e24f163 [Build] Fix build on non-ESP32-S3 2024-02-17 16:57:16 +01:00
TD-er f79fbe5048 [Build] Fix build issue on ESP-IDF4.4 2024-02-17 16:33:19 +01:00
TD-er 77e1d29bdc [ESP32-C3/C6] Fix web slowdown by reverting Arduino/IDF code 2024-02-17 16:09:37 +01:00
TD-er e9d4808336 [IPv6] Fix slowdown restarting services on receiving IPv6 address 2024-02-17 16:08:59 +01:00
TD-er 7399c7ac49 [ESP8266] Reduce memory usage by actively flushing webpage buffers 2024-02-17 16:08:21 +01:00
TD-er f2c5b5aced [HW info] Add checks for properly identify embedded flash/PSRAM 2024-02-17 16:07:15 +01:00
TD-erandGitHub dfe2bdadcd Merge pull request #4975 from TD-er/bugfix/esp32_wifi_connect
[WiFi] Fix slow WiFi connect after scan on ESP32
2024-02-15 21:34:34 +01:00
TD-er 4cc4f0ffae [ESP-IDF5.x] Add fix to ESP-IDF/Arduino for W5500 without RST (AtomPoE) 2024-02-15 18:06:05 +01:00
TD-er bc81cedb32 [Eth] Show Ethernet adapter used in JSON/Sysinfo 2024-02-15 18:05:03 +01:00
TD-er 51a043b95e [Rules] Remove warning for max size on Rules edit page 2024-02-15 15:37:36 +01:00
TD-er 3e91f8fd0d [GPIO] Add form note setting pull-up on Hardware tab (#4800) 2024-02-15 15:36:22 +01:00
TD-er 61e82decce [Docs] Add warning changing ECO mode when using SPI Ethernet 2024-02-15 15:35:02 +01:00
TD-er e85aa8e820 [WiFi] Fix crash when WiFi was turned off while data is sent 2024-02-15 10:49:30 +01:00
TD-er 109e0dbfaa [WiFi] Fix crash when calling disconnect or wifimode,off from remote src 2024-02-15 10:31:15 +01:00
TD-er 174a80d242 [ESP32 WiFi] Fix crashing on wifi disconnect 2024-02-15 10:09:26 +01:00
TD-er f96a6abd1b [ESP-IDF5.1] Fix renamed platform zip file 2024-02-14 20:35:52 +01:00
TD-er 33104b48d0 [ESP-IDF5.1] Update platform package for ESP32-solo1 2024-02-14 20:13:04 +01:00
TD-er d90b46464c [ESP-IDF5.1] Update to latest IDF and Arduino commits 2024-02-14 18:36:33 +01:00
TD-er e98b2aa6ba [Build] Fix missing include 2024-02-14 00:46:28 +01:00
TD-er 5d26b0fa9f [SPI Eth] Allow SPI Ethernet W5500 to have not connected INT pin 2024-02-13 23:35:10 +01:00
TD-er 2ef6dfa2c2 [ESP32 WiFi] Fix slow connect after WiFi scan 2024-02-13 23:33:25 +01:00
TD-er 581a6f87f1 [SPI Eth] Add ESP32-S3 ETH builds 2024-02-13 23:32:40 +01:00
chromoxdor d1e845a8a8 Update Rules.rst 2024-02-12 13:29:39 +01:00
TD-erandGitHub 75bafa5ca6 Merge pull request #4970 from TD-er/build/test_solo1_platform
[Build] Test ESP32-solo1 build on CI
2024-02-12 11:57:19 +01:00
TD-er fc73e026a1 Merge branch 'mega' into build/test_solo1_platform 2024-02-12 11:12:27 +01:00
TD-er c7ee89f53f [ESP-IDF5.1] Update to latest platform build 2024-02-12 11:12:05 +01:00
TD-erandGitHub f5ccb88c71 Merge pull request #4965 from chromoxdor/thingspeakreply--additon
[SendToHTTP] Thingspeakreply addition
2024-02-11 23:44:27 +01:00
TD-erandGitHub 6cb57ad46c Merge pull request #4938 from tonhuisman/feature/IR-enable-all-protocols-for-ESP32-builds
[IR] Enable all protocols for ESP32 IR builds
2024-02-11 21:15:54 +01:00
TD-erandGitHub 64876cfdc5 Merge pull request #4964 from tonhuisman/feature/Build-allow-feature_servo-for-custom-limit_build_size
[Build] Allow FEATURE_SERVO for Custom builds with LIMIT_BUILD_SIZE set
2024-02-11 21:15:30 +01:00
TD-erandGitHub 4873c50f5e Merge pull request #4966 from chromoxdor/p102-change-wh-to-kwh
[P102] PZEM004Tv3 change Wh to kWh
2024-02-11 21:05:46 +01:00
TD-erandGitHub 4463cfa2cf Merge pull request #4907 from uwekaditz/P016]-PullRequest
[P016] DecodeType UNKNOWN was not on the web interface (decodetypes UNKNOWN and UNUSED were mixed up!)
2024-02-11 21:05:26 +01:00
TD-erandGitHub 1e5b7d13f2 Merge pull request #4972 from tonhuisman/bugfix/VCC-variable-not-recognized
[Bugfix] `%vcc%` variable isn't recognized
2024-02-10 16:20:43 +01:00
Ton Huisman 8120a740a3 [Bugfix] %vcc% variable isn't recognized 2024-02-10 13:56:09 +01:00
TD-er e24623c1fb [Build] Test ESP32-solo1 build on CI
Building ESP32-solo1 envs fails on Windows
2024-02-09 16:16:02 +01:00
TD-erandGitHub 30e793ce79 Merge pull request #4963 from letscontrolit/bugfix/esp32_idf5_pwm
[PWM] Fix ESP32 LittleFS build PWM GPIO : port#2 is out of range (#4962)
2024-02-09 16:08:21 +01:00
TD-er 750afc7094 [ESP-IDF5.1] Fix build ESP32-C2 2024-02-09 15:12:55 +01:00
uwekaditzandGitHub fae0205d00 Merge branch 'mega' into P016]-PullRequest 2024-02-08 23:02:36 +01:00
TD-er f56453f269 [Email] Fix sending multiple lines in body (#4967)
Fixes: #4967
2024-02-08 22:45:17 +01:00
TD-er 78b89c9758 [ESP-IDF5.1] Update to latest Arduino and ESP-IDF commits 2024-02-08 22:44:15 +01:00
TD-er ee60dcb097 [ESP32 PWM] Fix calling ledcAttach for Servo and PWM on ESP32 IDF5.1 2024-02-05 23:35:00 +01:00
TD-er 9a38d1a43b [PWM] Fix deadlock on ESP32-classic with PWM fade 2024-02-05 21:02:55 +01:00
TD-erandGitHub b7e9ff8b78 Merge pull request #4961 from TD-er/bugfix/ESP32_SPI_Ethernet_shared_bus
[SPI Ethernet] Fix concurrency issue with shared SPI bus for ETH/display
2024-02-05 19:36:21 +01:00
chromoxdor 84f47c6db7 Update _P102_PZEM004Tv3.ino 2024-02-05 17:02:19 +01:00
chromoxdor bfb2c0f2ba Update _P102_PZEM004Tv3.ino 2024-02-05 17:00:46 +01:00
chromoxdor 29c2ff5473 initial changes 2024-02-05 15:42:22 +01:00
TD-er 619f25f984 [SPI Ethernet] Make default Ethernet parameters more neutral 2024-02-04 23:41:54 +01:00
Ton Huisman 64de5a08ef [Build] Allow FEATURE_SERVO for Custom builds with LIMIT_BUILD_SIZE set 2024-02-04 17:04:15 +01:00
TD-erandGitHub 1bc4e692f6 [PWM] Fix ESP32 LittleFS build PWM GPIO : port#2 is out of range (#4962)
Fixes: #4962
2024-02-04 16:58:15 +01:00
TD-er f777463c3b [Build] Fix build on ESP32-C3 2024-02-04 15:07:10 +01:00
TD-er 0fd9e6c768 [SPI Ethernet] Fix concurrency issue with shared SPI bus for ETH/display
SPI Ethernet does do funky stuff with initializing the SPI bus.
It must be exclusive on that bus, or being handed an already initialized SPI bus for `ETH.begin()`
2024-02-04 14:29:50 +01:00
TD-erandGitHub 8371a84e7e Merge pull request #4960 from iz8mbw/patch-10
Added missing P166
2024-02-03 20:50:00 +01:00
TD-erandGitHub ce77cf9a8f Merge pull request #4959 from TD-er/bugfix/esp32_SPI_eth_pins
[SPI Ethernet] Allow selecting RMII pins for SPI Ethernet
2024-02-03 20:49:32 +01:00
Fabio AnconaandGitHub fb8cb58097 Added missing P166
Added missing GP8403 Dual channel DAC (Digital Analog Converter)
2024-02-03 17:53:31 +01:00
TD-er db08d00e4b [SPI Ethernet] Allow selecting RMII pins for SPI Ethernet
As is required when using the M5Stack W5500 module on M5 Stack Core2
2024-02-03 17:37:04 +01:00
uwekaditzandGitHub 8533d036de Merge branch 'mega' into P016]-PullRequest 2024-02-03 17:07:38 +01:00
TD-erandGitHub 438ef4fd3f Merge pull request #4910 from flashmark/P164_gases-ens160
P164 gases ens160
2024-02-03 16:20:09 +01:00
TD-er 7c3b582255 [Build] Fix missing #endif 2024-02-03 15:08:35 +01:00
TD-erandGitHub f1a6093607 Merge branch 'mega' into P164_gases-ens160 2024-02-03 14:59:37 +01:00
flashmark 91958d51b7 Merge 2024-02-03 13:59:15 +01:00
TD-erandGitHub 6647e35f33 Merge pull request #4958 from TD-er/bugfix/esp32_IPv6
[IPv6] Fix IPv6 on ESP32-S3
2024-02-02 13:12:21 +01:00
TD-er 9202f2abb4 [IPv6] Fix IPv6 on ESP32-S3 2024-02-02 12:08:33 +01:00
TD-erandGitHub 0e0145e151 Merge pull request #4952 from tonhuisman/feature/P166-Add-plugin-gp8403-dac-0-10V
[P166] Add plugin GP8403 DAC Dual channel 0-10V
2024-01-31 22:57:45 +01:00
Ton Huisman 88e05ed73c [P166] Documentation improvements 2024-01-31 21:02:56 +01:00
Ton Huisman 1459b47399 [P166] Add documentation 2024-01-30 23:25:18 +01:00
Ton Huisman 94c5f7c381 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P166-Add-plugin-gp8403-dac-0-10V 2024-01-30 20:53:01 +01:00
TD-erandGitHub 8e86a555fb Merge pull request #4949 from TD-er/bugfix/IPv6_ESP32_address
[ESP32 IPv6] Fix getting IPv6 address on ESP32 classic
2024-01-30 13:33:20 +01:00
TD-erandGitHub 711bedba3e Merge branch 'mega' into bugfix/IPv6_ESP32_address 2024-01-30 10:30:41 +01:00
TD-erandGitHub 481fe3b421 Merge pull request #4856 from chromoxdor/reply_event
[sendtohttp] thingspeak only reply event
2024-01-30 10:30:11 +01:00
chromoxdorandGitHub c215acfbd8 Merge branch 'mega' into reply_event 2024-01-30 09:59:35 +01:00
TD-er eee0d4978f [ESP-IDF5.1] Update to latest SDK/Arduino commits 2024-01-30 00:13:12 +01:00
TD-er f3112eb5c4 [SPI Ethernet] Add "- None -" Ethernet type option on Hardware Page 2024-01-30 00:12:42 +01:00
Ton Huisman 44fdd79793 [P166] Fix bug that Initial values where not applied after settings save 2024-01-29 23:37:09 +01:00
TD-er 6cee545f4a [Cleanup] Fix crashes on ESP32 sending log from ISR callback functions 2024-01-29 16:48:26 +01:00
TD-er 0daf65e58e [SPI Ethernet] Fix typo in docs 2024-01-29 16:46:13 +01:00
uwekaditzandGitHub a32f0f969b Merge branch 'mega' into P016]-PullRequest 2024-01-29 15:51:20 +01:00
TD-er c897816880 [SPI Ethernet] Document SPI Ethernet + Eth config for available boards 2024-01-29 12:14:23 +01:00
Ton Huisman 681a5b3c1a [P166] Optionally restore last output value on warm boot (setting, default enabled) 2024-01-28 22:11:08 +01:00
flashmarkandGitHub b01c28377d Merge branch 'letscontrolit:mega' into P164_gases-ens160 2024-01-28 17:36:31 +01:00
TD-er b2bb9d2c37 [Build] Fix building on ESP8266 2024-01-28 01:25:30 +01:00
TD-er 150063aeef [SPI Ethernet] Fix build on ESP-IDF < 5.x 2024-01-28 00:52:35 +01:00
TD-er 5064038009 [SPI Ethernet] Fix detect Link Up/Down + cleanup code 2024-01-28 00:26:47 +01:00
Ton Huisman a3f72f37c6 [UI] Update plugin I2C address selectors to normal order, with matching default 2024-01-27 21:27:22 +01:00
Ton Huisman 0d27dcacc7 [P166] Adjust I2C address selector default 2024-01-27 17:57:03 +01:00
Ton Huisman b5740f9609 [UI] Add alternative 'default' selection to addFormSelectorI2C(), select by address 2024-01-27 17:56:20 +01:00
Ton Huisman 968b43365c [P166] Restore I2C address selector order, fix compiler warning 're-order' 2024-01-27 15:33:38 +01:00
Ton Huisman bf2d14b406 [UI] Add alternative 'default' selection to addFormSelectorI2C() 2024-01-27 15:32:18 +01:00
Ton Huisman d4730dd6b2 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P166-Add-plugin-gp8403-dac-0-10V 2024-01-27 15:29:15 +01:00
TD-er d6f07ba327 [SPI Ethernet] Fix build pre-ESP-IDF5.1 2024-01-27 01:42:10 +01:00
TD-er 7571b6015e Merge remote-tracking branch 'letscontrolit/mega' into bugfix/IPv6_ESP32_address 2024-01-27 01:19:45 +01:00
TD-er 81ffad5f17 [SPI Ethernet] Use user configurable SPI bus for SPI Ethernet 2024-01-27 01:19:21 +01:00
Ton Huisman 1de42de6b4 [P166] Set default I2C address to 0x5F, as that's how is delivered 2024-01-26 23:36:06 +01:00
TD-erandGitHub 8e7c16208c Merge pull request #4919 from tonhuisman/feature/GH-up-download-delete-actions-fix
[Build] Fix buildscripts for v4 Actions `upload-artifact`, `download-artifact` and `delete-artifact`
2024-01-26 23:08:25 +01:00
Ton Huisman da704540bb [P166] Update changelog 2024-01-26 21:15:54 +01:00
Ton Huisman d56d4f83fd [P166] Send out data by scheduling a timer 2024-01-26 21:14:35 +01:00
TD-er ff8a24643b [SPI Ethernet] Fix build 2024-01-26 20:59:10 +01:00
Ton Huisman c7608cfe6c [Build/Release] Remove Wdalen/retry.action plugin for Node 20 compatibility 2024-01-26 20:57:47 +01:00
TD-erandGitHub 8e683bda81 Merge branch 'mega' into bugfix/IPv6_ESP32_address 2024-01-26 20:56:51 +01:00
Ton Huisman b402159198 [P166] Send out datat for events/controllers when changing output values 2024-01-26 20:49:45 +01:00
uwekaditz 736b430427 [P016] BUG: Decode type UNKNOWN was not added to the web settings
BUG: Decode types UNKNOWN and UNUSED were mixed up
CHG: Reverted changes for this PR in \lib\IRremoteESP8266\src\IRtext.cpp
CHG: Workaround for decode type UNKNOWN is not necessary
CHG: Initalisation of the variables with decode type UNUSED (=0)
2024-01-26 19:56:56 +01:00
TD-er db1896876d [SPI Ethernet] Fix build for pre ESP-IDF5.1 2024-01-26 19:01:02 +01:00
TD-er 78e24ffd96 [SPI Ethernet] Add support for SPI Ethernet modules 2024-01-26 18:36:27 +01:00
TD-er 6b0d632564 [IPv6] Move log to more logical place 2024-01-26 16:02:14 +01:00
Ton Huisman b77b9c4674 [Build/Release] Update actions/cache to v4 2024-01-25 22:57:19 +01:00
Ton Huisman 196470f544 [P166] Add isI2CEnabled check on PLUGIN_INIT 2024-01-25 22:53:22 +01:00
Ton Huisman fc61a48283 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/GH-up-download-delete-actions-fix 2024-01-25 22:47:47 +01:00
Ton Huisman cdf20e46da Merge branch 'feature/GH-up-download-delete-actions-fix' of https://github.com/tonhuisman/ESPEasy-1 into feature/GH-up-download-delete-actions-fix 2024-01-25 22:47:35 +01:00
uwekaditzandGitHub 0c8f1354a5 Merge branch 'mega' into P016]-PullRequest 2024-01-25 20:10:41 +01:00
Ton Huisman b82717b404 [P166] Add plugin GP8403 DAC Dual channel 0-10V 2024-01-24 21:37:44 +01:00
TD-erandGitHub 0c8a0d1988 Merge pull request #4950 from TD-er/build/esp8266_custom_IR_1M
[Build] Add ESP8266 custom IR 1M build + IPv6 to custom ESP32 IR build
2024-01-24 21:35:01 +01:00
TD-erandGitHub ab7dbcfe1e Merge pull request #4951 from chromoxdor/fix-json-plugin-description-
[JSON] Fix syntax of plugin description array
2024-01-24 20:41:59 +01:00
chromoxdor 8712d2fd72 Update StringGenerator_System.cpp 2024-01-24 18:29:41 +01:00
TD-erandGitHub 89cc954335 Merge pull request #4948 from TD-er/cleanup/P036_OLEDframed_checks
[Cleanup] Reduce stack usage + fix bound checks OLED Framed
2024-01-24 17:46:53 +01:00
TD-er a755496fd5 [Build] Add ESP8266 custom IR 1M build + IPv6 to custom ESP32 IR build 2024-01-24 17:44:33 +01:00
TD-er 0a39e66b3d [ESP32 IPv6] Fix getting IPv6 address on ESP32 classic 2024-01-24 17:43:14 +01:00
chromoxdorandGitHub 16679237f1 Merge branch 'letscontrolit:mega' into reply_event 2024-01-24 11:17:06 +01:00
uwekaditz 2077ee9d5d Uncrustify #ifdef's
The position of the #ifdef's were not changed!
2024-01-23 23:10:13 +01:00
uwekaditz 951b1fb8c8 Uncrustify
The position of the #ifdef's were not changed!
2024-01-23 22:48:47 +01:00
uwekaditz 769ae8c849 Use the new property addToQueue in ExecuteCommand_all()
Use the new property addToQueue in ExecuteCommand_all() due to the lack of resources
Using strformat() for the debug messages
Heap and memory can be reported (P016_CHECK_HEAP)
2024-01-23 22:27:58 +01:00
uwekaditzandGitHub 704c39d147 Merge branch 'mega' into P016]-PullRequest 2024-01-23 19:52:27 +01:00
TD-erandGitHub a3fbe47db6 Merge branch 'mega' into cleanup/P036_OLEDframed_checks 2024-01-23 16:37:04 +01:00
TD-erandGitHub 2f1b93258d Merge pull request #4947 from TD-er/bugfix/ReduceStack_ExecuteCommandQueue
[Commands] Allow commands from external source to be queued (stack)
2024-01-23 16:36:06 +01:00
TD-er 1d08ca4264 [P036 OLED Framed] Add bound checks when drawing fonts 2024-01-23 15:43:17 +01:00
TD-er a39aad952a [P036 Framed OLED] Apply cleanup from Ton's TAR pull request 2024-01-23 15:43:09 +01:00
TD-er 2f43da5eff [Cleanup] Reduce stack usage P036 OLED Framed 2024-01-23 15:42:55 +01:00
TD-er 4c40206974 [Commands] Allow commands from external source to be queued (stack)
To be a bit more friendly on the stack usage, we need to be able to queue commands so they can be processed directly from the loop() instead of deep in the processing of some plugin or controller code.

[Build] Remove ESP8266 1M IR-ext build

[Commands] Fix copy/paste error handling commands
2024-01-23 14:35:19 +01:00
uwekaditz 3c99051026 Reduce code for debug message
Use strformat() instead of adding a log string
2024-01-22 22:21:42 +01:00
uwekaditz a7fad61e7d Revert "Reduce code for debug message"
This reverts commit 59edcac7d9.
2024-01-22 22:12:57 +01:00
uwekaditz 3730465ad1 Revert "Merge branch 'P016]-PullRequest' of https://github.com/uwekaditz/ESPEasy into P016]-PullRequest"
This reverts commit 3e8944ad96, reversing
changes made to 59edcac7d9.
2024-01-22 22:00:45 +01:00
uwekaditz 3e8944ad96 Merge branch 'P016]-PullRequest' of https://github.com/uwekaditz/ESPEasy into P016]-PullRequest 2024-01-22 21:46:39 +01:00
uwekaditz 59edcac7d9 Reduce code for debug message 2024-01-22 21:45:16 +01:00
TD-er a315237db3 [P036 OLED Framed] Add bound checks when drawing fonts 2024-01-22 13:30:03 +01:00
TD-er c287a2cf91 [P036 Framed OLED] Apply cleanup from Ton's TAR pull request 2024-01-22 09:28:04 +01:00
TD-er c05dbd3343 [Cleanup] Reduce stack usage P036 OLED Framed 2024-01-22 01:34:05 +01:00
TD-er 0a697f986e [P016 IR] Add debug code to reproduce crashes Uwe 2024-01-22 00:29:44 +01:00
TD-er 04bd9b52bf [P016 IR] Reduce stack usage execute command 2024-01-22 00:28:44 +01:00
chromoxdorandGitHub 8967740360 Merge branch 'mega' into reply_event 2024-01-21 10:57:02 +01:00
TD-er 45415f6781 [P016 IR] Fix some build mistakes reducing stack usage 2024-01-21 00:28:02 +01:00
TD-er 665aa3e164 [P016 IR] Reduce stack usage executing commands
As reported by @uwekaditz: https://github.com/letscontrolit/ESPEasy/pull/4907#issuecomment-1900880008
2024-01-20 18:22:49 +01:00
uwekaditzandGitHub 170eb83fe5 Merge branch 'mega' into P016]-PullRequest 2024-01-20 15:58:40 +01:00
TD-erandGitHub bfd97ba182 Merge pull request #4945 from TD-er/bugfix/ClearCSE_pulse
[P077_CSE] Fix cseclearpulses command
2024-01-20 15:36:09 +01:00
TD-er 6fe27c89b4 [P077 CSE7766] Call PLUGIN_READ right after cseclearpulses 2024-01-19 21:27:46 +01:00
TD-er 1caba3e2d5 [P077_CSE] Fix cseclearpulses command
As reported here: https://github.com/letscontrolit/ESPEasy/commit/f3a196daadfc1f7ea017133bfc452ba2c263b744#commitcomment-137417126
2024-01-19 09:44:08 +01:00
uwekaditz 15722e7626 Check the vector size when checking for commands, and check that the command is really not empty 2024-01-18 21:24:36 +01:00
uwekaditzandGitHub f0c72a72b2 Merge branch 'mega' into P016]-PullRequest 2024-01-18 20:44:03 +01:00
chromoxdorandGitHub bcae42264d Merge branch 'mega' into reply_event 2024-01-18 19:28:20 +01:00
TD-erandGitHub e015d1b9f6 Merge pull request #4932 from TD-er/bugfix/ESP32_factoryDefaults
Bugfix/esp32 factory defaults
2024-01-18 11:46:43 +01:00
TD-er 67f0f70a25 Merge remote-tracking branch 'letscontrolit/mega' into bugfix/ESP32_factoryDefaults 2024-01-18 10:08:26 +01:00
TD-er 77374107a3 [Build] Fix build error on ESP8266 2024-01-18 10:08:10 +01:00
TD-er 5dc2defb52 [Provisioning] Show error and event on failed firmware update (#4941)
Fixes: #4941
2024-01-18 00:43:39 +01:00
TD-erandGitHub 5e677f713e Merge pull request #4942 from tonhuisman/bugfix/Sphinx-upgrade-bootstrap
[Bugfix] Update bootstrap version for Sphinx to fix documentation menus
2024-01-17 23:28:00 +01:00
Ton HuismanandGitHub 4f45c0cd2b Merge branch 'mega' into feature/GH-up-download-delete-actions-fix 2024-01-17 23:13:10 +01:00
Ton Huisman 8841e2dfa8 [Bugfix] Update bootstrap version for Sphinx to fix documentation menus 2024-01-17 22:32:20 +01:00
TD-er f665a17071 [Cleanup] Reduce build size by simplifying logs 2024-01-16 11:42:33 +01:00
TD-er f3a196daad [P077] Add cseclearpulses command to reset CF pulses counter
As requested on the [forum](https://www.letscontrolit.com/forum/viewtopic.php?t=10006)
2024-01-16 11:42:05 +01:00
TD-er a873019c4d [IPv6] Allow ip6 command from all command sources 2024-01-16 11:40:32 +01:00
TD-er 19e86ff1ee Fix crash in command arg parsing with nullptr string 2024-01-16 11:39:54 +01:00
TD-er d54e056178 [ESP-IDF5.1] Update to latest ESP-IDF & Arduino fixes 2024-01-16 11:39:13 +01:00
flashmarkandGitHub 5a38480932 Merge branch 'letscontrolit:mega' into P164_gases-ens160 2024-01-15 20:50:16 +01:00
uwekaditzandGitHub 7a0aa15c73 Merge branch 'mega' into P016]-PullRequest 2024-01-15 11:29:55 +01:00
Ton Huisman d274380a2b [IR] Enable all protocols for ESP32 IR builds 2024-01-14 21:39:44 +01:00
chromoxdorandGitHub 7c85873e2f Merge branch 'mega' into reply_event 2024-01-14 16:36:52 +01:00
TD-erandGitHub 2811f40f05 Merge pull request #4937 from tonhuisman/feature/Docs-update-sphinx-tools
[Docs] Update Sphinx tools and configuration
2024-01-13 21:20:18 +01:00
Ton Huisman 33ab59a063 [Docs] Update Sphinx tools and configuration 2024-01-13 21:10:08 +01:00
TD-er 98546624a3 [Factory reset] Fix using factory reset defaults on new devices 2024-01-13 17:44:40 +01:00
TD-er 2522e22355 Revert "[Cleanup] Reduce build size (AdaFruitGFX_Helper fonts)"
This reverts commit a95ad3bda1.

Ton was already working on this in a separate PR.
Sorry Ton I forgot to check it...
2024-01-12 16:22:24 +01:00
TD-er 860e8fd22f [build] Fix another build issue due to includes 2024-01-12 16:14:07 +01:00
TD-er 6f6ec09809 Fix "Enable SDK WiFi Auto Reconnect" state on sysinfo page (#4935)
Fixes: #4935
2024-01-12 16:05:08 +01:00
TD-er 44371713f7 [Build] Fix build due to typo in source code 2024-01-12 16:03:30 +01:00
TD-er bd8ae1bbd1 [ESP-IDF5.1] Fix IPv6 for ESP32-S3 2024-01-12 14:55:03 +01:00
TD-er 64ca2ad03f [ESP-IDF5.1] Improve IPv6 for ESP32-xx 2024-01-12 01:43:26 +01:00
TD-er 09bfa9ec30 [Docs] Add credits to origin of ESP32-S3 flash/PSRAM options 2024-01-12 01:41:42 +01:00
TD-er 0d0dfdfd9b [ESP32] Disable PSRAM for ESP32 4M builds (WT32-ETH01 issues) 2024-01-12 01:41:01 +01:00
TD-er a95ad3bda1 [Cleanup] Reduce build size (AdaFruitGFX_Helper fonts) 2024-01-10 20:51:54 +01:00
TD-er 40cafa3b60 [Cleanup] Reduce build size 2024-01-10 20:50:53 +01:00
TD-er aa2d6d9660 [Cleanup] Reduce build size (P104 load/save functions) 2024-01-10 11:59:04 +01:00
TD-er 458a87657b [Cleanup] Reduce build size (P104/P128) 2024-01-10 10:55:46 +01:00
TD-er 22b3856e6d [Cleanup] Reduce build size (P128 NeoPixelBus) 2024-01-09 18:18:35 +01:00
TD-er e1cfee6947 [Cleanup] Reduce bin size (NVS storage & P128 NeoPixelBus) 2024-01-09 17:20:30 +01:00
uwekaditzandGitHub 9a58bbbf1f Merge branch 'mega' into P016]-PullRequest 2024-01-07 11:56:41 +01:00
TD-er 77576896cc [ESP-IDF5.1] Fix starting DHCP on ESP AP during setup
Fixes: #4931
2024-01-06 22:06:09 +01:00
TD-er 0782dd8041 [Factory Reset] Add default flags for factory reset 2024-01-06 19:00:42 +01:00
flashmarkandGitHub 1cc74cb427 Merge branch 'letscontrolit:mega' into P164_gases-ens160 2024-01-06 18:12:36 +01:00
TD-er 02dadceaa4 [ESP-IDF5.1] Add custom_ESP32s2_4M316k_LittleFS_CDC 2024-01-05 23:06:07 +01:00
TD-er cca51b33cb [Factory Reset] Fix applying NVS stored settings only when these exist 2024-01-05 23:05:13 +01:00
TD-er 1a37a7a7b4 [UDP] Only process UDP packets while connected 2024-01-05 23:04:13 +01:00
TD-er d2c62908c2 [HW CDC] Fix delay when no client connected to read serial logs 2024-01-05 23:03:24 +01:00
Ton Huisman de64649bcc Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into mega 2024-01-03 23:18:57 +01:00
Ton Huisman 053fc9e5ed Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/GH-up-download-delete-actions-fix 2024-01-03 23:18:12 +01:00
TD-erandGitHub 69184ffec8 Merge pull request #4930 from TD-er/bugfix/p2p_IPv6
[IPv6] Fix node with IPv6 not seen by other p2p nodes with only IPv4
2024-01-03 23:10:05 +01:00
Ton Huisman 353e8fc163 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/GH-up-download-delete-actions-fix 2024-01-03 20:21:49 +01:00
Ton Huisman b0ccd9335b Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into mega 2024-01-03 20:20:06 +01:00
TD-erandGitHub 45b7130d43 Merge pull request #4906 from chromoxdor/update-documetation
[DOCS]  fix typo
2024-01-03 09:36:17 +01:00
TD-erandGitHub 3a7ad29848 Merge pull request #4928 from tonhuisman/feature/Release-add-esp32-c2-and-esp32-c6-downloads
[Release] Add ESP32-C2 and ESP32-C6 downloads
2024-01-03 09:35:40 +01:00
Ton HuismanandGitHub 5cc799ae31 Merge branch 'mega' into feature/Release-add-esp32-c2-and-esp32-c6-downloads 2024-01-03 08:46:33 +01:00
Ton Huisman 072be688cb [Docs] Update copyright year to 2024 2024-01-02 23:43:07 +01:00
TD-er 72b197aed0 [Build] Fix duplicate extra_scripts declaration in some ESP8266 builds 2024-01-02 22:44:29 +01:00
Ton Huisman 61814e3122 [Docs] Update copyright year to 2024 2024-01-02 22:11:52 +01:00
Ton Huisman 1efa045f87 [Docs] Update copyright year to 2024 2024-01-02 22:08:54 +01:00
TD-er c4b075c54d [Build] Make ESP8266 Energy build fit again 2024-01-02 21:56:34 +01:00
TD-er ab1465187b [ESPEasy p2p] Fix Ethernet connected nodes not listed on other nodes 2024-01-02 20:14:59 +01:00
TD-er 44dbb2caaa [PluginStats] Fix pluginstats via JSON & improve speed 2024-01-02 20:14:05 +01:00
TD-er fe361559b2 [PluginStats] Add PluginStats chart data to /json
For example using the url `/json?showpluginstats=on&tasknr=1`
2024-01-02 02:27:57 +01:00
TD-er 09648c5223 [PVS Studio] Fix Not all members of a class are initialized inside the constructor 2024-01-01 23:34:33 +01:00
TD-er 1afa7580c8 [PVS Studio] Fix missing 'break;' in switch statement 2024-01-01 23:24:02 +01:00
TD-er 0175b50d43 [PVS Studio] Fix "dangerous expression" macros. 2024-01-01 23:11:34 +01:00
TD-er 17ff6c2ac9 [IPv6] Fix node with IPv6 not seen by other p2p nodes with only IPv4 2024-01-01 21:19:27 +01:00
Ton Huisman 079d0ccda7 [Build/Release] Fix some issues, apply workarounds where needed 2023-12-29 20:13:51 +01:00
Ton Huisman 6c482aff54 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/GH-up-download-delete-actions-fix 2023-12-29 19:56:39 +01:00
uwekaditzandGitHub fbc1132c51 Merge branch 'mega' into P016]-PullRequest 2023-12-29 19:07:08 +01:00
flashmarkandGitHub 4fcb0c5d76 Merge branch 'letscontrolit:mega' into P164_gases-ens160 2023-12-29 17:25:06 +01:00
TD-erandGitHub 274b1e8d7e Merge pull request #4283 from tonhuisman/feature/P044-led-and-events-without-client
[P044] Led settings and events without client, merged into [P020]
2023-12-29 16:54:58 +01:00
Ton Huisman 7700696517 [Release] Add ESP32-C2 and ESP32-C6 downloads 2023-12-29 10:19:35 +01:00
flashmarkandGitHub 686df16fa3 Merge branch 'letscontrolit:mega' into P164_gases-ens160 2023-12-29 09:09:36 +01:00
TD-erandGitHub 97bb276339 Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-12-29 00:56:24 +01:00
TD-erandGitHub 08e11440f9 Merge pull request #4903 from tonhuisman/feature/P043-support-sunrise-and-sunset-in-settings
[P043] Add support for %sunrise% and %sunset% based time-values
2023-12-29 00:55:56 +01:00
Ton Huisman 85f0128081 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/GH-up-download-delete-actions-fix 2023-12-28 22:19:05 +01:00
TD-erandGitHub f79c3c00e1 Merge branch 'mega' into feature/P043-support-sunrise-and-sunset-in-settings 2023-12-28 21:30:15 +01:00
TD-erandGitHub 68a0578305 Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-12-28 21:29:52 +01:00
TD-erandGitHub 2c426d8c78 Merge pull request #4899 from tonhuisman/feature/Docs-corrections-and-improvements-dec-2023
[Docs] Updates, corrections and improvements, Dec. 2023
2023-12-28 21:29:19 +01:00
TD-erandGitHub a34ad10169 Merge pull request #4922 from tonhuisman/bugfix/NeoPixelBus_Wrapper-enable-adafruit_neopixel-fallback-build
[Lib] NeoPixelBus_Wrapper: Allow fall-back to Adafruit_NeoPixel lib for ESP8266
2023-12-28 21:29:00 +01:00
TD-erandGitHub d28c4bea50 Merge pull request #4927 from tonhuisman/feature/SuperTinyCron-remove-unused-commandline-tool
[SuperTinyCron] Remove unused commandline tool
2023-12-28 21:28:37 +01:00
Ton Huisman ed90c1c708 [P043] Exclude some code that won't work for PLUGIN_BUILD_MINIMAL_OTA builds 2023-12-28 21:09:57 +01:00
Ton Huisman 8713131414 [Build] Remove RTTTL from normal_IRext_no_rx build for size, add some libs to lib_ignore for custom_IR builds 2023-12-28 21:09:01 +01:00
Ton Huisman 8a25de749d [Build] Combine_package use wretry.action to try and succeed the downloads 2023-12-28 20:23:31 +01:00
Ton Huisman 14294a783d [Build] Combine_package use separate downloads to reduce chance of failure 2023-12-28 17:25:45 +01:00
Ton Huisman ac6bd25ae6 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/GH-up-download-delete-actions-fix 2023-12-28 17:15:20 +01:00
flashmark 886b25db79 Added to CLimate and Collection G plugin sets. Removed some leftovers. 2023-12-28 17:02:16 +01:00
Ton Huisman d5606e3800 [P020] Replace WiFiServer->available() by accept() (for IDF >= 5) 2023-12-28 15:12:17 +01:00
Ton Huisman d4c6cb92c7 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-12-28 15:04:04 +01:00
flashmark 4e2cab0070 Some fixes after review 2023-12-28 14:38:58 +01:00
Ton Huisman deb7cf34dc Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P043-support-sunrise-and-sunset-in-settings 2023-12-28 14:37:24 +01:00
Ton Huisman 45d0b30f05 [SuperTinyCron] Remove unused commandline tool 2023-12-28 14:06:09 +01:00
Ton Huisman 05d07f4aa7 [P131] Fix compiler warning -Wreorder 2023-12-28 12:08:02 +01:00
Ton Huisman 93e42b2f5d [Adafruit_NeoPixel] Correct function signature issues causing compiler warnings 2023-12-28 12:07:13 +01:00
Ton Huisman a3ee42a21b [Adafruit_NeoPixel] Exclude from ESP32 builds (unused) 2023-12-28 12:02:14 +01:00
flashmark 6441ed8761 Minor cleanup 2023-12-28 08:54:44 +01:00
flashmark b979ef9695 Fixed compiler issue after rebase 2023-12-28 08:00:32 +01:00
Ton Huisman 9460992d94 [NeoPixelBus_wrapper] Correct class inheritance error 2023-12-27 23:05:20 +01:00
Ton Huisman f13190dda9 [NeoPixelBus_wrapper] Update README.md 2023-12-27 23:04:20 +01:00
Ton Huisman 22be675a54 [Adafruit_NeoPixel] Fix compiler warning 2023-12-27 23:03:48 +01:00
Ton Huisman 240737afb7 [Docs] Add Rules example for measuring daily used power/energy 2023-12-27 22:23:57 +01:00
flashmarkandGitHub b9d9225d7d Merge branch 'letscontrolit:mega' into P164_gases-ens160 2023-12-27 21:29:09 +01:00
flashmark 4f52f78080 Rework after review, added documentation 2023-12-27 21:27:39 +01:00
Ton Huisman 9c302c4346 [Lib] NeoPixelBus_Wrapper: Correct includes attribute 2023-12-27 16:39:28 +01:00
Ton Huisman cda3a0638a [Lib] NeoPixelBus_Wrapper: Fix compilation for IR builds 2023-12-27 16:39:04 +01:00
Ton Huisman 38865542fb [Lib] NeoPixelBus_Wrapper: Allow fall-back to Adafruit_NeoPixel lib for ESP8266 2023-12-27 15:30:31 +01:00
chromoxdorandGitHub 33006a7c54 Merge branch 'letscontrolit:mega' into reply_event 2023-12-27 10:38:28 +01:00
Ton Huisman 0aa66dab3d [Build] GH Actions v4 Apply also to release.yml, add ESP32-C2 and ESP32-C6 artifact uploads 2023-12-26 22:25:17 +01:00
Ton Huisman 839dccac59 [Build] GH Actions v4 Rename repackage job to combine_package 2023-12-26 21:25:28 +01:00
Ton Huisman dfd5f0fd57 [Build] GH Actions v4 Fix build names vs dependencies, add all-binaries artifact 2023-12-26 16:46:11 +01:00
Ton Huisman d8e2391eff [Build] GH Actions v4 Sort builds by ESP, remove repackage step 2023-12-26 15:14:15 +01:00
Ton Huisman 548ee1c926 [Docs] Update README.md with new builds/ESPs/options 2023-12-26 14:02:50 +01:00
Ton Huisman 225550cede Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/Docs-corrections-and-improvements-dec-2023 2023-12-26 13:14:29 +01:00
Ton Huisman fd3cc53d56 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/GH-up-download-delete-actions-fix 2023-12-25 22:07:25 +01:00
Ton Huisman dfa4904340 [Build] GH Actions v4 try fix artifact download permissions issue 2023-12-25 21:44:08 +01:00
Ton Huisman 4748caae63 [Build] GH Actions use setup-python v5, improved glob for delete-artifact 2023-12-25 19:35:31 +01:00
Ton Huisman c20079f960 [Build] GH Actions v4 use unique upload-id 2023-12-25 17:18:01 +01:00
Ton Huisman 02717039ae [Build] Fix buildscripts for v4 Actions upload-artifact, download-artifact and delete-artifact 2023-12-25 16:57:48 +01:00
Ton Huisman f091f1f70c [P043] Update documentation 2023-12-19 21:27:36 +01:00
Ton Huisman 49d420b1da [P043] Fix simple Yes/No behavior like GPIO mode 2023-12-19 21:27:12 +01:00
Ton Huisman e28cac32d6 [Docs] Add P043 to commands and events reference pages 2023-12-17 16:44:55 +01:00
Ton Huisman 20962f0822 [Build] Disable some failing build envs 2023-12-17 14:03:53 +01:00
Ton Huisman ce73e4c316 [P043] Add documentation 2023-12-16 22:44:14 +01:00
Ton Huisman edcae4db8c [P043] Add 'config' command support and get config value support 2023-12-16 20:24:55 +01:00
uwekaditz ea02bf259d uint64ToString() changed to ll2String() 2023-12-13 20:10:46 +01:00
Ton Huisman 8539527f36 [P043] Add option for On/Off value input 2023-12-12 20:31:23 +01:00
Ton Huisman 25602e952f [Docs] Update Commands and Events references 2023-12-11 22:22:56 +01:00
Ton Huisman e96c2071d1 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/Docs-corrections-and-improvements-dec-2023 2023-12-11 22:20:55 +01:00
flashmark 7f6d559720 Merge branch 'P164_gases-ens160' of https://github.com/flashmark/ESPEasy into P164_gases-ens160 2023-12-11 21:55:38 +01:00
flashmark 875097fcba Added recovery from communication failures 2023-12-11 21:55:29 +01:00
flashmarkandGitHub c57dcdca4f Merge branch 'letscontrolit:mega' into P164_gases-ens160 2023-12-11 21:54:09 +01:00
Ton Huisman 8112d06e80 [P043] Change Value input layout to be on same line as the Day,Time input, code optimization 2023-12-11 21:51:15 +01:00
uwekaditzandGitHub e87671432b Merge branch 'mega' into P016]-PullRequest 2023-12-11 13:46:07 +01:00
uwekaditz 15dd104eb1 [P016] Add protocol RAW to UI if 'Accept DecodeType UNKNOWN' is set 2023-12-11 13:34:43 +01:00
Ton Huisman 56d97c60f5 [P043] Rework Day,Time inputs, add configurable Day,Time count 2023-12-10 19:08:29 +01:00
uwekaditz 7efe1ab8e5 Merge tag 'mega-20231130' into UweKaditz 2023-12-10 13:54:35 +01:00
Ton Huisman 70b06798f1 [P043] Add selection list (datalist) support for input time string 2023-12-09 23:08:48 +01:00
Ton Huisman f62038a41d [Text input] Implement datalist support 2023-12-09 23:07:26 +01:00
Ton Huisman 028fc6c7bf [Text input] Add datalist support, manually cherry picked from P123 PR 2023-12-09 23:06:46 +01:00
Ton Huisman 0b950254ba [TimeCalc] Fix parse errors 2023-12-09 23:05:12 +01:00
flashmark 1896c3c6ea Rough, working version 2023-12-09 21:31:19 +01:00
Ton Huisman e9f082ae31 [Docs] Add Rules example for registering daily working time 2023-12-09 19:09:46 +01:00
Ton Huisman f962f868eb [Docs] Update in Plugin-template embedded documentation 2023-12-09 15:20:10 +01:00
Ton Huisman 62d2b3328c [P151] Add missing PLUGIN_I2C_GET_ADDRESS function 2023-12-09 14:54:51 +01:00
chromoxdor 3ba43d9680 remove change since ton already did it :) 2023-12-09 11:44:30 +01:00
chromoxdor 2a382cfa08 add %sysec_d% and fix typo 2023-12-09 11:40:44 +01:00
Ton Huisman b56c969d4a [Docs] Add missing %syssec_d% variable 2023-12-08 23:21:55 +01:00
Ton Huisman afc3214ffe [P043] Add support for %sunrise% and %sunset% based time-values 2023-12-07 22:27:24 +01:00
flashmark a6343c4177 Initial plugin structure 2023-12-06 22:47:53 +01:00
Ton Huisman bae2311e64 [Docs] Hardware page: Add missing documentation for new I2C Slow default 2023-12-02 13:33:57 +01:00
Ton Huisman 40762e4fab [P020][P044] Minor improvements, update with latest mega changes 2023-12-02 13:23:43 +01:00
Ton Huisman 2e4ef9a557 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-12-02 12:02:24 +01:00
chromoxdor 7f2a4eddc6 Update Rules.rst 2023-11-30 17:39:59 +01:00
chromoxdor 967f940895 Update espeasy.min.js 2023-11-30 17:13:54 +01:00
chromoxdor 9756b8ae73 Merge branch 'reply_event' of https://github.com/chromoxdor/ESPEasy into reply-event-for-thingspeak 2023-11-30 17:12:33 +01:00
chromoxdorandGitHub 61a8a28588 Merge branch 'mega' into reply_event 2023-11-15 14:58:34 +01:00
chromoxdor ae3cbb9869 a little formatting 2023-10-29 19:30:42 +01:00
chromoxdorandGitHub 8c2f5a2c9b Merge branch 'mega' into reply_event 2023-10-29 17:32:18 +01:00
chromoxdor 065efcd813 Update Rules.rst 2023-10-26 21:09:27 +02:00
chromoxdor c6b96c5c74 Update Rules.rst 2023-10-26 21:07:48 +02:00
chromoxdor c9ef1514ea single + multifield reply combined 2023-10-26 20:41:49 +02:00
chromoxdor 7d37637668 Update Rules.rst 2023-10-26 10:28:39 +02:00
chromoxdor 99b8156ab3 added documentation 2023-10-26 10:08:01 +02:00
chromoxdor 600367b3bb Update Networking.cpp 2023-10-25 22:31:26 +02:00
chromoxdor 89bf66c400 Update Networking.cpp 2023-10-25 22:08:10 +02:00
chromoxdor 5a689b2a19 Add ThingspeakReply to wordlist 2023-10-25 21:02:43 +02:00
chromoxdor 1ef66a487a Update Networking.cpp 2023-10-25 20:49:18 +02:00
chromoxdor ad5e2eaaad Update define_plugin_sets.h 2023-10-25 17:24:21 +02:00
chromoxdor 4ad08ac11d Update define_plugin_sets.h 2023-10-25 17:18:31 +02:00
chromoxdor 4c934d4657 Update Networking.cpp 2023-10-25 16:48:39 +02:00
chromoxdor 197dc102c3 Update Networking.cpp 2023-10-25 16:16:09 +02:00
chromoxdor fb0f8ed1bf add check if we got an answer otherwise we get -1 as a value 2023-10-25 14:42:04 +02:00
chromoxdor 6b5e24941e compare also the last part of the uri to generate an event 2023-10-25 13:50:09 +02:00
chromoxdor db1d7d9b15 make thinkspeak event optional 2023-10-25 13:36:02 +02:00
chromoxdor 425aec46c5 Update Networking.cpp 2023-10-25 13:02:07 +02:00
chromoxdor bb5ac3e626 Update Networking.cpp 2023-10-25 12:52:21 +02:00
chromoxdor 4060dad689 Update Networking.cpp 2023-10-23 19:18:53 +02:00
Ton Huisman 1413ae2c4b Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-10-12 20:59:46 +02:00
Ton HuismanandGitHub 83f224c4a4 Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-10-04 22:09:40 +02:00
Ton Huisman 6a0b131867 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-09-26 22:51:34 +02:00
Ton HuismanandGitHub 4f5783a56c Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-09-17 17:20:13 +02:00
Ton Huisman 5fb0975fa2 [P044/P020] Improved defaults for P1 WiFigateway 2023-08-26 21:23:49 +02:00
Ton Huisman 16f7c9e26d Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-08-26 21:16:41 +02:00
Ton Huisman 9d0dd105fd [P020] Allow some extra time-out while receiving P1 data, add missing CR/LF 2023-08-17 16:09:29 +02:00
Ton Huisman 2e498bed2d [P020] Fix merge conflict 2023-08-17 11:53:12 +02:00
Ton Huisman b3834186a0 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-08-14 09:14:58 +02:00
Ton Huisman 19a619e09c Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-08-13 22:24:36 +02:00
Ton Huisman 6e3fd6269b Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-08-13 14:32:45 +02:00
Ton Huisman eb12171385 [P020] Fix receiving P1 data 2023-08-12 22:16:35 +02:00
Ton Huisman f0d9f6a7c3 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-08-12 20:19:48 +02:00
Ton Huisman 57505e862b Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-08-07 16:08:30 +02:00
Ton Huisman 83cda200ac Merge branch 'feature/P044-led-and-events-without-client' of https://github.com/tonhuisman/ESPEasy-1 into feature/P044-led-and-events-without-client 2023-08-07 16:08:05 +02:00
Ton HuismanandGitHub 60f4dd5461 Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-06-27 20:44:54 +02:00
Ton Huisman 296873795b [P020] Update documentation for new options 2023-06-24 15:34:04 +02:00
Ton Huisman 280ad63a3f [P020] Increase max. buffer size
[P020] Add options for using Serial Port name as event and/or append the task number
[P020/P044] Fix plugin initialization when USB (HW)CDC or I2C Serial is selected
2023-06-24 15:27:08 +02:00
Ton Huisman ca6669c72f [Helpers] Implement ESPEasySerial shortName option to be used as eventname 2023-06-24 15:23:48 +02:00
Ton Huisman e3f8adf83e [ESPEasySerial] Add shortName option to be used as eventname 2023-06-24 15:22:40 +02:00
Ton Huisman fb853a4639 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-06-24 11:05:17 +02:00
Ton Huisman 5b37962f62 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-06-23 21:09:29 +02:00
Ton Huisman 3e41ad7a26 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-06-02 21:49:14 +02:00
Ton Huisman 20a5668096 [Build] Manually apply WiFi build fixes (missing includes) 2023-06-01 21:03:58 +02:00
Ton HuismanandGitHub aef7909ffc Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-06-01 20:03:40 +02:00
Ton Huisman d5d31a71c7 [P020] Unification of Ser2Net log messages 2023-05-22 20:38:16 +02:00
Ton Huisman 29f6357f75 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-05-22 20:33:52 +02:00
Ton Huisman 5df32fdcaf Merge branch 'feature/P044-led-and-events-without-client' of https://github.com/tonhuisman/ESPEasy-1 into feature/P044-led-and-events-without-client 2023-05-22 20:21:34 +02:00
Ton HuismanandGitHub bd1a6f5749 Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-05-14 12:16:42 +02:00
Ton HuismanandGitHub e6a44a330c Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-05-12 19:02:36 +02:00
Ton Huisman 73938e3aeb Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-04-11 22:23:07 +02:00
Ton Huisman c287448f97 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-04-11 22:22:15 +02:00
Ton HuismanandGitHub 5063421862 Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-04-09 22:55:25 +02:00
Ton Huisman 18cfc866c5 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-04-01 20:32:00 +02:00
Ton HuismanandGitHub ed0d0a155b Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-03-31 14:02:34 +02:00
Ton Huisman 2aba1bf0f1 [P020] Update changelog 2023-03-25 21:37:45 +01:00
Ton Huisman b817f18508 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-03-25 21:37:24 +01:00
Ton Huisman 0c99aaad3f [P020] Update documentation for 0x00..0xFF hex data support in serialsendmix 2023-03-25 20:46:03 +01:00
Ton Huisman 05337a521f [P020] Use parseHextTextData() to handle 0x00 in data 2023-03-25 20:43:09 +01:00
Ton Huisman 188f6f4c54 [StringConverter] Add parseHexTextData() to handle 0x00 2023-03-25 20:41:49 +01:00
Ton Huisman 6df4649fed [P020] Correct some typos in documentation 2023-03-25 20:13:44 +01:00
Ton Huisman 8ffc8da244 [P020] Add command documentation 2023-03-23 21:12:49 +01:00
Ton Huisman a4fdcaf38e Merge branch 'feature/P044-led-and-events-without-client' of https://github.com/tonhuisman/ESPEasy-1 into feature/P044-led-and-events-without-client 2023-03-23 20:28:50 +01:00
Ton HuismanandGitHub e2ae659063 Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-03-23 20:28:40 +01:00
Ton Huisman c8573b50c2 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-03-23 20:24:37 +01:00
Ton Huisman 8da43626d1 [StringConverter] Improvements to parseHexTextString() 2023-03-22 13:51:24 +01:00
Ton Huisman a0ae909850 [P020] Add command serialsendmix 2023-03-21 23:28:15 +01:00
Ton Huisman 151cf5e2c0 [StringConverter] Add parseHexTextString() 2023-03-21 23:27:39 +01:00
Ton Huisman 073ad8798b Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-03-21 21:45:18 +01:00
Ton Huisman 61955c84aa Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-03-14 22:21:43 +01:00
Ton HuismanandGitHub a3bb6daf5f Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-02-21 19:35:17 +01:00
Ton Huisman 03ddf0e9da Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-02-18 13:20:06 +01:00
Ton Huisman 89c280ff4c Merge branch 'feature/P044-led-and-events-without-client' of https://github.com/tonhuisman/ESPEasy-1 into feature/P044-led-and-events-without-client 2023-02-18 13:04:52 +01:00
Ton Huisman 537d35c656 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-01-28 22:04:23 +01:00
Ton Huisman 57666f62c0 [P020] Revert extra check before sending P1 data, minor improvements 2023-01-17 23:25:14 +01:00
Ton Huisman 064912d738 [P020] Add extra check before sending P1 data 2023-01-15 20:05:46 +01:00
Ton Huisman 5e68eec0da [P020/P044] Adjustments to complete the merge 2023-01-14 11:01:44 +01:00
Ton Huisman a270a250d1 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2023-01-14 11:00:50 +01:00
Ton Huisman b2358e07c7 [Build] Adjust Custom ESP8266 as already planned to fix build failure 2023-01-03 19:33:13 +01:00
Ton HuismanandGitHub 8f81cf00bd Merge branch 'mega' into feature/P044-led-and-events-without-client 2023-01-03 16:53:58 +01:00
TD-erandGitHub ec611d1ca8 Merge branch 'mega' into feature/P044-led-and-events-without-client 2022-12-23 23:14:57 +01:00
TD-erandGitHub a2299f9b48 Merge branch 'mega' into feature/P044-led-and-events-without-client 2022-12-23 01:33:37 +01:00
Ton Huisman 5530e94341 [P044] Update plugin documentation (based on P020) 2022-12-16 21:44:21 +01:00
Ton Huisman b20af2b950 [P044] Only show usable settings 2022-12-16 21:43:22 +01:00
Ton Huisman 7573e46ac6 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2022-12-16 20:11:42 +01:00
Ton Huisman e0b3250302 [UI] Fix unsupported feature compilation error, fix signed/unsigned warning 2022-12-14 22:49:51 +01:00
Ton Huisman 80a175ee3a [P037] Implement replacement character input selector, update documentation 2022-12-14 22:28:23 +01:00
Ton Huisman 47ef2b8829 [P020] Add plugin documentation 2022-12-14 22:25:40 +01:00
Ton Huisman a6292b7961 [P020/P044] Add feature to replace spaces and newlines in received data 2022-12-14 22:25:02 +01:00
Ton Huisman 2c12f5a3e9 [UI] Add Separator character input selector 2022-12-14 22:24:06 +01:00
Ton Huisman 22e3ddd715 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2022-12-14 20:09:49 +01:00
Ton HuismanandGitHub 7a357d751e Merge branch 'mega' into feature/P044-led-and-events-without-client 2022-12-11 20:17:49 +01:00
Ton HuismanandGitHub 7c1c9a75f8 Merge branch 'mega' into feature/P044-led-and-events-without-client 2022-12-03 21:50:10 +01:00
Ton Huisman 5455c280b3 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2022-11-29 21:50:17 +01:00
Ton Huisman 471f65efbd Merge branch 'feature/P044-led-and-events-without-client' of https://github.com/tonhuisman/ESPEasy-1 into feature/P044-led-and-events-without-client 2022-11-29 21:50:06 +01:00
Ton Huisman a02754117c Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2022-11-26 21:54:38 +01:00
Ton Huisman fee72ce3f9 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2022-11-02 19:08:37 +01:00
Ton HuismanandGitHub ea65240389 Merge branch 'mega' into feature/P044-led-and-events-without-client 2022-10-28 07:30:24 +02:00
Ton HuismanandGitHub 07592e540f Merge branch 'mega' into feature/P044-led-and-events-without-client 2022-10-16 16:59:54 +02:00
Ton Huisman dc8ef704c7 [P020/P044] Add option for including P1 data in #data event 2022-10-11 21:06:52 +02:00
Ton Huisman 986d53ac35 [P020] Code improvement 2022-10-09 22:27:41 +02:00
Ton Huisman 7fb2382aaf [P020/P044] Migrate settings also on plugin start without prior save from UI 2022-10-09 13:38:58 +02:00
Ton Huisman bb66f3428a [P020] Merge [P044] code into [P020], so P020 van emulate P044 2022-10-08 20:30:12 +02:00
Ton Huisman 547f57170b [Plugins] Call PLUGIN_WEBFORM_PRE_SERIAL_PARAMS before serial settings are displayed to allow settings conversion 2022-10-08 20:23:57 +02:00
Ton Huisman 3bb189d2bf [Plugins] Call PLUGIN_WEBFORM_PRE_SERIAL_PARAMS before serial settings are displayed to allow settings conversion 2022-10-08 20:23:36 +02:00
Ton Huisman 603e6a812b Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2022-10-08 10:37:49 +02:00
Ton Huisman 9f4c038ef5 Merge branch 'mega' of https://github.com/letscontrolit/ESPEasy into feature/P044-led-and-events-without-client 2022-10-02 13:47:48 +02:00
Ton Huisman 7ed1cc858a [P044] Correct auto-complete typo 2022-10-01 22:02:58 +02:00
Ton Huisman 86dc1f87fd [P044] Make Led pin configurable 2022-10-01 21:42:40 +02:00
Ton Huisman 94100585ab [P044] Uncrustify format source 2022-10-01 13:56:36 +02:00
446 changed files with 22943 additions and 5034 deletions
+36 -99
View File
@@ -24,10 +24,10 @@ jobs:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-docs-${{ hashFiles('docs/requirements.txt') }}
@@ -39,7 +39,7 @@ jobs:
make html
cd ..
zip -r -qq ESPEasy_docs.zip docs/build/*
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Documentation
path: ESPEasy_docs.zip
@@ -49,7 +49,7 @@ jobs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- id: set-matrix
@@ -64,19 +64,19 @@ jobs:
matrix: ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- uses: actions/cache@v3
python-version: '3.x'
- uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-${{ hashFiles('requirements.txt') }}
- uses: actions/cache@v3
- uses: actions/cache@v4
if: ${{ contains(matrix.env, 'esp32') }}
with:
path: ~/.platformio
key: ${{ runner.os }}-esp32-${{ hashFiles('platformio*.ini') }}
- uses: actions/cache@v3
- uses: actions/cache@v4
if: ${{ contains(matrix.env, 'esp8266') }}
with:
path: ~/.platformio
@@ -89,6 +89,10 @@ jobs:
pip install wheel
pip install -r requirements.txt
platformio update
- name: Get current date
id: date
run: |
echo "builddate=$(date +'%Y%m%d')" >> $GITHUB_OUTPUT
- name: Build and archive
id: build-and-archive
env:
@@ -96,23 +100,28 @@ jobs:
ENV: ${{ matrix.env }}
run: |
python tools/ci/build-and-archive.py
- uses: actions/upload-artifact@v3
- id: string
uses: Entepotenz/change-string-case-action-min-dependencies@v1
with:
name: Binaries
string: ${{ matrix.chip }}
- uses: actions/upload-artifact@v4
with:
# FIXME Workaround to (temporarily) not use # in the artifact name, see https://github.com/actions/upload-artifact/issues/473
name: Bin-${{ steps.string.outputs.uppercase }}-${{ matrix.env }}-${{ steps.date.outputs.builddate }}_PR_${{ github.event.number }}_${{ github.run_id }} # Sort by ESP type
path: |
bin
if-no-files-found: ignore
# Repackage separately for ESP82xx and ESP32
repackage:
# Package all ESP82xx and ESP32 into a single ESPEasy-all-Binaries-<date>_PR#<pr_nr>_<runnr>.zip
combine_package:
needs: build
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-docs-${{ hashFiles('docs/requirements.txt') }}
@@ -120,92 +129,20 @@ jobs:
id: date
run: |
echo "builddate=$(date +'%Y%m%d')" >> $GITHUB_OUTPUT
- uses: actions/download-artifact@v3
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts/
- name: Prepare artifacts
path: artifacts/Binaries/bin/
pattern: Bin-*
merge-multiple: true
- name: List all files in the package for single-archive upload
run: |
# ESP82xx
mkdir ESPEasy_dist_ESP82xx
cd dist
find . -exec cp -r --parents {} ../ESPEasy_dist_ESP82xx/ \;
rm ../ESPEasy_dist_ESP82xx/bin/blank_8MB.bin
cd ../artifacts/Binaries
find . -not -name '*ESP32*' -exec mv {} ../../ESPEasy_dist_ESP82xx/bin/ \;
cd ../..
# ESP32 and derived cpus, ESP32 (classic) _MUST_ be last in this list!
for cpu in ESP32s2 ESP32c3 ESP32s3 ESP32c2 ESP32c6 ESP32h2 ESP32solo1 ESP32
do
mkdir ESPEasy_dist_${cpu}
spec="*${cpu}*"
_files=$(find ./artifacts/Binaries -name "$spec"|wc -l)
if [[ $_files > 0 ]]; then
cd dist
find . -exec cp -r --parents {} ../ESPEasy_dist_${cpu}/ \;
cd ../ESPEasy_dist_${cpu}
rm bin/blank_1MB.bin bin/blank_2MB.bin bin/ESPEasy_2step_UploaderMega_1024.bin
cd ../artifacts/Binaries
find . -name "$spec" -exec mv {} ../../ESPEasy_dist_${cpu}/bin/ \;
cd ../..
fi
done
# Each supported cpu has to be listed separately, but empty folders are ignored
- uses: actions/upload-artifact@v3
cd artifacts/Binaries/
ls -R
- uses: actions/upload-artifact@v4
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_PR#${{ github.event.number }}_${{ github.run_id }}
# FIXME Workaround to (temporarily) not use # in the artifact name, see https://github.com/actions/upload-artifact/issues/473
name: ESPEasy-all-Binaries-${{ steps.date.outputs.builddate }}_PR_${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32/*
artifacts/Binaries/
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32solo1_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32solo1/*
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s2_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32s2/*
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c3_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32c3/*
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s3_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32s3/*
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c2_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32c2/*
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c6_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32c6/*
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32h2_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP32h2/*
if-no-files-found: ignore
- uses: actions/upload-artifact@v3
with:
name: ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP82xx_PR#${{ github.event.number }}_${{ github.run_id }}
path: |
ESPEasy_dist_ESP82xx/*
if-no-files-found: ignore
# When successfully re-packaged, the original Binaries can be removed
# comment below 3 lines to not remove the Binaries artifact after repackaging
- uses: geekyeggo/delete-artifact@v2
with:
name: Binaries
+49 -32
View File
@@ -22,7 +22,7 @@ jobs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- id: set-matrix
@@ -37,19 +37,19 @@ jobs:
matrix: ${{ fromJson(needs.generate-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-${{ hashFiles('requirements.txt') }}
- uses: actions/cache@v3
- uses: actions/cache@v4
if: ${{ contains(matrix.env, 'esp32') }}
with:
path: ~/.platformio
key: ${{ runner.os }}-esp32-${{ hashFiles('platformio*.ini') }}
- uses: actions/cache@v3
- uses: actions/cache@v4
if: ${{ contains(matrix.env, 'esp8266') }}
with:
path: ~/.platformio
@@ -66,9 +66,13 @@ jobs:
ENV: ${{ matrix.env }}
run: |
python tools/ci/build-and-archive.py
- uses: actions/upload-artifact@v3
- id: string
uses: Entepotenz/change-string-case-action-min-dependencies@v1
with:
name: Binaries
string: ${{ matrix.chip }}
- uses: actions/upload-artifact@v4
with:
name: Bin-${{ steps.string.outputs.uppercase }}-${{ matrix.env }}
path: |
bin
if-no-files-found: ignore
@@ -78,10 +82,10 @@ jobs:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-docs-${{ hashFiles('docs/requirements.txt') }}
@@ -98,7 +102,7 @@ jobs:
cd dist
zip -r -qq ../ESPEasy_dist.zip *
cd ..
- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: Distribution
path: |
@@ -112,7 +116,7 @@ jobs:
notes: ${{ steps.release-notes.outputs.result }}
steps:
- id: release-notes
uses: actions/github-script@v6
uses: actions/github-script@v7
with:
result-encoding: string
script: |
@@ -134,48 +138,61 @@ jobs:
needs: [build, prepare-dist, prepare-notes]
runs-on: ubuntu-22.04
steps:
- uses: actions/setup-python@v4
- uses: actions/setup-python@v5
with:
python-version: '3.x'
- name: Get current date
id: date
run: |
echo "builddate=$(date +'%Y%m%d')" >> $GITHUB_OUTPUT
- uses: actions/download-artifact@v3
- name: Download all successfully compiled artifacts
uses: actions/download-artifact@v4
with:
path: artifacts/
path: artifacts/bin/
pattern: Bin-*
merge-multiple: true
- name: Download dist and docs zip files
uses: actions/download-artifact@v4
with:
path: distribution/
name: Distribution
- name: Repackage for release upload
run: |
ls -R
sudo apt install zipmerge zip
cd artifacts/Binaries
mkdir bin
mv *.* bin
find . -not -name '*ESP32*' -print | zip -@ ../../ESPEasy_ESP82xx.zip
cd artifacts
# ESP8266 and ESP8285
find . -not -name '*ESP32*' -print | zip -@ ../ESPEasy_ESP82xx.zip
# ESP32 and derived chips
# TODO if/when available: ESP32c2 ESP32c6 ESP32h2
find . -name '*ESP32s2*' -print | zip -@ ../../ESPEasy_ESP32s2.zip
find . -name '*ESP32c3*' -print | zip -@ ../../ESPEasy_ESP32c3.zip
find . -name '*ESP32s3*' -print | zip -@ ../../ESPEasy_ESP32s3.zip
find . -name '*ESP32solo1*' -print | zip -@ ../../ESPEasy_ESP32solo1.zip
find . -name '*ESP32_*' -print | zip -@ ../../ESPEasy_ESP32.zip
cd ../..
mv artifacts/Distribution/ESPEasy_dist* .
cp ESPEasy_dist.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP82xx_binaries.zip
# TODO if/when available: ESP32h2
find . -name '*ESP32s2*' -print | zip -@ ../ESPEasy_ESP32s2.zip
find . -name '*ESP32c3*' -print | zip -@ ../ESPEasy_ESP32c3.zip
find . -name '*ESP32s3*' -print | zip -@ ../ESPEasy_ESP32s3.zip
find . -name '*ESP32c2*' -print | zip -@ ../ESPEasy_ESP32c2.zip
find . -name '*ESP32c6*' -print | zip -@ ../ESPEasy_ESP32c6.zip
find . -name '*ESP32solo1*' -print | zip -@ ../ESPEasy_ESP32solo1.zip
find . -name '*ESP32_*' -print | zip -@ ../ESPEasy_ESP32.zip
cd ..
# Add dist tools to each package, after removing some unneeded files
# Copy dist zip for ESP82xx use
cp distribution/ESPEasy_dist.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP82xx_binaries.zip
zip -d ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP82xx_binaries.zip "bin/blank_8MB.bin"
mv ESPEasy_dist.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip
# Move dist zip for ESP32 use
mv distribution/ESPEasy_dist.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip
zip -d ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip "bin/blank_1MB.bin" "bin/blank_2MB.bin" "bin/ESPEasy_2step_UploaderMega_1024.bin"
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP82xx_binaries.zip ESPEasy_ESP82xx.zip
# TODO if/when available: ESP32c2 ESP32c6 ESP32h2
# TODO if/when available: ESP32h2
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s2_binaries.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip ESPEasy_ESP32s2.zip
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c3_binaries.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip ESPEasy_ESP32c3.zip
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s3_binaries.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip ESPEasy_ESP32s3.zip
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c2_binaries.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip ESPEasy_ESP32c2.zip
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c6_binaries.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip ESPEasy_ESP32c6.zip
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32solo1_binaries.zip ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip ESPEasy_ESP32solo1.zip
zipmerge ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip ESPEasy_ESP32.zip
- uses: ncipollo/release-action@v1
with:
# Include all separately supported CPU models
# TODO if/when available: ESP32c2 ESP32c6 ESP32h2
artifacts: "ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP82xx_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32solo1_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s2_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c3_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s3_binaries.zip,artifacts/Distribution/*.zip"
# Upload all separately supported CPU models and the docs zip
# TODO if/when available: ESP32h2
artifacts: "ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP82xx_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32solo1_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s2_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c3_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32s3_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c2_binaries.zip,ESPEasy_mega_${{ steps.date.outputs.builddate }}_ESP32c6_binaries.zip,distribution/*.zip"
body: ${{ needs.prepare-notes.outputs.notes }}
token: ${{ secrets.GITHUB_TOKEN }}
+19 -12
View File
@@ -13,7 +13,7 @@ Introduction https://espeasy.readthedocs.io/en/latest/ (and, mostly outdated, wi
This is the development branch of ESPEasy. All new features go into this branch, and it has become the current stable branch. If you want to do a bugfix, do it on this branch.
Check here to learn how to use this branch and help us improving ESPEasy: http://www.letscontrolit.com/wiki/index.php/ESPEasy#Source_code_development
Check here to learn how to use this branch and help us improving ESPEasy: [Starter guide for (local) development on ESPEasy](https://espeasy.readthedocs.io/en/latest/Participate/PlatformIO.html#starter-guide-for-local-development-on-espeasy)
## Web based flasher (experimental)
@@ -58,6 +58,7 @@ hard | hardware specific builds | Minimal
minimal | minimal plugins for specific use-cases | Switch and Controller |
spec_* | specialized technical builds | Not intended for regular use |
IRext | Infra-red hardware specific | Sending and receiving IR cmd |
safeboot | (Experimental) `safeboot` build to enable<br>most/all plugins on 4MB Flash boards | None |
*[opt-arduino-library]* (optional) can be any of:
@@ -81,6 +82,8 @@ ESP32solo1 | Espressif ESP32-Solo1 generic boards |
ESP32s2 | Espressif ESP32-S2 generic boards |
ESP32c3 | Espressif ESP32-C3 generic boards |
ESP32s3 | Espressif ESP32-S3 generic boards |
ESP32c2 | Espressif ESP32-C2 generic boards |
ESP32c6 | Espressif ESP32-C6 generic boards |
ESP32-wrover-kit | Espressif ESP32 wrover-kit boards |
SONOFF | Sonoff hardware specific |
other_POW | Switch with power measurement |
@@ -98,6 +101,7 @@ Flash size | Description |
1M | 1 MB with 128 kB filesystem |
2M | 2 MB with 128 kB filesystem |
2M256 | 2 MB with 256 kB filesystem |
2M320k | 2 MB with 320 kB filesystem |
4M1M | 4 MB with 1 MB filesystem |
4M2M | 4 MB with 2 MB filesystem |
16M | 16 MB with 14 MB filesystem |
@@ -106,18 +110,21 @@ Flash size | Description |
16M1M | 16 MB with 1 MB filesystem |
16M8M | 16 MB with 8 MB filesystem |
N.B. Starting with release 2023/12/25, All ESP32 LittleFS builds use IDF 5.1, to support newer ESP32 chips like ESP32-C2 and ESP32-C6. Other SPIFFS based ESP32 builds will be migrated to LittleFS as SPIFFS is no longer available in IDF 5 and later. A migration plan will be made available in 2024.
*[opt-build-features]* can be any of:
Build features | Description |
----------------|----------------------------------------------------------------------------|
LittleFS | Use LittleFS instead of SPIFFS filesystem (SPIFFS is unstable \> 2 MB) |
VCC | Analog input configured to measure VCC voltage (ESP8266 only) |
OTA | Arduino OTA (Over The Air) update feature enabled |
Domoticz | Only Domoticz controllers (HTTP+MQTT) and plugins included |
FHEM_HA | Only FHEM/OpenHAB/Home Assistant (MQTT) controllers and plugins included |
ETH | Ethernet interface enabled (ESP32 only) |
OPI_PSRAM | Specific configuration to enable PSRAM detection, ESP32-S3 only |
CDC | Support USBCDC/HWCDC-serial console on ESP32-C3, ESP32-S2 and ESP32-S3 |
Build features | Description |
----------------|-----------------------------------------------------------------------------------------------------------|
LittleFS | Use LittleFS instead of SPIFFS filesystem (SPIFFS is unstable \> 2 MB, and no longer supported in IDF \> 5) |
VCC | Analog input configured to measure VCC voltage (ESP8266 only) |
OTA | Arduino OTA (Over The Air) update feature enabled |
Domoticz | Only Domoticz controllers (HTTP) and plugins included |
Domoticz_MQTT | Only Domoticz controllers (MQTT) and plugins included |
FHEM_HA | Only FHEM/OpenHAB/Home Assistant (MQTT) controllers and plugins included |
ETH | Ethernet interface enabled (ESP32-classic only) |
OPI_PSRAM | Specific configuration to enable PSRAM detection, ESP32-S3 only |
CDC | Support USBCDC/HWCDC-serial console on ESP32-C3, ESP32-S2, ESP32-S3 and ESP32-C6 |
noOTA/NO_OTA | Does not support OTA (Over The Air-updating of the firmware) Use [the flash page](https://td-er.nl/ESPEasy/) or ESPTool via USB Serial |
Some example firmware names:
Firmware name | Hardware | Included plugins |
@@ -133,7 +140,7 @@ ESPEasy_mega-20230822_max_ESP32s3_8M1M_LittleFS_OPI_PSRAM_CDC.bin | ESP32-S3 8MB
ESPEasy_mega-20230822_max_ESP32_16M1M.bin | ESP32 with 16MB flash | All available plugins |
ESPEasy_mega-20230822_max_ESP32_16M8M_LittleFS.bin | ESP32 with 16MB flash | All available plugins |
NB: Since 2023-05-10 the binary files for the different ESP32 variants (S2, C3, S3, 'Classic') are available in separate archives.
The binary files for the different ESP32 variants (S2, C3, S3, C2, C6, 'Classic') are available in separate archives.
To see what plugins are included in which collection set, you can find that on the [ESPEasy Plugin overview page](https://espeasy.readthedocs.io/en/latest/Plugin/_Plugin.html)
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"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 -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -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 -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_M5STACK_Core2 -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_M5STACK_Core2 -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"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 -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -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 -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_16M -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_ESP32_DEV -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"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 -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -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 -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_8M -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_ESP32_DEV -DBOARD_HAS_PSRAM -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_8M -DESP32_CLASSIC",
"f_cpu": "240000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DARDUINO_ESP32_DEV -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DCORE32SOLO1 -DESP32_CLASSIC",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_ESP32_DEV -DARDUINO_USB_CDC_ON_BOOT=0 -DESP32_4M -DCORE32SOLO1 -DESP32_CLASSIC",
"f_cpu": "160000000L",
"f_flash": "40000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "esp32c2_out.ld"
},
"core": "esp32",
"extra_flags": "-DESP32_4M -DESP32C2",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_4M -DESP32C2",
"f_cpu": "120000000L",
"f_flash": "60000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "esp32c2_out.ld"
},
"core": "esp32",
"extra_flags": "-DESP32_2M -DESP32C2",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_2M -DESP32C2",
"f_cpu": "120000000L",
"f_flash": "60000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "esp32c2_out.ld"
},
"core": "esp32",
"extra_flags": "-DESP32_4M -DESP32C2",
"extra_flags": "-DARDUINO_TASMOTA -DESP32_4M -DESP32C2",
"f_cpu": "120000000L",
"f_flash": "60000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "esp32c3_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_USB_MODE=1 -DESP32_4M -DESP32C3 -DUSE_USB_CDC_CONSOLE -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_USB_MODE=1 -DESP32_4M -DESP32C3 -DUSE_USB_CDC_CONSOLE -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
+40
View File
@@ -0,0 +1,40 @@
{
"build": {
"arduino":{
"ldscript": "esp32c6_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32C6 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32c6",
"variant": "esp32c6",
"partitions": "boards/partitions/esp32_partition_app4096k_spiffs8124k.csv"
},
"connectivity": [
"wifi",
"bluetooth"
],
"debug": {
"default_tool": "esp-builtin",
"onboard_tools": [
"esp-builtin"
],
"openocd_target": "esp32c6.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C6 16M Flash, ESPEasy 4096k Code/OTA 8M FS",
"upload": {
"flash_size": "16MB",
"maximum_ram_size": 327680,
"maximum_size": 16777216,
"require_upload_port": true,
"speed": 460800
},
"url": "https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitc-1/index.html",
"vendor": "Espressif"
}
+40
View File
@@ -0,0 +1,40 @@
{
"build": {
"arduino":{
"ldscript": "esp32c6_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_8M -DESP32C6 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
"mcu": "esp32c6",
"variant": "esp32c6",
"partitions": "boards/partitions/esp32_partition_app3520k_spiffs1088k.csv"
},
"connectivity": [
"wifi",
"bluetooth"
],
"debug": {
"default_tool": "esp-builtin",
"onboard_tools": [
"esp-builtin"
],
"openocd_target": "esp32c6.cfg"
},
"frameworks": [
"arduino",
"espidf"
],
"name": "Espressif Generic ESP32-C6 >= 8M Flash, ESPEasy 3520k Code/OTA 1088k FS",
"upload": {
"flash_size": "8MB",
"maximum_ram_size": 327680,
"maximum_size": 8388608,
"require_upload_port": true,
"speed": 460800
},
"url": "https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitc-1/index.html",
"vendor": "Espressif"
}
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "esp32c6_out.ld"
},
"core": "esp32",
"extra_flags": "-DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32C6 -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32C6 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "160000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "dio_qspi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DESP32_4M -DESP32S2 -DCONFIG_IDF_TARGET_ESP32S2=1 -DUSE_USB_CDC_CONSOLE -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DESP32_4M -DESP32S2 -DCONFIG_IDF_TARGET_ESP32S2=1 -DUSE_USB_CDC_CONSOLE -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "dio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_8M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_8M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "qio_opi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "qio_qspi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_16M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "qio_qspi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_8M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_8M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -5,7 +5,7 @@
"memory_type": "qio_qspi"
},
"core": "esp32",
"extra_flags": "-DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"extra_flags": "-DARDUINO_TASMOTA -DBOARD_HAS_PSRAM -DARDUINO_USB_MODE=1 -DUSE_USB_CDC_CONSOLE -DESP32_4M -DESP32S3 -DARDUINO_USB_CDC_ON_BOOT=1",
"f_cpu": "240000000L",
"f_flash": "80000000L",
"flash_mode": "qio",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "eagle.flash.16m14m.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_16M14M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_16M14M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "eagle.flash.1m128.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",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "eagle.flash.1m128.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",
+1 -1
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",
+1 -1
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",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "eagle.flash.4m1m.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_4M1M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_4M -DESP8266_4M1M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
+1 -1
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",
+1 -1
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",
+1 -1
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",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "eagle.flash.1m128.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DESP8285 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_1M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DESP8285 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_1M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
+1 -1
View File
@@ -4,7 +4,7 @@
"ldscript": "eagle.flash.1m128.ld"
},
"core": "esp8266",
"extra_flags": "-DESP8266 -DESP8285 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_1M",
"extra_flags": "-DARDUINO_TASMOTA -DESP8266 -DESP8285 -DARDUINO_ARCH_ESP8266 -DARDUINO_ESP8266_ESP01 -DESP8266_1M",
"f_cpu": "80000000L",
"f_flash": "40000000L",
"flash_mode": "dout",
+354 -2
View File
@@ -1,3 +1,355 @@
-------------------------------------------------
Changes in release mega-20240401 (since mega-20240331)
-------------------------------------------------
Release date: Mon Apr 1 12:13:54 AM CEST 2024
Ton Huisman (1):
[Bugfix] Release script fixes and simplifications
-------------------------------------------------
Changes in release mega-20240331 (since mega-20240229)
-------------------------------------------------
Release date: Sun Mar 31 03:40:08 PM CEST 2024
Ernest (ErNis) (1):
INA219 26V 8A range added
Jason2866 (1):
small refactor
TD-er (13):
[JL1101] Fix JL1101 Ethernet + update to latest ESP-IDF5.1 code
[PlatformIO] Fix installing pygit2
[ESP8266 WiFi] Initialize flags for AP capabilities
[ESP8266] Get rid of several union structs which may cause weird issues
[ESP8266] Remove use of union due to issues on ESP8266
[ESP-IDF5.1] Revert to older SDK code due to issues with HWCDC
[Build] Reduce build size regarding WiFi AP Candidate duplicate code
[HWCDC] Test for ESP32-C3/C6/S3 HWCDC issues
[CUL Reader] Cherry pick code from ESPEasy_NOW pull request
[CUL Reader] Fix not being able to set flags
[Save Settings] Fix issue where data may get corrupted saving task
[Display] Reduce ESP8266 'display' build size
[MQTT] Fix crash and disconnect sending to MQTT using formula
Ton Huisman (22):
[P087] Add serialproxy_test command and Get the parsed data
[P087] Fix typo
[P087] Documentation clarification
[P087] Apply log-string and code optimizations
[P087] Always process Global Match so values can be retrieved
[Bugfix] Release.yml shouldn't try to move a non-existing file
[Build] Add ESP32-C6 MAX builds (preliminary)
[Docs] Update ESP chip info
[Docs] Update ESP chip info
[P116] Add alternative model selections for ST7789
[Bugfix] Remove duplicate define in Custom-sample.h
[Build] Custom IR ESP32 configurations not using the pre_custom_esp32_IR.py Python script
[P116] Add alternative model selection for ST7735
[P029][C002] Add option Invert On/Off value
[Docs] Update P029 documentation with new option
[C002] Reduce .bin size (slightly)
[P116] Fine-tuning the rotation column-offset for ST7735 135x240 display
[P116] Documentation improvement.
[P095] Documentation improvement.
[P116] Update documentation for supported displays
[Build] Disable Notifiers in full binaries
[Build] Fix typo
-------------------------------------------------
Changes in release mega-20240229 (since mega-20231225)
-------------------------------------------------
Release date: Thu Feb 29 03:10:58 PM CET 2024
Fabio Ancona (1):
Added missing P166
TD-er (104):
[IPv6] Fix node with IPv6 not seen by other p2p nodes with only IPv4
[PVS Studio] Fix "dangerous expression" macros.
[PVS Studio] Fix missing 'break;' in switch statement
[PVS Studio] Fix Not all members of a class are initialized inside the constructor
[PluginStats] Add PluginStats chart data to /json
[PluginStats] Fix pluginstats via JSON & improve speed
[ESPEasy p2p] Fix Ethernet connected nodes not listed on other nodes
[Build] Make ESP8266 Energy build fit again
[Build] Fix duplicate extra_scripts declaration in some ESP8266 builds
[HW CDC] Fix delay when no client connected to read serial logs
[UDP] Only process UDP packets while connected
[Factory Reset] Fix applying NVS stored settings only when these exist
[ESP-IDF5.1] Add custom_ESP32s2_4M316k_LittleFS_CDC
[Factory Reset] Add default flags for factory reset
[ESP-IDF5.1] Fix starting DHCP on ESP AP during setup
[Cleanup] Reduce bin size (NVS storage & P128 NeoPixelBus)
[Cleanup] Reduce build size (P128 NeoPixelBus)
[Cleanup] Reduce build size (P104/P128)
[Cleanup] Reduce build size (P104 load/save functions)
[Cleanup] Reduce build size
[Cleanup] Reduce build size (AdaFruitGFX_Helper fonts)
[ESP32] Disable PSRAM for ESP32 4M builds (WT32-ETH01 issues)
[Docs] Add credits to origin of ESP32-S3 flash/PSRAM options
[ESP-IDF5.1] Improve IPv6 for ESP32-xx
[ESP-IDF5.1] Fix IPv6 for ESP32-S3
[Build] Fix build due to typo in source code
Fix "Enable SDK WiFi Auto Reconnect" state on sysinfo page (#4935)
[build] Fix another build issue due to includes
Revert "[Cleanup] Reduce build size (AdaFruitGFX_Helper fonts)"
[Factory reset] Fix using factory reset defaults on new devices
[ESP-IDF5.1] Update to latest ESP-IDF & Arduino fixes
Fix crash in command arg parsing with nullptr string
[IPv6] Allow `ip6` command from all command sources
[P077] Add `cseclearpulses` command to reset CF pulses counter
[Cleanup] Reduce build size by simplifying logs
[Provisioning] Show error and event on failed firmware update (#4941)
[Build] Fix build error on ESP8266
[P077_CSE] Fix cseclearpulses command
[P077 CSE7766] Call PLUGIN_READ right after `cseclearpulses`
[P016 IR] Reduce stack usage executing commands
[P016 IR] Fix some build mistakes reducing stack usage
[P016 IR] Reduce stack usage execute command
[P016 IR] Add debug code to reproduce crashes Uwe
[Cleanup] Reduce stack usage P036 OLED Framed
[P036 Framed OLED] Apply cleanup from Ton's TAR pull request
[P036 OLED Framed] Add bound checks when drawing fonts
[Commands] Allow commands from external source to be queued (stack)
[Cleanup] Reduce stack usage P036 OLED Framed
[P036 Framed OLED] Apply cleanup from Ton's TAR pull request
[P036 OLED Framed] Add bound checks when drawing fonts
[ESP32 IPv6] Fix getting IPv6 address on ESP32 classic
[Build] Add ESP8266 custom IR 1M build + IPv6 to custom ESP32 IR build
[IPv6] Move log to more logical place
[SPI Ethernet] Add support for SPI Ethernet modules
[SPI Ethernet] Fix build for pre ESP-IDF5.1
[SPI Ethernet] Fix build
[SPI Ethernet] Use user configurable SPI bus for SPI Ethernet
[SPI Ethernet] Fix build pre-ESP-IDF5.1
[SPI Ethernet] Fix detect Link Up/Down + cleanup code
[SPI Ethernet] Fix build on ESP-IDF < 5.x
[Build] Fix building on ESP8266
[SPI Ethernet] Document SPI Ethernet + Eth config for available boards
[SPI Ethernet] Fix typo in docs
[Cleanup] Fix crashes on ESP32 sending log from ISR callback functions
[SPI Ethernet] Add "- None -" Ethernet type option on Hardware Page
[ESP-IDF5.1] Update to latest SDK/Arduino commits
[IPv6] Fix IPv6 on ESP32-S3
[Build] Fix missing #endif
[SPI Ethernet] Allow selecting RMII pins for SPI Ethernet
[SPI Ethernet] Fix concurrency issue with shared SPI bus for ETH/display
[Build] Fix build on ESP32-C3
[PWM] Fix ESP32 LittleFS build PWM GPIO : port#2 is out of range (#4962)
[SPI Ethernet] Make default Ethernet parameters more neutral
[PWM] Fix deadlock on ESP32-classic with PWM fade
[ESP32 PWM] Fix calling ledcAttach for Servo and PWM on ESP32 IDF5.1
[ESP-IDF5.1] Update to latest Arduino and ESP-IDF commits
[Email] Fix sending multiple lines in body (#4967)
[ESP-IDF5.1] Fix build ESP32-C2
[Build] Test ESP32-solo1 build on CI
[ESP-IDF5.1] Update to latest platform build
[SPI Eth] Add ESP32-S3 ETH builds
[ESP32 WiFi] Fix slow connect after WiFi scan
[SPI Eth] Allow SPI Ethernet W5500 to have not connected INT pin
[Build] Fix missing include
[ESP-IDF5.1] Update to latest IDF and Arduino commits
[ESP-IDF5.1] Update platform package for ESP32-solo1
[ESP-IDF5.1] Fix renamed platform zip file
[ESP32 WiFi] Fix crashing on wifi disconnect
[WiFi] Fix crash when calling disconnect or wifimode,off from remote src
[WiFi] Fix crash when WiFi was turned off while data is sent
[Docs] Add warning changing ECO mode when using SPI Ethernet
[GPIO] Add form note setting pull-up on Hardware tab (#4800)
[Rules] Remove warning for max size on Rules edit page
[Eth] Show Ethernet adapter used in JSON/Sysinfo
[ESP-IDF5.x] Add fix to ESP-IDF/Arduino for W5500 without RST (AtomPoE)
[HW info] Add checks for properly identify embedded flash/PSRAM
[ESP8266] Reduce memory usage by actively flushing webpage buffers
[IPv6] Fix slowdown restarting services on receiving IPv6 address
[ESP32-C3/C6] Fix web slowdown by reverting Arduino/IDF code
[Build] Fix build issue on ESP-IDF4.4
[Build] Fix build on non-ESP32-S3
[Build] Fix typo in ESP32-S2 code
[ESP32-C3/C6] Fix stalling on concurrent connections
[Build] Add flag to help not compile/download unused libs
Ton Huisman (116):
[P044] Uncrustify format source
[P044] Make Led pin configurable
[P044] Correct auto-complete typo
[Plugins] Call PLUGIN_WEBFORM_PRE_SERIAL_PARAMS before serial settings are displayed to allow settings conversion
[Plugins] Call PLUGIN_WEBFORM_PRE_SERIAL_PARAMS before serial settings are displayed to allow settings conversion
[P020] Merge [P044] code into [P020], so P020 van emulate P044
[P020/P044] Migrate settings also on plugin start without prior save from UI
[P020] Code improvement
[P020/P044] Add option for including P1 data in #data event
[UI] Add Separator character input selector
[P020/P044] Add feature to replace spaces and newlines in received data
[P020] Add plugin documentation
[P037] Implement replacement character input selector, update documentation
[UI] Fix unsupported feature compilation error, fix signed/unsigned warning
[P044] Only show usable settings
[P044] Update plugin documentation (based on P020)
[Build] Adjust Custom ESP8266 as already planned to fix build failure
[P020/P044] Adjustments to complete the merge
[P020] Add extra check before sending P1 data
[P020] Revert extra check before sending P1 data, minor improvements
[StringConverter] Add parseHexTextString()
[P020] Add command `serialsendmix`
[StringConverter] Improvements to parseHexTextString()
[P020] Add command documentation
[P020] Correct some typos in documentation
[StringConverter] Add parseHexTextData() to handle 0x00
[P020] Use parseHextTextData() to handle 0x00 in data
[P020] Update documentation for 0x00..0xFF hex data support in serialsendmix
[P020] Update changelog
[P020] Unification of Ser2Net log messages
[Build] Manually apply WiFi build fixes (missing includes)
[ESPEasySerial] Add shortName option to be used as eventname
[Helpers] Implement ESPEasySerial shortName option to be used as eventname
[P020] Increase max. buffer size [P020] Add options for using Serial Port name as event and/or append the task number [P020/P044] Fix plugin initialization when USB (HW)CDC or I2C Serial is selected
[P020] Update documentation for new options
[P020] Fix receiving P1 data
[P020] Fix merge conflict
[P020] Allow some extra time-out while receiving P1 data, add missing CR/LF
[P044/P020] Improved defaults for P1 WiFigateway
[P020][P044] Minor improvements, update with latest mega changes
[Docs] Hardware page: Add missing documentation for new I2C Slow default
[P043] Add support for %sunrise% and %sunset% based time-values
[Docs] Add missing %syssec_d% variable
[P151] Add missing PLUGIN_I2C_GET_ADDRESS function
[Docs] Update in Plugin-template embedded documentation
[Docs] Add Rules example for registering daily working time
[TimeCalc] Fix parse errors
[Text input] Add `datalist` support, manually cherry picked from P123 PR
[Text input] Implement `datalist` support
[P043] Add selection list (datalist) support for input time string
[P043] Rework Day,Time inputs, add configurable Day,Time count
[P043] Change Value input layout to be on same line as the Day,Time input, code optimization
[Docs] Update Commands and Events references
[P043] Add option for On/Off value input
[P043] Add 'config' command support and get config value support
[P043] Add documentation
[Build] Disable some failing build envs
[Docs] Add P043 to commands and events reference pages
[P043] Fix simple Yes/No behavior like GPIO mode
[P043] Update documentation
[Build] Fix buildscripts for v4 Actions `upload-artifact`, `download-artifact` and `delete-artifact`
[Build] GH Actions v4 use unique upload-id
[Build] GH Actions use setup-python v5, improved glob for delete-artifact
[Build] GH Actions v4 try fix artifact download permissions issue
[Docs] Update `README.md` with new builds/ESPs/options
[Build] GH Actions v4 Sort builds by ESP, remove repackage step
[Build] GH Actions v4 Fix build names vs dependencies, add all-binaries artifact
[Build] GH Actions v4 Rename `repackage` job to `combine_package`
[Build] GH Actions v4 Apply also to `release.yml`, add ESP32-C2 and ESP32-C6 artifact uploads
[Lib] NeoPixelBus_Wrapper: Allow fall-back to Adafruit_NeoPixel lib for ESP8266
[Lib] NeoPixelBus_Wrapper: Fix compilation for IR builds
[Lib] NeoPixelBus_Wrapper: Correct includes attribute
[Docs] Add Rules example for measuring daily used power/energy
[Adafruit_NeoPixel] Fix compiler warning
[NeoPixelBus_wrapper] Update README.md
[NeoPixelBus_wrapper] Correct class inheritance error
[Adafruit_NeoPixel] Exclude from ESP32 builds (unused)
[Adafruit_NeoPixel] Correct function signature issues causing compiler warnings
[P131] Fix compiler warning -Wreorder
[SuperTinyCron] Remove unused commandline tool
[P020] Replace WiFiServer->available() by accept() (for IDF >= 5)
[Build] Combine_package use separate downloads to reduce chance of failure
[Build] Combine_package use wretry.action to try and succeed the downloads
[Build] Remove RTTTL from `normal_IRext_no_rx` build for size, add some libs to lib_ignore for `custom_IR` builds
[P043] Exclude some code that won't work for PLUGIN_BUILD_MINIMAL_OTA builds
[Release] Add ESP32-C2 and ESP32-C6 downloads
[Build/Release] Fix some issues, apply workarounds where needed
[Docs] Update copyright year to 2024
[Docs] Update copyright year to 2024
[Docs] Update copyright year to 2024
[Docs] Update Sphinx tools and configuration
[IR] Enable all protocols for ESP32 IR builds
[Bugfix] Update bootstrap version for Sphinx to fix documentation menus
[P166] Add plugin GP8403 DAC Dual channel 0-10V
[P166] Add isI2CEnabled check on PLUGIN_INIT
[Build/Release] Update actions/cache to v4
[P166] Send out datat for events/controllers when changing output values
[Build/Release] Remove Wdalen/retry.action plugin for Node 20 compatibility
[P166] Send out data by scheduling a timer
[P166] Update changelog
[P166] Set default I2C address to 0x5F, as that's how is delivered
[UI] Add alternative 'default' selection to `addFormSelectorI2C()`
[P166] Restore I2C address selector order, fix compiler warning 're-order'
[UI] Add alternative 'default' selection to `addFormSelectorI2C()`, select by address
[P166] Adjust I2C address selector default
[UI] Update plugin I2C address selectors to normal order, with matching default
[P166] Optionally restore last output value on warm boot (setting, default enabled)
[P166] Fix bug that Initial values where not applied after settings save
[P166] Add documentation
[P166] Documentation improvements
[Build] Allow FEATURE_SERVO for Custom builds with LIMIT_BUILD_SIZE set
[Bugfix] `%vcc%` variable isn't recognized
[MQTT] Add PublishR command: publish with will-retain
[Docs] Documentation and EasyColorCode updates and fixes, Feb 2024
[MQTT] Fix debug strformat message
[EasyColorCode] Correction and var rename commonEvents
chromoxdor (30):
Update Networking.cpp
Update Networking.cpp
Update Networking.cpp
make thinkspeak event optional
compare also the last part of the uri to generate an event
add check if we got an answer otherwise we get -1 as a value
Update Networking.cpp
Update Networking.cpp
Update define_plugin_sets.h
Update define_plugin_sets.h
Update Networking.cpp
Add ThingspeakReply to wordlist
Update Networking.cpp
Update Networking.cpp
added documentation
Update Rules.rst
single + multifield reply combined
Update Rules.rst
Update Rules.rst
a little formatting
Update espeasy.min.js
Update Rules.rst
add %sysec_d% and fix typo
remove change since ton already did it :)
Update StringGenerator_System.cpp
initial changes
Update _P102_PZEM004Tv3.ino
Update _P102_PZEM004Tv3.ino
Update Rules.rst
Update codemirror to 5.65.16
flashmark (9):
Initial plugin structure
Rough, working version
Added recovery from communication failures
Rework after review, added documentation
Fixed compiler issue after rebase
Minor cleanup
Some fixes after review
Added to CLimate and Collection G plugin sets. Removed some leftovers.
Merge
uwekaditz (11):
[P016] Add protocol RAW to UI if 'Accept DecodeType UNKNOWN' is set
uint64ToString() changed to ll2String()
Check the vector size when checking for commands, and check that the command is really not empty
Reduce code for debug message
Revert "Merge branch 'P016]-PullRequest' of https://github.com/uwekaditz/ESPEasy into P016]-PullRequest"
Revert "Reduce code for debug message"
Reduce code for debug message
Use the new property addToQueue in ExecuteCommand_all()
Uncrustify
Uncrustify #ifdef's
[P016] BUG: Decode type UNKNOWN was not added to the web settings
-------------------------------------------------
Changes in release mega-20231225 (since mega-20231130)
-------------------------------------------------
@@ -4526,7 +4878,7 @@ TD-er (106):
[WiFi] Process Station event Auth Changed
[Controller] Debug log on remove duplicate queued message
[GPIO] Fix warning of unused variable
[Build] Remove HWL8012 from "energy" build
[Build] Remove HLW8012 from "energy" build
[Energy build] Add P093 Mitsubishi Heat Pump
[Cleanup] Remove ICACHE_RAM_ATTR on wifi event function
[Build] LittleFS can only be built on 'beta' builds
@@ -4534,7 +4886,7 @@ TD-er (106):
[Cleanup] Reduce IRAM usage in Dallas bit read/write code
[Build] Fix normal_beta_ESP8266_16M_LittleFS build
[Cleanup] Remove unneeded ICACHE_RAM_ATTR on DHCP timeout callback
[Build] Remove P076 HWL8012 from "testing" builds due to build size
[Build] Remove P076 HLW8012 from "testing" builds due to build size
[Build] Disable test_ESP8266_4M1M_VCC_MDNS_SD as it does not fit in IRAM
[Build] Set normal_IRext_no_rx_ESP8266_4M2M to LIMIT_BUILD_SIZE
[GPS] Fix running out of memory when no GPS data is received.
+4 -2
View File
@@ -1,4 +1,6 @@
Sphinx==4.5.0
Sphinx==7.*
sphinx-autobuild==2021.3.14
sphinx-bootstrap-theme==0.8.1
recommonmark==0.7.1
recommonmark==0.7.1
sphinxcontrib-htmlhelp>=2.0.5
sphinxcontrib-applehelp>=1.0.8
+15 -13
View File
@@ -10,8 +10,8 @@ ESPEasy does support a number of variants of the processors manufactured by Espr
* **ESP32-S2** Has more GPIO pins than the ESP32, but only 1 CPU core. Initial support in ESPEasy added since 2021-09-19.
* **ESP32-S3** Support added: 2023-05-03
* **ESP32-C3 / ESP8685** Support added: 2023-05-03
* **ESP32-C2 / ESP8684** Not yet supported
* **ESP32-C6** Not yet supported
* **ESP32-C2 / ESP8684** Support added: 2023-11-10
* **ESP32-C6** Support added: 2023-11-10
* **ESP32-H2** Not yet supported
@@ -83,7 +83,7 @@ ESPEasy does support a number of variants of the processors manufactured by Espr
- 2022
- 2021
- 2021
* - Status (2023/05)
* - Status (2024/03)
- NRND
- Mass Production (solo1: NRND)
- NRND
@@ -91,7 +91,7 @@ ESPEasy does support a number of variants of the processors manufactured by Espr
- Mass Production
- Mass Production
- Mass Production
- Sample
- Mass Production
* - Wi-Fi
- IEEE 802.11 b/g/n; 2.4 GHz; HT20; up to 72 Mbps
- IEEE 802.11 b/g/n; 2.4 GHz; HT20/40; up to 150 Mbps
@@ -328,12 +328,12 @@ ESPEasy does support a number of variants of the processors manufactured by Espr
- 0
* - Ethernet
- 0
- 1 (RMII)
- 0
- 0
- 0
- 0
- 0
- 1 (RMII and SPI)
- 1 (SPI)
- 1 (SPI)
- 1 (SPI)
- 1 (SPI)
- 1 (SPI)
- 0
* - TWAI (CAN)
- 0
@@ -651,6 +651,8 @@ To support all modes, we simply need to make several versions
- 2 MB (Quad SPI)
- ``qio_qspi``
`Table Source <https://api.riot-os.org/group__cpu__esp32__esp32s3.html>`_
Build versions:
@@ -681,7 +683,7 @@ ESP32-C2/ESP8684
Added: 2023/11/10
The ESP32-C2 is only available with embedded flash and can only be found labelled as "ESP8684".
The ESP32-C2 is only available with embedded flash and can also be found labeled as "ESP8684".
It looks like it is aimed to be used in single purpose devices, due to its low GPIO count and only requiring a bare minimum of external parts.
@@ -698,9 +700,9 @@ Added: 2023/11/10
The ESP32-C6 seems to be aimed at being used as a gateway for the new Thread protocol and Wi-Fi.
It is the more powerful version of the ESP32-H2 and also includes not only the traditional 2.4 GHz Wi-Fi, but also the new Wi-Fi6 standard on 2.4 GHz.
It is the more powerful version of the ESP32-H2 and also includes not only the traditional 2.4 GHz Wi-Fi, but also the new Wi-Fi6 standard on 2.4 GHz and IEEE 802.15.4 (Zigbee/Thread). Zigbee/Thread not yet supported by ESPEasy (March 2024).
.. note:: Labelled as "unstable" by the Arduino team (as of Nov 2023), preliminary support in ESPEasy
.. note:: Labeled as "unstable" by the Arduino team (as of Nov 2023), preliminary support in ESPEasy
ESP32-H2
========
+94 -13
View File
@@ -3,8 +3,6 @@
Hardware page
*************
Overview
========
ESPEasy has some centralized hardware configuration settings, shown in this page, and divided in sections.
@@ -55,6 +53,9 @@ ESPEasy has a separate setting for Slow I2C devices, and per I2C device this slo
.. image:: Device_I2COptionsShort.png
Added: 2023-11-23
A device flag has been added for specific devices to have **Force Slow I2C speed** set by default. After adding the device this option will be checked, but can still be unchecked to use (try) Fast I2C speed (400 kHz).
---------------
I2C Multiplexer
@@ -200,13 +201,34 @@ To activate a new configuration, a reboot is needed.
Ethernet PHY type
^^^^^^^^^^^^^^^^^
Select the used PHY controller type:
ESP boards can be equiped with Ethernet.
This is more stable and reliable compared to WiFi and allows for better responsiveness.
* LAN8710 (LAN8720 is also supported, but none of the newer features are supported)
* TLK110
* RTL8201 (since ESP32 IDF 4.4)
* DP83848 (since ESP32 IDF 4.4)
* DM9051 (since ESP32 IDF 4.4)
Actual transfer speed (at least when using RMII) is also higher than can be achieved via WiFi, but this is less of a concern for typical use cases where ESPEasy is used.
Ethernet chips/boards for ESP32-variant boards exist with 2 types of interfaces to the ESP.
* RMII interface - Faster actual transfer speeds possible, uses more GPIO pins, only supported on ESP32-classic (and upcoming ESP32-P4).
* SPI interface - (Added: 2024/02) Supported on all ESP32-variants (not all tested) on builds based on ESP-IDF 5.1
SPI Ethernet adapters do obviously require the SPI interface to be configured.
N.B. Only ESP32-variant builds with LittleFS support SPI Ethernet. (starting February 2024)
Supported Ethernet chips:
* RMII Interface:
* LAN8710 (LAN8720 is also supported, but none of the newer features are supported)
* TLK110
* RTL8201 (since ESP32 IDF 4.4)
* JL1101 (since ESP32 IDF 4.4)
* DP83848 (since ESP32 IDF 4.4)
* KSZ8041 (since ESP32 IDF 4.4)
* KSZ8081 (since ESP32 IDF 4.4)
* SPI Interface: (since ESP32 IDF 5.1)
* DM9051
* W5500
* KSZ8851
.. note:: The LAN8710 and LAN8720 are also available with an "A" suffix.
These are the same chips, only produced after the brand SMSC was taken over by Microchip Technology.
@@ -216,19 +238,22 @@ Ethernet PHY Address
The PHY address depends on the hardware and the PHY configuration.
On some chips, like the LAN8720, the board designer may set this address by pulling some pins either high or low at power on.
In theory, one could use multiple PHY adapters on the same RMII bus, but this is not supported by ESPEasy.
In theory, one could use multiple PHY adapters on the same RMII/SPI bus, but this is (currently) not supported by ESPEasy.
* Espressif's Ethernet board with TLK110 PHY use PHY address 31.
* Common Waveshare LAN8720 PHY breakout board (and clones) use PHY address 1.
* Olimex ESP32 EVB REV B IoT LAN8710 PHY Board with CAN use PHY address 0.
* Other LAN8720 breakouts often use PHY address 0.
* ETH01-EVO (ESP32-C3 based board) uses PHY address 1.
If the PHY address is incorrect then the EMAC will initialise but all attempts to read/write configuration registers on the PHY will fail.
N.B. There is support for an auto detect of this PHY address, by setting it to -1, but at least on the LAN8720 this does not seem to work.
GPIO pins
^^^^^^^^^
RMII Ethernet
^^^^^^^^^^^^^
As mentioned above, the RMII interface is only present on ESP32-classic (and is mentioned on the announced ESP32-P4).
RMII PHY SMI Wiring
"""""""""""""""""""
@@ -278,7 +303,43 @@ Apart from these GPIO pins, there is a number of other pins reserved on the ESP3
Since these GPIO pin assignments cannot be changed, it is also not needed to configure them.
However, they also cannot be used when *RMII PHY* is used.
.. include:: ../Reference/Ethernet_PHY_ESP32.rst
.. include:: ../Reference/RMII_Ethernet_PHY_ESP32.rst
RMII Ethernet ESP32 Boards
""""""""""""""""""""""""""
.. include:: ../Reference/RMII_Ethernet_ESP32_boards.rst
SPI Ethernet
^^^^^^^^^^^^
(Added: 2024/02)
As mentioned above, these SPI based Ethernet interfaces require the SPI interface to be configured.
The SPI bus can be shared, but the SPI Ethernet chips are a bit specific about the used frequency.
Currently the default SPI frequency of 20 MHz is used, so not all other SPI devices may work together with SPI Ethernet.
Some boards like the ETH01-EVO (ESP32-C3 based) do not even have the SPI bus pins made accesible.
.. note:: Switching to ECO mode can sometimes result in an unreachable node when using SPI Ethernet. After a reboot the node works just fine again (in ECO mode). This is currently being investigated.
GPIO Configuration
""""""""""""""""""
* CS pin: Just as any SPI device, it needs a CS pin to tell the device it is being addressed.
* IRQ/INT pin: Allows the Ethernet chip to signal the ESP about new data. (Optional for W5500)
* RST pin: ESP will try to reset the Ethernet adapter during boot. Not all boards may have this wired.
SPI Ethernet ESP32 Boards
"""""""""""""""""""""""""
.. include:: ../Reference/SPI_Ethernet_ESP32_boards.rst
Ethernet with PoE
^^^^^^^^^^^^^^^^^
@@ -288,13 +349,33 @@ Some ethernet boards support Power over Ethernet (PoE), so only a single (ethern
For Olimex boards in the ESP32-POE range, the supplier has documented this warning:
.. warning::
**Important notice**: Olimex ESP32-PoE has **no galvano isolation** from Ethernet's power supply, when you program the board via the micro USB connector the Ethernet cable should be disconnected (if you have power over the Ethernet cable)!
**Important notice**: Olimex ESP32-PoE has **no galvanic isolation** from Ethernet's power supply, when you program the board via the micro USB connector the Ethernet cable should be disconnected (if you have power over the Ethernet cable)!
Consider using Olimex USB-ISO to protect your computer and board from accidental short circuit. Also consider instead using Olimex ESP32-PoE-ISO board, which *is* insulated.
Most likely, this warning is applicable to other brands as well.
Ethernet Isolation
^^^^^^^^^^^^^^^^^^
Most Ethernet RJ45 phy (the connector on the PCB) have isolation transformers in them.
This does isolate the TX/RX pins to make sure there is no direct connection between the long cables and the Ethernet controller chip.
The isolation does protect the Ethernet chip from picked up high voltage spikes and ESD surges when inserting the Ethernet cable.
However not all ESP boards with Ethernet have these installed.
Apart from the isolation of the TX/RX pins the metallic enclosure of the phy should also be isolated from the rest of the circuit of the ESP board.
Typically this is done by connecting the metal enclosure of the phy via a capacitor to GND of the rest of the circuit.
A lot of boards with Ethernet have these directly connected to GND, which may impose a problem when connecting the ESP board to your PC.
.. warning::
**Important notice**: For ESP boards with Ethernet which need debugging, never use Ethernet cables with metal shielding on the Ethernet connector.
Using shielded Ethernet cable will connect the metal shield of the RJ45 phy to the ground of the switch and this may be connected to other appliances which may be badly grounded.
This will add a significant voltage offset between the ESP board and your PC while debugging.
Such a high voltage is very likely to destroy electronics.
-------------------
GPIO boot states
-------------------
+27 -20
View File
@@ -29,7 +29,7 @@ Below a list of the most important directories and files used in this project.
* ``platformio.ini`` Configuration file for PlatformIO to define various build setups.
* ``uncrustify.cfg`` Configuration file for Uncrustify, to format source code using some uniform formatting rules.
* ``requirements.txt`` List of used Python libraries and their version (result of ``pip freeze`` with Virtual env active)
* ``esp32_partition_app1810k_spiffs316k.csv`` Used partition layout in ESP32 builds.
* ``boards/partitions/esp32_partition_app1810k_spiffs316k.csv`` Used partition layout in ESP32 4M builds.
ESPEasy src dir
@@ -90,11 +90,11 @@ The filename is quite descriptive:
Build Type
----------
Build type can be: (differ in included plugins)
Build type can be: (differences in included plugins)
* normal => Only Stable plugins and controllers
* test => Stable + Testing (split into multiple sets, A/B/C/D)
* max => All available plugins
* normal => Only Stable plugins and controllers
* collection => Stable + Collection (split into multiple sets, A/B/C/D/E/F/G)
* max => All available plugins and features
There is also a number of special builds:
@@ -111,8 +111,10 @@ ESP Chip Type
* ``ESP8285`` Supported in ``ESP8266`` builds. Used in some Sonoff modules. This chip has embedded flash, so no extra flash chip.
* ``ESP32`` Allows for more memory and more GPIO pins.
* ``ESP32-S2`` Newer version of ESP32. Has even more GPIO pins, but some specific features of ESP32 were removed.
* ``ESP32-S3`` Not yet available.
* ``ESP32-C3`` Support will be added soon.
* ``ESP32-S3`` Newer version of ESP32 and ESP32-S2. Has even more GPIO pins, some specific features of ESP32 were removed, and some design choices of ESP32-S2 are reverted and implemented differently.
* ``ESP32-C2`` Preliminary supported. Cheaper variant of ESP32-C3, and also an ESP8266 replacement. Available as pin-compatible module for ESP8266. Single core, and max 120 MHz clock speed.
* ``ESP32-C3`` Intended as a replacement for ESP8266, using ESP32 technology, though single-core and with limited clock speed (160 MHz, some models 120 MHz).
* ``ESP32-C6`` Preliminary supported. Will allow connectivity with IEEE 802.15.4 (Thread/Zigbee) wireless protocol.
Memory Size and Partitioning
----------------------------
@@ -124,23 +126,27 @@ Memory Size and Partitioning
* ``4M1M`` 4 MB flash modules with 1 MB filesystem (usually SPIFFS)
* ``4M2M`` 4 MB flash modules with 2 MB filesystem (usually SPIFFS)
* ``4M316k`` 4 MB flash modules using 1.8 MB sketch size, with 316 kB filesystem (usually SPIFFS) (for ESP32)
* ``8M1M`` 8 MB flash modules using 3.5MB sketch size, with 1 MB filesystem (LittleFS) (ESP32 only a.t.m.)
* ``16M1M`` 16 MB flash modules using 4MB sketch size, with 1 MB filesystem (usually SPIFFS) (ESP32 only a.t.m.)
* ``16M2M`` 16 MB flash modules using 4MB sketch size, with 2 MB filesystem (LittleFS) (ESP32 only a.t.m.)
* ``16M8M`` 16 MB flash modules using 4MB sketch size, with 8 MB filesystem (LittleFS) (ESP32 only a.t.m.)
Optional build options
----------------------
* ``LittleFS`` Use LittleFS instead of SPIFFS filesystem (SPIFFS is unstable > 2 MB)
* ``LittleFS`` Use LittleFS instead of SPIFFS filesystem (SPIFFS is unstable \> 2 MB and no longer available from IDF 5.x)
* ``VCC`` Analog input configured to measure VCC voltage
* ``OTA`` Arduino OTA (Over The Air) update feature enabled
* ``Domoticz`` Only Domoticz controllers (HTTP+MQTT) and plugins included
* ``FHEM_HA`` Only FHEM/OpenHAB/Home Assistant (MQTT) controllers and plugins included
* ``lolin_d32_pro`` Specific Lolin hardware options enabled
* ``PSRAM`` Additional PSRAM support (ESP32 only)
* ``OPI`` Flash via OPI protocol support (ESP32 only)
* ``QIO`` Flash via QIO protocol support (ESP32 only)
* ``CDC`` CDC Serial (built-in USB) support (ESP32 only)
* ``ETH`` Ethernet interface enabled (ESP32 only)
Please note that the performance of 14MB SPIFFS (16M flash modules) is really slow.
Please note that the performance of 14MB SPIFFS (16M flash ESP8266 modules) is really slow.
All file access takes a lot longer and since the settings are also read from flash, the entire node will perform slower.
See `Arduino issue - SPIFFS file access slow on 16/14M flash config <https://github.com/esp8266/Arduino/issues/5932>`_
@@ -150,7 +156,7 @@ Special memory partitioning:
* ``2M256`` 2 MB flash modules (e.g. Shelly1/WROOM02) with 256k SPIFFS (only core 2.5.0 or newer)
* ``4M316k`` For ESP32 with 4MB flash, sketch size is set to 1.8 MByte (default: 1.4 MByte)
* ``4M1M`` 4MB flash, 1 MB SPIFFS. Default layout for 4MB flash.
* ``4M1M`` 4MB flash, 1 MB SPIFFS. Default layout for ESP8266 4MB flash.
* ``4M2M`` 4MB flash, 2 MB SPIFFS. Introduced in October 2019. Only possible with core 2.5.2 or newer.
.. warning::
@@ -165,7 +171,7 @@ Difference between .bin and .bin.gz
Starting on esp8266/Arduino core 2.7.0, it is possible to flash images that have been compressed using GZip.
Please note that this only can be used on installs already running a very recent build.
Please note that this only can be used on installs already running a recent build.
This also means we still need to update the 2-step updater to support .bin.gz files.
@@ -182,17 +188,17 @@ There are several builds for ESP32:
* ``normal_ESP32_4M316k`` Build using the "stable" set of plugins for ESP32
* ``normal_ESP32_4M316k_ETH`` Build using the "stable" set of plugins for ESP32, with support for an on-board Ethernet controller
* ``custom_ESP32_4M316k`` Build template using either the plugin set defined in ``Custom.h`` or ``tools/pio/pre_custom_esp32.py``
* ``test_A_ESP32_4M316k`` Build using the "testing" set "A" of plugins for ESP32
* ``test_B_ESP32_4M316k`` Build using the "testing" set "B" of plugins for ESP32
* ``test_C_ESP32_4M316k`` Build using the "testing" set "C" of plugins for ESP32
* ``test_D_ESP32_4M316k`` Build using the "testing" set "D" of plugins for ESP32
* ``test_A_ESP32-wrover-kit_4M316k`` A build for ESP32 including build flags for the official WRover test kit.
* ``collection_A_ESP32_4M316k`` Build using the "Collection" set "A" of plugins for ESP32
* ``collection_B_ESP32_4M316k`` Build using the "Collection" set "B" of plugins for ESP32
* ``collection_C_ESP32_4M316k`` Build using the "Collection" set "C" of plugins for ESP32
* ``collection_D_ESP32_4M316k`` Build using the "Collection" set "D" of plugins for ESP32
* ``collection_A_ESP32-wrover-kit_4M316k`` A build for ESP32 including build flags for the official WRover test kit.
* ``max_ESP32_16M8M_LittleFS`` Build using all available plugins and controllers for ESP32 with 16 MB flash (some lolin_d32_pro boards)
Since ESP32 does have its flash partitioned in several blocks, we have 2 bin files of each ESP32 build, f.e.:
* ``test_D_ESP32_4M316k.bin`` Use for OTA upgrades.
* ``test_D_ESP32_4M316k.factory.bin`` Use on clean nodes as initial inistall.
* ``collection_D_ESP32_4M316k.bin`` Use for OTA upgrades.
* ``collection_D_ESP32_4M316k.factory.bin`` Use on clean nodes as initial inistall.
The binary with ``.factory`` in the name must be flashed on a new node, via the serial interface of the board.
This flash must be started at address 0.
@@ -208,7 +214,8 @@ To help recover from a bad flash, there are also blank images included.
* ``blank_1MB.bin``
* ``blank_2MB.bin``
* ``blank_4MB.bin``
* ``blank_8MB.bin``
* ``blank_16MB.bin``
When the wrong image is flashed, or the module behaves unstable, or is in a reboot loop,
flash these images first and then the right image for the module.
flash these images first to clear out any remaining or hidden settings (Arduino framework...) and then the right image for the module.
+2 -2
View File
@@ -81,7 +81,7 @@
Some display types may limit or extend the maximum accepted size.
"
"
``<trigger>,txtfull,<x>,<y>,<size=1>,<foreColor=current>,<backColor=foreColor>, <textPrintMode=current>,<maxTextWidthPixels=0>,<text>``
``<trigger>,txtfull,<x>,<y>,<size=1>,<foreColor=current>,<backColor=foreColor>,`` ``<textPrintMode=current>,<maxTextWidthPixels=0>,<text>``
","
Write text at position X/Y with all options. Depending on the setting **Text Coordinates in col/row**, these coordinates are pixels (default) or column/rows.
@@ -252,7 +252,7 @@
The file will be read from SD-card, when available, and the bmp file is not found on the internal file storage.
"
"
``<trigger>,btn,<state>,<mode>,<x>,<y>,<w>,<h>,<id>,<type>,<ONcolor=blue>,<OFFcolor=red>, <CaptionColor=white>,<fontsize>,<ONcaption>,<OFFcaption>,<BorderColor=white>, <DisabledColor=0x9410>,<DisabledCaptionColor=0x5A69>,<TaskIndex>,<Group>, <SelectGroup>,<objectname>``
``<trigger>,btn,<state>,<mode>,<x>,<y>,<w>,<h>,<id>,<type>,<ONcolor=blue>,<OFFcolor=red>,`` ``<CaptionColor=white>,<fontsize>,<ONcaption>,<OFFcaption>,<BorderColor=white>,`` ``<DisabledColor=0x9410>,<DisabledCaptionColor=0x5A69>,<TaskIndex>,<Group>,`` ``<SelectGroup>,<objectname>``
","
As a companion to the ESPEasy_TouchHelper, the AdafruitGFX_helper takes care of drawing button objects via this subcommand.
+7 -1
View File
@@ -469,10 +469,16 @@
"
Publish","
:green:`Rules`","
Send command using MQTT broker service. Uses the first enabled MQTT Controller.
Send command using MQTT broker service. The 'Will Retain' option as configured in the MQTT Controller settings is used. Uses the first enabled MQTT Controller.
``Publish,<topic>[,<payload>]``"
"
PublishR","
:green:`Rules`","
Send command using MQTT broker service, with the MQTT 'Will Retain' flag enabled. Uses the first enabled MQTT Controller.
``PublishR,<topic>[,<payload>]``"
"
PutToHTTP","
:green:`Rules`","
*Syntax format 1:*
+97 -7
View File
@@ -26,23 +26,111 @@ Supported hardware
|P020_usedby|
Configuration
-------------
.. image:: P020_DeviceConfiguration.png
* **Name** In the Name field a unique name should be entered.
* **Enabled** When unchecked the plugin is not enabled.
Sensor
^^^^^^
See: :ref:`SerialHelper_page`
Device Settings
^^^^^^^^^^^^^^^
**TODO**: Complete this documentation...
* **TCP Port**: The port for an external network client to read the data from, range 1..65535. The used port number must be unique within the device.
.. Commands available
.. ^^^^^^^^^^^^^^^^^^
* **Baud Rate / Serial config**: See *Serial helper configuration*, above.
.. .. include:: P020_commands.repl
* **Event Processing**: Select the type of data that is expected, to enable correct preprocessing. Available options:
.. Events
.. ~~~~~~
.. image:: P020_EventProcessingOptions.png
.. .. include:: P020_events.repl
* *None*: No special processing, what is received is sent out to the network client, not generating an event.
* *Generic*: No special processing, received data is sent to the network client, and an event ``!Serial#<message>``, containing the message as is, is generated. Spaces and newlines are processed as configured below.
* *RFLink*: Specifically designed for receiving serial data from RFLink devices, it follows this process:
* Remove the regular RFLink ``20;xx;`` prefix
* Check for prefix ``ESPEASY;``, if found, remove the prefix and generate event ``RFLink#<message>``. The ``<message>`` will contain commands to be handled by ESPEasy.
* If previous prefix is not found, generate event ``!RFLink#<message>``, containing the entire received data. Spaces and newlines are processed as configured below.
*Also see the* **Multiple lines processing** *option, below.*
* *P1 WiFi Gateway*: Process the data, received from a P1 Energy meter, that does a checksum validation, as included in the message. No separate data values are available in ESPEasy, these are usually handled by Home automation systems that support the P1 protocol via TCP network communication. An event ``<TaskName>#Data`` is generated when a valid P1 packet is received.
Replacing spaces or newlines should be **disabled** for the P1 protocol data to be handled properly as these replacements will disturb the checksum calculation, and also, the **Multiple lines processing** should be disabled if the data is to be handled as P1 protocol data, as that does contain newlines.
.. spacer
* **P1 #data event with message**: When enabled, the *P1 WiFi Gateway* Event Processing option will include the received message. **WARNING** This may easily cause memory overflow exceptions, especially when running on ESP8266 or other low-memory situations!
When selecting the **Event processing** options *Generic* or *RFLink*, after submitting the page will show extra options for the events generated:
.. image:: P020_EventOptions.png
* **Use Serial Port as eventname**: Instead of the default ``!Serial#<data>`` event, the name of the configured serial port will be used: (**Only** available for *Generic* Event processing)
.. spacer
* *(Unchecked)* -> ``Serial``
* *HW Serial0* -> ``serial0``
* *HW Serial0 swap* -> ``serial0``
* *HW Serial1* -> ``serial1``
* *HW Serial2* -> ``serial2``
* *SW Serial* -> ``serialsw``
* *I2C Serial* -> ``seriali2c``
* *USB HWCDC* -> ``serialhwcdc``
* *USB CDC* -> ``serialcdc``
.. spacer
* **Append Task Number to eventname**: Will append the task number to the event name, f.e. ``Serial8`` or ``RFLink12`` when task 8 or 12 is in use for this plugin. Can be combined with **Use Serial Port as eventname** if that is option is shown, resulting f.e. in ``serial0swap6`` etc. (Only available for *Generic* and *RFLink* Event processing)
.. spacer
* **Replace spaces in event by**: Here a single character can be selected to replace all spaces during receiving the data.
* **Replace newlines in event by**: Here a single character can be selected to replace all newlines during receiving the data. When enabled, all linefeeds are replaced, and all carriage returns (if any) are discarded.
.. image:: P020_ReplaceCharInEventOptions.png
The available set of replacement characters is ``, ; : . ! ^ | / \`` (comma, semicolon, colon, period, exclamation, caret, pipe, slash and backslash). When set to None, no replacement will be done.
* **Process events without client**: By default, if no network client is connected, no serial data will be received and processed either. Enabling this option enables receiving data and generating events without a TCP client connected.
* **Multiple lines processing**: When enabled, all received data will be split at a linefeed and sent out/event generated as separate messages.
* **RX Receive timeout (mSec)**: If parts of serial data packets are somewhat delayed, but should still be handled as a single message, then the delay to wait for the next part can be configured here. 0 disables the delay.
* **Reset target after init**: Select a GPIO pin that should be pulled low once during initialization of the plugin, used to synchronize the external serial data source with the plugin.
* **RX Buffer size (bytes)**: To not overburden the memory use of the plugin, the buffer size is set rather low. Some serial devices, like energy meters may require a larger buffer if the message exceeds this size. Range: 256..1024.
Led
^^^
* **Led enabled**: To enable a *data is being processed* activity led.
* **Led pin**: The GPIO pin the Led is connected to.
* **Led inverted**: Iverts the on/off state for the Led.
Data Acquisition
^^^^^^^^^^^^^^^^
The Data Acquisition and Send to Controller settings are standard available configuration items. Send to Controller only when one or more Controllers are configured. *Single event with all values* option is not applicable for this plugin.
Commands
~~~~~~~~
.. include:: P020_commands.repl
Change log
----------
@@ -50,6 +138,8 @@ Change log
.. versionchanged:: 2.0
...
|changed| 2022-12-13: Merge of P020 and P044 to reduce code size and combine features, as P044 was initially started as a spin-off from P020, but not evolved with the P020 features.
|added|
Major overhaul for 2.0 release.
Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

+37
View File
@@ -0,0 +1,37 @@
.. csv-table::
:header: "Command", "Extra information"
:widths: 20, 30
"
``serialsend,<content to send>``
``<content to send>``: Text that will be sent (nearly) unprocessed. Only the regular variable replacements will be applied before sending the content to the serial port.
","
Using this command, either from rules, via http or mqtt, the text that is provided as content is completely sent to the serial port. No extra data is added, other than any (system) variables that are included, being replaced.
"
"
``ser2netclientsend,<content to send>``
``<content to send>``: Text that will be sent (nearly) unprocessed. Only the regular variable replacements will be applied before sending the content to the network client.
","
This command will only send data to the network client, when there is an active connection.
Using this command, either from rules, via http or mqtt, the text that is provided as content is completely sent to the network client. No extra data is added, other than any (system) variables that are included, being replaced.
"
"
``serialsendmix,'<content to send>'[,...]``
``<content to send>``: Text and/or hex byte(s) (having 0x prefix) that will be sent (nearly) unprocessed. Only the regular variable replacements will be applied before sending the content to the serial port.
","
This command requires quotes to be used if spaces or commas are part of the content.
Any data can be sent, even if it can not be typed in a text content, by specifying that as a separate argument: ``serialsendmix,'text, optionally including spaces or commas',0xXX,'0xXXxx XX,xx-XX:xx'``
``'text, optionally including spaces or commas'``: Any text content to be sent to the serial port. Can contain variables. Quotes are only required if spaces or commas (separators) are used.
``0xXX``: A single character in hexadecimal notation (range: 0x00..0xFF), that is appended to the data to send.
``'0xXXxx XX,xx-XX:xx'``: A sequence of hexadecimal values (range: 0x00..0xFF), that *can* be separated by a space, comma, dash, colon, semicolon or period, or are just entered adjecent. Only the first 2 characters should be ``0x`` or ``0X``, the rest is interpreted as hex bytes, and appended to the string to send. Quotes are only required if space or comma separators are used.
Using this command, either from rules, via http or mqtt, the text that is provided as content is completely sent to the serial port. No extra data is added, other than any (system) variables that are included, being replaced.
"
+3
View File
@@ -113,6 +113,7 @@ Relevant Settings:
* Plugin: Output - Domoticz MQTT Helper
* 1st GPIO: 12 (the relay)
* IDX: 475
* Invert On/Off value: To ease the use of this plugin, without the need for rules, an Invert option has been added. This will cause the GPIO pin (and ``Output`` value) to be set to 1 when the Domoticz device is in Off state, and 0 for the On state.
Rules
@@ -184,6 +185,8 @@ Change log
.. versionchanged:: 2.0
...
|added| 2024-03: Add Invert On/Off value option.
|added|
Major overhaul for 2.0 release.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 21 KiB

+7 -1
View File
@@ -190,11 +190,17 @@ Option: Limit events being generated
* **Max. # events in event queue**: As a protection against event-overflow this configures a check for the queue-length, so if more than the selected number of events is still in the queue, new events will be discarded until some events are processed, and the remaining is less than this count. When set to 0 this check is disabled.
Option: Modify separater character in events
Option: Modify separator character in events
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* **To replace by comma in event**: Select a character that is to be replaced by a comma, before it is put into the event-queue. There is a limited set of characters that can be replaced, to avoid ending up with malformed events.
Available options:
.. image:: P037_ReplaceByCommaOptions.png
The available set of replacement characters is ``! @ $ % ^ & * ; : . | / \`` (exclamation, at, dollar, percent, caret, ampersand, semicolon, colon, period, pipe, slash and backslash). When set to None, no replacement will be done.
This can be used to 'transform' the content of a JSON message so the used separator is a comma, for easier use in rules.
Topic Subscriptions
Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

+70 -10
View File
@@ -1,4 +1,4 @@
.. include:: ../Plugin/_plugin_substitutions_p04x.repl
.. include:: ../Plugin/_plugin_substitutions_p04x.repl
.. _P043_page:
|P043_typename|
@@ -21,20 +21,77 @@ Maintainer: |P043_maintainer|
Used libraries: |P043_usedlibraries|
Supported hardware
------------------
|P043_usedby|
.. Commands available
.. ^^^^^^^^^^^^^^^^^^
Description
-----------
.. .. include:: P043_commands.repl
Every minute the set schedule will be checked for a match, and if a value for a scheduled time is set, the GPIO will be set to that state (On/Off) when configured, or when no GPIO is configured and the value is not 0 or empty, an event is generated with the field number that caused the trigger, and another event with the set value if the Number Output Values is set to Dual or higher.
.. Events
.. ~~~~~~
Configuration
-------------
.. .. include:: P043_events.repl
.. image:: P043_DeviceConfiguration.png
* **Name**: Required by ESPEasy, must be unique among the list of available devices/tasks.
* **Enabled**: The device can be disabled or enabled. When not enabled the device should not use any resources.
Sensor
^^^^^^
* **GPIO -> Clock event** Select a GPIO that will get the stated as configured for the Day,Time. When a GPIO is configured, the allowed valies for a scheduled time will be empty, Off and On only.
Device Settings
^^^^^^^^^^^^^^^
* **Nr. of Day,Time fields**: Select a number between 1 and 16 for the number of Day,Time fields to be available. Will be applied after the page is submitted. (Default: 8)
* **Value input On/Off only**: When checked, the selection for Value will be for On/Off (or empty) only, to avoid misconfiguration for less experienced users, and the Output variable response the same as if a GPIO was selected. The default is unchecked.
.. image:: P043_GPIO_Enabled.png
* **Day,Time X**: Select the Day and Time that should be checked. For Limited builds the day and time have to be entered manually, for other builds, the Day can be selected from a combobox, and the time can be selected from a predefined list and set to a desired time.
For Day, the available options are All, Sun, Mon, Tue, Wed, Thu, Fri, Sat, Wrk (workday), Wkd (weekend).
.. image:: P043_DayOptions.png
For time, besides the 24h HH:MM notation, there can also be chosen to use ``%sunrise%`` or ``%sunset%``, optionally with an offset in hours, minutes or seconds like ``%sunrise-1h%`` or ``%sunset+30m%``.
.. image:: P043_TimeOptions.png
Output Configuration
^^^^^^^^^^^^^^^^^^^^
* **Number Output Values**: Select Single (default), Dual, Triple or Quad. The Triple and Quad options aren't actually used in this plugin.
Data Acquisition
^^^^^^^^^^^^^^^^
This group of settings, **Single event with all values** and **Send to Controller** settings are standard available configuration items. Send to Controller is only visible when one or more Controllers are configured.
Values
^^^^^^
The default names for the values are named ``Output``, and get a numeric suffix for the Dual, Triple and Quad configuration.
Commands available
^^^^^^^^^^^^^^^^^^
.. include:: P043_commands.repl
Events
~~~~~~
.. include:: P043_events.repl
Get Config Values
^^^^^^^^^^^^^^^^^
Get Config Values retrieves values or settings from the sensor or plugin, and can be used in Rules, Display plugins, Formula's etc. The square brackets **are** part of the variable. Replace ``<taskname>`` by the **Name** of the task.
.. include:: P043_config_values.repl
Change log
----------
@@ -42,6 +99,9 @@ Change log
.. versionchanged:: 2.0
...
|added| 2023-12-16:
Selectors for Day and Time, ``%sunrise%`` and ``%sunset%`` support, ``config`` command and get config values.
|added|
Major overhaul for 2.0 release.
Binary file not shown.

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

+33
View File
@@ -0,0 +1,33 @@
.. csv-table::
:header: "Command Syntax", "Extra information"
:widths: 30, 20
"
| ``config,task,<taskName>,SetTime,<timeIndex>,<timeString>[,<value>]``
Change the configuration of the plugin for the timeIndex provided:
``config,task``: The Config command to change a setting for a task. Not case-sensitive.
``<taskName>``: The name of the task to be changed.
``SetTime``: Literal command-text recognized by the plugin to set the time and optional value. Not case-sensitive.
``<timeIndex>``: The Day,Time fields *number* as shown in the UI. Has to be within the allowed range 1..Nr. of Day,Time field setting.
``<timeString>``: A time string as can be entered in the UI, a day (All,Sun, Mon,Tue,Wed,Thu,Fri,Sat,Wrk (workday),Wkd (weekend)) and a time (HH:MM or %Sunrise%/%Sunset%). When configuring for sunrise of sunset, an offset in hours, minutes or seconds can be provided by using ``%sunrise-1h%`` or ``%sunset+30m%`` etc. To avoid the sunrise or sunset time of today to be inserted, instead of ``%`` a ``$`` must be used! If an invalid ``<timeString>`` is provided, ``All,00:00`` will be stored!
``<value>``: The value to be set. If a GPIO is configured or the setting 'Value input On/Off only' is enabled, a 0 will configure Off and 1 will configure On. When not using a GPIO or the 'Value input On/Off only' setting is unchecked, the value will be stored as provided. When having value 0 set, **no event will be generated** when this time is triggered!
","
This (generic) command allows to update the configuration.
.. warning:: Every time this command is used, the configuration is saved to flash storage. When changing this often, the flash memory may wear out quickly!
Example command to use, when using ``%Sunrise%``/``%Sunset%``:
- ``config,task,Clock,settime,1,Wrk,$sunrise-1h$,1``
Will be stored like ``Wrk,%sunrise-1h%`` in Day,Time field 1, and Value set to 1, or ``On`` when having a GPIO configured or **Value input On/Off only** enabled.
"
@@ -0,0 +1,23 @@
.. csv-table::
:header: "Config value", "Information"
:widths: 20, 30
"
``[<taskname>#GetTimeX]``
","
Returns the configured Day,Time string for line X (Range: 1..Nr. of Day,Time fields), as shown in the UI.
Examples:
- ``All,06:00``
- ``Wrk,%sunset-1h%``
"
"
``[<taskname>#GetValueX]``
","
Returns the configured value for line X (Range: 1..Nr. of Day,Time fields), with a twist:
If a GPIO is configured, or the setting 'Value input On/Off only' is checked, a 0 is returned for Off and 1 for On (the stored value is actualy 1 higher)
When no GPIO is configured and the setting 'Value input On/Off only' is unchecked, the shown value is returned.
"
+14
View File
@@ -0,0 +1,14 @@
.. csv-table::
:header: "Event", "Example"
:widths: 30, 20
"
``clock#Output`` The value provided with this event is the field (1..Nr. of Day,Time fields) that was triggered.
``clock#Output2`` When the 'Number Output Values' is set to Dual, Triple or Quad, and a GPIO is configured or 'Value input On/Off only' is checked the On (1) or Off (0) value is included as an event argument (``%eventvalue1%``).
If no GPIO is configured and 'Value input On/Off only' is unchecked, the configured value is provided as ``%eventvalue1%``.
Events are only generated if the value is not set to 0 or empty.
","
"
+32 -7
View File
@@ -26,23 +26,46 @@ Supported hardware
|P044_usedby|
.. note:: This plugin is now merged (back) into :ref:`P020_page` where it initially was forked off from, with using some predefined settings.
Configuration
-------------
.. image:: P044_DeviceConfiguration.png
* **Name** In the Name field a unique name should be entered.
* **Enabled** When unchecked the plugin is not enabled.
Sensor
^^^^^^
See: :ref:`SerialHelper_page`
Device Settings
^^^^^^^^^^^^^^^
**TODO**: Complete this documentation...
* **TCP Port**: The port for an external network client to read the data from, range 1..65535. The used port number must be unique within the device.
.. Commands available
.. ^^^^^^^^^^^^^^^^^^
* **Baud Rate / Serial config**: See *Serial helper configuration*, above.
.. .. include:: P044_commands.repl
* **P1 #data event with message**: When enabled, the *P1 WiFi Gateway* Event Processing option will include the received message. **WARNING** This may easily cause memory overflow exceptions, especially when running on ESP8266 or other low-memory situations!
.. Events
.. ~~~~~~
* **Process events without client**: By default, if no network client is connected, no serial data will be received and processed either. Enabling this option enables receiving data and generating events without a TCP client connected.
* **RX Receive timeout (mSec)**: If parts of serial data packets are somewhat delayed, but should still be handled as a single message, then the delay to wait for the next part can be configured here. 0 disables the delay.
* **Reset target after init**: Select a GPIO pin that should be pulled low once during initialization of the plugin, used to synchronize the external serial data source with the plugin.
Led
^^^
* **Led enabled**: To enable a *data is being processed* activity led.
* **Led pin**: The GPIO pin the Led is connected to.
* **Led inverted**: Iverts the on/off state for the Led.
.. .. include:: P044_events.repl
Change log
----------
@@ -50,6 +73,8 @@ Change log
.. versionchanged:: 2.0
...
|changed| 2022-10-08: Merge of P020 and P044 to reduce code size and combine features, as P044 was initially started as a spin-off from P020, but not evolved with the P020 features.
|added|
Major overhaul for 2.0 release.
Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

+8
View File
@@ -24,3 +24,11 @@
","
Will reset the calibration values to the default values, causing auto-calibration.
"
"
``cseclearpulses``
","
(Added: 2024-01-16)
Will reset the CF-pulse counter.
N.B. this also clears the kWh counter as it is derived from the CF-pulse counter.
"
+10 -1
View File
@@ -48,7 +48,7 @@ This section only shows settings when the plugin is configured and enabled.
.. image:: P087_FilteringConfiguration.png
* **RegEx**: Specify a regular expression to apply to the received data before it is accepted as acceptable data.
* **RegEx**: Specify a regular expression to apply to the received data before it is accepted as acceptable data. This regular expression is based on the Lua script language, and is documented here: http://www.lua.org/manual/5.2/manual.html#6.4.1
* **Nr Chars use in RegEx**: Limit the length of the data to be checked using the **RegEx** regular expression filter. When set to 0 all data is checked.
@@ -109,6 +109,13 @@ Commands available
.. include:: P087_commands.repl
Get Config Values
^^^^^^^^^^^^^^^^^
Get Config Values retrieves values or settings from the sensor or plugin, and can be used in Rules, Display plugins, Formula's etc. The square brackets **are** part of the variable. Replace ``<taskname>`` by the **Name** of the task.
.. include:: P087_config_values.repl
Change log
----------
@@ -116,6 +123,8 @@ Change log
.. versionchanged:: 2.0
...
|added| 2024-02-25 Add support for ``serialproxy_test`` command and retrieving the separate groups from parsed regex.
|added| 2023-03-22 Add support for writing any binary data out via the serial port.
|added| 2020-02-22
+9
View File
@@ -26,3 +26,12 @@
``'0xXXxx XX,xx-XX:xx'``: A sequence of hexadecimal values (range: 0x00..0xFF), that *can* be separated by a space, comma, dash, colon, semicolon or period, or are just entered adjecent. Only the first 2 characters should be ``0x`` or ``0X``, the rest is interpreted as hex bytes, and appended to the data to send. Quotes are only required if space or comma separators are used.
Using this command, either from rules, via http or mqtt, the text that is provided as content is completely sent to the serial port. No extra data is added, other than any (system) variables that are included, being replaced.
"
"
``serialproxy_test,'<content to process>[,...]'``
``<content to process>``: Some text to be processed as if it was received via the serial port.
","
This command is intended for testing the regular expression and filtering.
The sentence provided with this command is handed over for processing as if it was received via the serial port, so it will be processed and filtered, and an event will be generated if it's matched.
"
@@ -0,0 +1,70 @@
.. csv-table::
:header: "Config value", "Information"
:widths: 20, 30
"
``[<taskname>#group,<groupnr>]``
","
Get the contents from groupnr after processing received data.
NB: The regular expression parsen uses 0-based group numbers (where most other regex parsers use 1-based group numbers!)
"
"
``[<taskname>#next,<groupvalue>]``
","
Get the value of the next group that holds ``<groupvalue>``.
Example:
Regular expression: ``((node)=(%d+);?)((weight)=(%d+);?)((temp%d?)=(%-?%d+);?)((rssi)=(%-?%d+);?)``
Received data: ``node=1;weight=40;temp1=20;rssi=-30``
This will result in these groups:
.. list-table::
:widths: 20, 50, 200
:header-rows: 1
* - Group
- Data
-
* - 0
- node=1
-
* - 1
- node
-
* - 2
- 1
-
* - 3
- weight=40
-
* - 4
- weight
-
* - 5
- 40
-
* - 6
- temp1=20
-
* - 7
- temp1
-
* - 8
- 20
-
* - 9
- rssi=-30
-
* - 10
- rssi
-
* - 11
- -30
-
Requesting ``[SerialProxy#next,weight]`` will return the value ``40``.
"
+1 -1
View File
@@ -31,7 +31,7 @@
"
| ``tftcmd,clear``
","
| Clear the display, using the default background color.
| Clear the display, using the **default** background color. For clearing with a custom background color see the ``<trigger>,clear[,<color>]`` command.
"
"
| ``tftcmd,backlight,<percentage>``
+6 -1
View File
@@ -28,7 +28,7 @@ The ST7735, ST7789 and ST7796 chip families drive color TFT displays in various
This plugin supports these display models:
* **ST7735** with resolutions 128 x 128, 128 x 160 and 80 x 160 pixels
* **ST7735** with resolutions 128 x 128, 128 x 160, 80 x 160 and 135 x 240 pixels
* **ST7789** with resolutions 240 x 320, 240 x 240, 240 x 280 and 135 x 240 pixels
* **ST7796** with resolution of 320 x 480 pixels.
@@ -140,6 +140,7 @@ Available options:
* *ST7735 128 x 160px* Allows 16 lines of text in the smallest font scaling setting.
* *ST7735 80 x 160px* Allows 16 lines of text in the smallest font scaling setting.
* *ST7735 80 x 160px (Color inverted)* Special color inverted configuration as used in f.e. M5Stack StickC.
* *ST7735 135 x 240px* Added to support a revision of the TTGO T-Display 16MB Flash module, that won't work with the ST7789 driver, the seller is claiming to use, but does work with this specially crafted ST7735 driver.
* *ST7789 240 x 320px* Allows 32 lines of text in the smallest font scaling setting. Predefined text only goes to 24, extra lines can be displayed from rules or external commands.
* *ST7789 240 x 240px* Allows 24 lines of text in the smallest font scaling setting.
* *ST7789 240 x 280px* Allows 28 lines of text in the smallest font scaling setting. Predefined text only goes to 24, extra lines can be displayed from rules or external commands.
@@ -260,6 +261,10 @@ Change log
.. versionadded:: 2.0
...
|added| 2024-03-26 Add support for ST7735, 135x240 resolution
|added| 2022-07-06 Add support for ST7735 (Color inverted), for M5StickC support
|added| 2021-11-06 Add support for ST7796 displays
|added| 2021-08 Moved from an external forum to ESPEasy.
Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 44 KiB

+1 -1
View File
@@ -28,7 +28,7 @@
"
| ``st77xxcmd,clear``
","
| Clear the display, using the default background color.
| Clear the display, using the **default** background color. For clearing with a custom background color see the ``<trigger>,clear[,<color>]`` command.
"
"
| ``st77xxcmd,backlight,<percentage>``
+117
View File
@@ -0,0 +1,117 @@
.. include:: ../Plugin/_plugin_substitutions_p16x.repl
.. _P164_page:
|P164_typename|
==================================================
|P164_shortinfo|
Plugin details
--------------
Type: |P164_type|
Name: |P164_name|
Status: |P164_status|
GitHub: |P164_github|_
Maintainer: |P164_maintainer|
Used libraries: |P164_usedlibraries|
Description
-----------
Sciosense ENS160 and its successor ENS161 are multi-gas sensors based on metal oxide (MOX) technology. They can detect multiple VOCs including ethanol, toluene, hydrogen and oxidizing gases.
The sensors are connected to the I2C bus and provide preprocessed data as TVOC and eCO2 values. See https://www.sciosense.com/ens16x-digital-metal-oxide-multi-gas-sensor-family/ for details about the device.
Hardware
--------
Various boards with the ENS160 are available through electronics market places like Aliexpress. A popular board contains both ENS160 and AHT21 on a single PCB. The AHT21 can be used for temperature compensation as provided by this plugin.
.. image:: P164_board.jpg
Configuration
-------------
.. image:: P164_DeviceConfiguration.png
* **Name**: Required by ESPEasy, must be unique among the list of available devices/tasks.
* **Enabled**: The device can be disabled or enabled. When not enabled the device should not use any resources.
I2C options
^^^^^^^^^^^
* **I2C Address**: The sensor supports two addresses. The actual address depends on the voltage on the ADDR pin of the device.
.. csv-table::
:header: "Address", "Remark"
:widths: 10, 50
"0x52", "Connect ADDR GND"
"0x53", "Connect ADDR to VDD (default on most boards)"
The available I2C settings here depend on the build used. At least the **Force Slow I2C speed** option is available, but selections for the I2C Multiplexer can also be shown. For details see the :ref:`Hardware_page`
The chip supports both SPI and I2C. The plugin only support I2C using the following pins:
* 1 SDA: Data [MOSI/SDA]
* 2 SCL: Serial Clock [SCLK/SCL]
* 3 ADDR: Address [MISO/ADDR]
* 6 INTn: Interrupt [INTn]
* 7 CSn: SPI interface select, low-> SPI, high->I2C [CSn]
For this plugin the CSn must be wired to VDD to enable the I2C protocol.
On boards sold online, SDO and SDI are often already pulled-up, setting the default I2C address to 0x53.
Device Settings
^^^^^^^^^^^^^^^
* **Detected Sensor Type**: Shows either ``ENS160`` or ``ENS161`` or a number if no sensor or an unknown sensor ID is detected. It will also show the firmware version read from the device if the data is available.
* **Temperature Task**: Task (plugin) providing the temperature compensation
* **Temperature Value**: Value for the temperature compensation
* **Humidity Task**: Task (plugin) providing the humidity compensation
* **Humidity Value**: Value for the humidity compensation
The ENS16x provides temperature and humidity compensation. The plugin must provide the actual temperature and humidity to the device to enable this compensation. For this the plugin needs to read these values from other tasks.
Using the **Temperature Task** and **Temperature Value** the task and value for the Temperature compensation can be selected. Compensation can be switched off by selecting **Not Set**.
Using the **Humidity Task** and **Humidity Value** the task and value for the Humidity compensation can be selected. Compensation can be switched off by selecting **Not Set**.
Note that if either one of the tasks is set to **Not Set** compensation is switched off and a default value is used.
The ENS160 is sold on popular websites on a board including the AHT21 temperature and humidity sensor. This sensor can be used for the compensation algorithm of the ENS160.
Data Acquisition
^^^^^^^^^^^^^^^^
This group of settings, **Single event with all values** and **Send to Controller** settings are standard available configuration items. Send to Controller is only visible when one or more Controllers are configured.
* **Interval** By default, Interval will be set to 60 sec. The data will be collected and optionally sent to any configured controllers using this interval. If the Interval is set lower or equal than the required 10 * Heater time, the plugin will not start!
Values
^^^^^^
The plugin provides the ``TVOC`` and ``eCO2`` values. A formula can be set to recalculate. The number of decimals can be set as desired, and defaults to 2.
In selected builds, per Value is a **Stats** checkbox available, that when checked, gathers the data and presents recent data in a graph, as described here: :ref:`Task Value Statistics: <Task Value Statistics>`
Currently the extra features offered by the sensor are not configurable in this plugin.
These may be added later.
Change log
----------
.. versionchanged:: 2.0
...
|added|
2023-12-27 Initial release version.
Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 93 KiB

+117
View File
@@ -0,0 +1,117 @@
.. include:: ../Plugin/_plugin_substitutions_p16x.repl
.. _P166_page:
|P166_typename|
==================================================
|P166_shortinfo|
Plugin details
--------------
Type: |P166_type|
Name: |P166_name|
Status: |P166_status|
GitHub: |P166_github|_
Maintainer: |P166_maintainer|
Used libraries: |P166_usedlibraries|
Description
-----------
The GP8403 DAC (Digital Analog Converter) has 2 output channels, can be configured for an output voltage range of 0-10V or 0-5V, has a 12 bit resolution (4096 steps) and works from a single 3.3V or 5V power source. When powering the module with 5V, a level converter should be used on the I2C lines, to protect the ESP and other I2C devices on the same bus. The outputs can supply up to 20 mA.
.. image:: P166_DFRobot_GP8403_board.png
(Image (c) DFRobot)
Configuration
-------------
.. image:: P166_DeviceConfiguration.png
* **Name**: Required by ESPEasy, must be unique among the list of available devices/tasks.
* **Enabled**: The device can be disabled or enabled. When not enabled the device should not use any resources.
I2C options
^^^^^^^^^^^
* **I2C Address**: The device supports 8 addresses, and by default comes configured for address ``0x5F``, as reflected in the available options:
.. image:: P166_I2CAddressOptions.png
Available addresses are in the range ``0x58`` to ``0x5F``.
The available I2C settings here depend on the build used. At least the **Force Slow I2C speed** option is available, but selections for the I2C Multiplexer can also be shown. For details see the :ref:`Hardware_page`
Device Settings
^^^^^^^^^^^^^^^
* **Output range**: Select the desired output voltage range:
.. image:: P166_OutputRangeOptions.png
Available options:
* *0-5V*: The maximum available voltage is 5V. When not using a voltage > 5V, this would be the apropriate settings, both for accuracy, and to avoid the risk of applying up to 10V to an input that might not be able to handle that.
* *0-10V*: (Preconfigured default) The maximum available voltage is 10V.
The DAC does not support a different output range setting per output.
The DAC can supply up to 20 mA per output, so the input or device that is connected to this output should be configured to not overload the output.
* **Restore output on warm boot**: (Enabled by default) When the outputs are set to a specific value and the ESP unit is restarted, f.e. when updating the ESPEasy firmware, the output values will be restored. On cold boot, or after saving the settings, the configured Initial value per output will be set.
* **Initial value output 0**:
* **Initial value output 1**: The output value at startup, or after power-loss, can be configured here per output. The allowed range is 0-10V. Although the resolution is in milli Volt, the resolution of the DAC is limited to 12 bit (4096 steps). If a voltage is set here that exceeds the Output range (f.e. when set to 0-5V, and 7V is configured), the setting will **not** be applied!
Preset values
^^^^^^^^^^^^^
* **Preset value 1..25**: This table allows to configure up to 25 named presets, where the name can be up to 16 characters long, and the voltage in range 0-10V. When all available inputs are filled, Submitting the page will add more inputs until the limit of 25 is reached.
When leaving the *Name* field empty, that preset will not be saved, thus effectively deleted from the list.
Data Acquisition
^^^^^^^^^^^^^^^^
This group of settings, **Single event with all values** and **Send to Controller** settings are standard available configuration items. Send to Controller is only visible when one or more Controllers are configured.
* **Interval** By default, Interval will be set to 0 sec. The data will be collected and optionally sent to any configured controllers using this interval. When an output value is changed, the data will be sent to any configured controller, and an event will also be generated when the Rules are enabled (Tools/Advanced).
Values
^^^^^^
The plugin provides the ``Output0`` and ``Output1`` values, analogue to the availabe output connections. A formula can be set to recalculate the displayed, and sent, value. The number of decimals can be set as desired, and defaults to 2.
In selected builds, per Value is a **Stats** checkbox available, that when checked, gathers the data and presents recent data in a graph, as described here: :ref:`Task Value Statistics: <Task Value Statistics>`
Commands available
^^^^^^^^^^^^^^^^^^
.. include:: P166_commands.repl
Get Config Values
^^^^^^^^^^^^^^^^^
Get Config Values retrieves values or settings from the plugin, and can be used in Rules, Display plugins, Formula's etc. The square brackets **are** part of the variable. Replace ``<taskname>`` by the **Name** of the task.
.. include:: P166_config_values.repl
Change log
----------
.. versionchanged:: 2.0
...
|added|
2024-01-30 Initial release version.
Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

+40
View File
@@ -0,0 +1,40 @@
.. csv-table::
:header: "Command Syntax", "Extra information"
:widths: 20, 30
"
``<ch>`` = Output channel, 0, 1 or 2 (both channels)
","
When successfully changing an output value, the data will be sent to any configured Controller, and an event will also be generated when the Rules are enabled (Tools/Advanced).
"
"
``gp8403,volt,<ch>,<value>``
","
Set the output value for the channel(s) in volt. The range is determined by the configured Output range setting.
"
"
``gp8403,mvolt,<ch>,<value>``
","
Set the output value for the channel(s) in milli volt. The range is determined by the configured Output range setting.
"
"
``gp8403,range,<5|10>``
","
Set the output range to either 5 (0-5V) or 10 (0-10V). Is also set to the Device configuration, but not saved.
The range is applied to both channels, no separate configuration per channel supported by the chip.
"
"
``gp8403,preset,<ch>,<name>``
","
Set the output value for the channel(s) to the value configured for the preset stored with ``<name>``.
The value is range-checked before it is applied, so when configured for Output range 0-5V, a preset of 7V will be ignored.
When using duplicate names, the first matched preset will be used.
"
"
``gp8403,init,<ch>``
","
Set the output value for the channel(s) to the configured initial value(s). When both channels are addressed (2), each will get its own configured value.
"
@@ -0,0 +1,24 @@
.. csv-table::
:header: "Config value", "Information"
:widths: 20, 30
"
``[<taskname>#preset<X>]``
","
Returns the numbered preset value ``<X>``, range ``preset1``..``preset25``, as shown in the configuration. Only configured values, having a name, can be retrieved.
"
"
``[<taskname>#initial0]``
","
Returns the configured initial voltage for output 0.
"
"
``[<taskname>#initial1]``
","
Returns the configured initial voltage for output 1.
"
"
``[<taskname>#range]``
","
Returns the configured Output range value 5 (0-5V) or 10 (0-10V)
"
+2
View File
@@ -386,6 +386,8 @@ There are different released versions of ESP Easy:
":ref:`P153_page`","|P153_status|","P153"
":ref:`P154_page`","|P154_status|","P154"
":ref:`P159_page`","|P159_status|","P159"
":ref:`P164_page`","|P164_status|","P164"
":ref:`P166_page`","|P166_status|","P166"
Internal GPIO handling
+2 -2
View File
@@ -10,7 +10,7 @@
.. |Plugin_Energy_Heat| replace:: :ref:`P088_page`, :ref:`P093_page`
.. |Plugin_Environment| replace:: :ref:`P004_page`, :ref:`P005_page`, :ref:`P006_page`, :ref:`P014_page`, :ref:`P024_page`, :ref:`P028_page`, :ref:`P030_page`, :ref:`P031_page`, :ref:`P032_page`, :ref:`P034_page`, :ref:`P039_page`, :ref:`P047_page`, :ref:`P051_page`, :ref:`P068_page`, :ref:`P069_page`, :ref:`P072_page`, :ref:`P103_page`, :ref:`P105_page`, :ref:`P106_page`, :ref:`P122_page`, :ref:`P150_page`, :ref:`P151_page`, :ref:`P153_page`, :ref:`P154_page`
.. |Plugin_Extra_IO| replace:: :ref:`P011_page`, :ref:`P022_page`
.. |Plugin_Gases| replace:: :ref:`P049_page`, :ref:`P052_page`, :ref:`P083_page`, :ref:`P090_page`, :ref:`P117_page`, :ref:`P127_page`, :ref:`P135_page`, :ref:`P145_page`, :ref:`P147_page`
.. |Plugin_Gases| replace:: :ref:`P049_page`, :ref:`P052_page`, :ref:`P083_page`, :ref:`P090_page`, :ref:`P117_page`, :ref:`P127_page`, :ref:`P135_page`, :ref:`P145_page`, :ref:`P147_page`, :ref:`P164_page`
.. |Plugin_Generic| replace:: :ref:`P003_page`, :ref:`P026_page`, :ref:`P033_page`, :ref:`P037_page`, :ref:`P081_page`, :ref:`P100_page`, :ref:`P146_page`
.. |Plugin_Gesture| replace:: :ref:`P064_page`
.. |Plugin_Gyro| replace:: :ref:`P045_page`, :ref:`P119_page`
@@ -22,7 +22,7 @@
.. |Plugin_Light_Lux| replace:: :ref:`P010_page`, :ref:`P015_page`, :ref:`P074_page`
.. |Plugin_Motor| replace:: :ref:`P048_page`, :ref:`P079_page`, :ref:`P098_page`
.. |Plugin_Notify| replace:: :ref:`P055_page`, :ref:`P065_page`
.. |Plugin_Output| replace:: :ref:`P029_page`, :ref:`P038_page`, :ref:`P041_page`, :ref:`P042_page`, :ref:`P043_page`, :ref:`P070_page`, :ref:`P124_page`, :ref:`P126_page`, :ref:`P128_page`, :ref:`P152_page`
.. |Plugin_Output| replace:: :ref:`P029_page`, :ref:`P038_page`, :ref:`P041_page`, :ref:`P042_page`, :ref:`P043_page`, :ref:`P070_page`, :ref:`P124_page`, :ref:`P126_page`, :ref:`P128_page`, :ref:`P152_page`, :ref:`P166_page`
.. |Plugin_Position| replace:: :ref:`P082_page`, :ref:`P121_page`
.. |Plugin_PowerMgt| replace:: :ref:`P137_page`, :ref:`P138_page`
.. |Plugin_Presence| replace:: :ref:`P159_page`
@@ -14,3 +14,4 @@
.. include:: ../Plugin/_plugin_substitutions_p13x.repl
.. include:: ../Plugin/_plugin_substitutions_p14x.repl
.. include:: ../Plugin/_plugin_substitutions_p15x.repl
.. include:: ../Plugin/_plugin_substitutions_p16x.repl
@@ -0,0 +1,25 @@
.. |P164_name| replace:: :cyan:`ENS16x TVOC/eCO2`
.. |P164_type| replace:: :cyan:`Gases`
.. |P164_typename| replace:: :cyan:`Gases - ENS16x TVOC/eCO2`
.. |P164_porttype| replace:: `.`
.. |P164_status| replace:: :yellow:`COLLECTION G` :yellow:`CLIMATE`
.. |P164_github| replace:: P164_gases_ens160.ino
.. _P164_github: https://github.com/letscontrolit/ESPEasy/blob/mega/src/_P164_gases_ens160.ino
.. |P164_usedby| replace:: `.`
.. |P164_shortinfo| replace:: `ENS16x TVOC/eCO2 sensors`
.. |P164_maintainer| replace:: `flashmark`
.. |P164_compileinfo| replace:: `.`
.. |P164_usedlibraries| replace:: `I2C`
.. |P166_name| replace:: :cyan:`GP8403 Dual channel DAC 0-10V`
.. |P166_type| replace:: :cyan:`Output`
.. |P166_typename| replace:: :cyan:`Output - GP8403 Dual channel DAC 0-10V`
.. |P166_porttype| replace:: `.`
.. |P166_status| replace:: :yellow:`COLLECTION G`
.. |P166_github| replace:: P166_GP8403.ino
.. _P166_github: https://github.com/letscontrolit/ESPEasy/blob/mega/src/_P166_GP8403.ino
.. |P166_usedby| replace:: `.`
.. |P166_shortinfo| replace:: `GP8403 Dual channel DAC 0-10V`
.. |P166_maintainer| replace:: `tonhuisman`
.. |P166_compileinfo| replace:: `.`
.. |P166_usedlibraries| replace:: `modified version of DFRobot_GP8403`
+25 -9
View File
@@ -249,10 +249,10 @@ P019 :ref:`P019_page`
.. include:: ../Plugin/P019_commands.repl
.. P020 :ref:`P020_page`
.. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
P020 :ref:`P020_page`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. .. include:: ../Plugin/P020_commands.repl
.. include:: ../Plugin/P020_commands.repl
P021 :ref:`P021_page`
@@ -387,10 +387,10 @@ P038 :ref:`P038_page`
.. .. include:: ../Plugin/P042_commands.repl
.. P043 :ref:`P043_page`
.. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
P043 :ref:`P043_page`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. .. include:: ../Plugin/P043_commands.repl
.. include:: ../Plugin/P043_commands.repl
.. P044 :ref:`P044_page`
@@ -597,10 +597,10 @@ P077 :ref:`P077_page`
.. include:: ../Plugin/P077_commands.repl
.. P078 :ref:`P078_page`
.. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
P078 :ref:`P078_page`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. .. include:: ../Plugin/P078_commands.repl
.. include:: ../Plugin/P078_commands.repl
P079 :ref:`P079_page`
@@ -637,6 +637,12 @@ P088 :ref:`P088_page`
.. include:: ../Plugin/P088_commands.repl
P089 :ref:`P089_page`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. include:: ../Plugin/P089_commands.repl
P091 :ref:`P091_page`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -784,6 +790,16 @@ P153 :ref:`P153_page`
.. include:: ../Plugin/P153_commands.repl
P159 :ref:`P159_page`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. include:: ../Plugin/P159_commands.repl
P166 :ref:`P166_page`
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. include:: ../Plugin/P166_commands.repl
.. .. *** Insert regular plugin commands above this remark! ***
.. _AdafruitGFX Helper commands:
+7 -6
View File
@@ -236,10 +236,10 @@ P036 :ref:`P036_page`
.. include:: ../Plugin/P036_events.repl
.. P037 :ref:`P037_page`
.. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
P037 :ref:`P037_page`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. .. include:: ../Plugin/P037_events.repl
.. include:: ../Plugin/P037_events.repl
.. P038 :ref:`P038_page`
@@ -272,10 +272,10 @@ P036 :ref:`P036_page`
.. .. include:: ../Plugin/P042_events.repl
.. P043 :ref:`P043_page`
.. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
P043 :ref:`P043_page`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. .. include:: ../Plugin/P043_events.repl
.. include:: ../Plugin/P043_events.repl
.. P044 :ref:`P044_page`
@@ -544,6 +544,7 @@ P138 :ref:`P138_page`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
.. include:: ../Plugin/P138_events.repl
P143 :ref:`P143_page`
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+1 -1
View File
@@ -325,7 +325,7 @@ Typical uses in ESPEasy where an interrupt of a GPIO pin is used are:
Pins used for RMII Ethernet PHY
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. include:: ../Reference/Ethernet_PHY_ESP32.rst
.. include:: ../Reference/RMII_Ethernet_PHY_ESP32.rst
Best pins to use on ESP32-C3
@@ -0,0 +1,93 @@
There is a number of ESP32 boards available with Ethernet connected via RMII.
However it is not always clear which configuration should be used.
.. warning::
**Important notice**: It is possible to actually damage the Ethernet chip when a wrong configuration is used.
.. list-table:: RMII PHY Boards
:widths: 30 15 10 10 10 20 30
:header-rows: 1
* - Board
- Ethernet Chip
- Addr
- MDC
- MDIO
- Power/RST
- Clock
* - Olimex ESP32 PoE
- LAN8720
- 0
- 23
- 18
- 12
- 50MHz Inv Output GPIO17
* - Olimex ESP32 EVB
- LAN8720
- 0
- 23
- 18
- (no power pin)
- External clock
* - Olimex ESP32 Gateway
- LAN8720
- 0
- 23
- 18
- 5
- 50MHz Inv Output GPIO17
* - wESP32
- LAN8720
- 0
- 16
- 17
- (no power pin)
- External clock
* - WT32 ETH01
- LAN8720
- 1
- 23
- 18
- ?
- External clock
* - TTGO T-Internet-POE ESP32
- LAN8720
- 0
- 23
- 18
- 5 (RST)
- 50MHz Inv Output GPIO17
* - TTGO T-ETH-POE-PRO
- LAN8720
- 0
- 23
- 18
- 5 (RST)
- 50MHz Output GPIO0
* - TTGO T-INTER_COM
- LAN8720
- 0
- 23
- 18
- 4 (RST)
- 50MHz Output GPIO0
* - TTGO T-EH-Lite-ESP32
- RTL8201
- 0
- 23
- 18
- 12
- External clock
See:
* `ESP32 datasheet <https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_en.pdf>`_
* `TTGO/LilyGO Ethernet boards <https://github.com/Xinyuan-LilyGO/LilyGO-T-ETH-Series/blob/dda7a2ad4ab33d550c8dbaff5db1e61a0eda5aad/examples/ETHOTA/utilities.h#L12>`_
* `Olimex ESP32-PoE <https://www.olimex.com/Products/IoT/ESP32/ESP32-POE/open-source-hardware>`_
* `Olimex ESP32-POE-ISO <https://www.olimex.com/Products/IoT/ESP32/ESP32-POE-ISO/open-source-hardware>`_
* `Olimex ESP32-EVB <https://www.olimex.com/Products/IoT/ESP32/ESP32-EVB/open-source-hardware>`_
* `Olimex ESP32-GATEWAY <https://www.olimex.com/Products/IoT/ESP32/ESP32-GATEWAY/open-source-hardware>`_
@@ -10,10 +10,18 @@ The following PHY connections are required for RMII PHY data connections:
- RMII Signal
- ESP32 EMAC Function
- Notes
* - 0
* - 0 / 16 / 17
- REF_CLK
- EMAC_TX_CLK
- See desciption about the clock
* - 18
- MDIO
- EMAC_MDIO
- In theory user configurable, but almost always used as MDIO pin
* - 23
- MDC
- EMAC_MDC
- In theory user configurable, but almost always used as MDC pin
* - 21
- TX_EN
- EMAC_TX_EN
@@ -0,0 +1,149 @@
There is a number of ESP32 boards available with Ethernet connected via SPI
However it is not always clear which configuration should be used.
.. note:: SPI Ethernet is only supported on builds based on ESP-IDF 5.1 or newer. Thus only on ESP32-builds with LittleFS support made after 2024/02.
N.B. As there is not yet support in ESPEasy for multiple SPI busses, it cannot be configured.
When later versions of ESPEasy will support multiple SPI busses, the SPI bus information may be needed for the configuration.
Therefore it is included in the table below.
.. list-table:: SPI Ethernet Boards
:widths: 30 15 15 10 10 10 10 10 10 10 15
:header-rows: 1
* - Board
- ESP chip
- Ethernet Chip
- Addr
- CS
- IRQ/INT
- RST
- SPI Clock
- SPI MISO
- SPI MOSI
- SPI bus
* - ETH01-EVO
- ESP32-C3
- DM9051
- 1
- 9
- 8
- 6
- 7
- 3
- 10
- SPI2_HOST
* - M5Stack PoECAM
- ESP32-classic
- W5500
-
- 4
-
-
- 23
- 38
- 13
- SPI2_HOST
* - M5Stack Atom PoE Kit (ATOM LITE)
- ESP32-classic
- W5500
-
- 19
-
-
- 22
- 23
- 33
- SPI2_HOST
* - M5Stack Atom PoE Kit (AtomS3)
- ESP32-S3
- W5500
-
- 6
-
-
- 5
- 7
- 8
- SPI2_HOST
* - M5Stack Base LAN (End-of-life)
- M5Core
- W5500
-
- 26
- 34
- 13
- 18
- 19
- 23
- SPI2_HOST
* - M5Stack LAN (PoE) BASE V12
- M5Core
- W5500
-
- 26
- 34
- 13
- 18
- 19
- 23
- SPI2_HOST
* - M5Stack LAN Module 13.2
- M5Core
- W5500
-
- 5/15
- 35/34
- 0/13
- 18
- 19
- 23
- SPI2_HOST
* - M5Stack LAN Module 13.2
- M5Core2
- W5500
-
- 33/2
- 35/34
- 0/19
- 18
- 38
- 23
- SPI2_HOST
* - M5Stack LAN Module 13.2
- M5CoreS3
- W5500
-
- 1/13
- 10/14
- 0/7
- 36
- 35
- 37
- SPI2_HOST
* - T-ETH-Lite-ESP32S3
- ESP32-S3
- W5500
- 1
- 9
- 13
- 14
- 10
- 11
- 12
- SPI2_HOST
See:
* `M5 Stack Base LAN <https://docs.m5stack.com/en/base/lan_base>`_
* `M5 Stack LAN Base V12 <https://docs.m5stack.com/en/base/lan_v12>`_
* `M5 Stack PoECAM <https://docs.m5stack.com/en/unit/poe_cam>`_
* `M5 Stack LAN PoE Base V12 <https://docs.m5stack.com/en/base/lan_poe_v12>`_
* `M5 Stack LAN Module V13.2 <https://docs.m5stack.com/en/module/LAN%20Module%2013.2>`_
* `M5 Stack ATOM PoE <https://docs.m5stack.com/en/atom/atom_poe>`_ `ATOM Lite <https://docs.m5stack.com/en/core/ATOM%20Lite>`_ `AtomS3 <https://docs.m5stack.com/en/core/AtomS3>`_
* `M5 Stack Base PoE <https://docs.m5stack.com/en/base/w5500PoE>`_
* `TTGO/LilyGO Ethernet boards <https://github.com/Xinyuan-LilyGO/LilyGO-T-ETH-Series/blob/dda7a2ad4ab33d550c8dbaff5db1e61a0eda5aad/examples/ETHOTA/utilities.h#L12>`_
+2 -2
View File
@@ -23,12 +23,12 @@ So these have the same hole on the side used on the TH10/16 to connect sensors.
This hole may seem like an invitation to connect some external sensor to these devices, but don't be tempted to do so.
HWL8012 & CSE7766
HLW8012 & CSE7766
=================
Some ESP8266 and ESP32 powered devices have an energy monitoring sensor on board.
Well known examples are the Sonoff POW, POW r2, POW R3xx(D) and Shelly PLUG S, but there are many others.
Almost all use either the HWL8012 or CSE7766 chip.
Almost all use either the HLW8012 or CSE7766 chip.
These chips are not isolated from mains power, which means all electronics connected
to them does also have a direct connection to mains power lines.
+4
View File
@@ -139,6 +139,10 @@ More uses of these system variables can be seen in the rules section and formula
- 5 (05)
- Current second (ss). ``%syssec%`` omits leading zeros.
- Yes
* - ``%syssec_d%``
- 83682
- Seconds since midnight.
-
* - ``%sysday%`` (``%sysday_0%``)
- 7 (07)
- Current day of month (DD). ``%sysday%`` omits leading zeros.
+169
View File
@@ -1969,6 +1969,65 @@ Added: 2022/07/23
* Host name can contain user credentials. For example: ``http://username:pass@hostname:portnr/foo.html``
* HTTP user credentials now can handle Basic Auth and Digest Auth.
Added: 2023/10/26
* ``SendToHTTP`` now generates an event with the response of a thingspeak request (https://de.mathworks.com/help/thingspeak/readlastfieldentry.html & // https://de.mathworks.com/help/thingspeak/readdata.html)
* There are two options:
1. Get the value of a single field:
- Example command:
``SendToHTTP,api.thingspeak.com,80,/channels/143789/fields/5/last.csv``
- Example of the resulting event:
``"EVENT: ThingspeakReply=143789,5,9.65"``
| channel number = ``%eventvalue1%``
| field number = ``%eventvalue2%``
| value = ``%eventvalue3%``
2. Get the values of all fields:
- Example command:
``SendToHTTP,api.thingspeak.com,80,/channels/143789/feeds/last.csv``
- Example of the resulting event:
``"EVENT: ThingspeakReply=143789,11.12,9.46,9.55,16.32,9.65,8.81,-1.23,14.76"``
| channel number = ``%eventvalue1%``
| values = ``%eventvalue2%`` to ``%eventvalue9%``
.. note::
``last.csv`` is mandatory!
.. warning:: When using the command for all fields, the reply can become extremely big and can lead to memory issues which results in instabilities of your device (especially when all eight fields are filled with very big numbers)
* Rules example:
.. code:: none
On System#Boot Do
SendToHTTP,api.thingspeak.com,80,/channels/143789/feeds/last.csv
Endon
On ThinkspeakReply Do
LogEntry,'The channel number is: %eventvalue1%'
LogEntry,'%eventvalue6%°C in Berlin'
LogEntry,'%eventvalue7%°C in Paris'
Endon
Added 2024/02/05
* Added the option to get a single value of a field or all values of a channel at a certain time (not only the last entry)
* Examples:
Single channel: ``SendToHTTP,api.thingspeak.com,80,channels/143789/fields/1.csv?end=2024-01-01%2023:59:00&results=1``
=> gets the value of field 1 at (or the last entry before) 23:59:00 of the channel 143789
All channels: ``SendToHTTP,api.thingspeak.com,80,channels/143789/feeds.csv?end=2024-01-01%2023:59:00&results=1``
=> gets the value of each field of the channel 143789 at (or the last entry before) 23:59:00
.. note::
``csv`` and ``results=1`` are mandatory!
Convert curl POST command to PostToHTTP
---------------------------------------
@@ -2404,3 +2463,113 @@ This rule can be used to calculate the moving average for, f.e., a temperature s
This assumes that a Controller has been configured, and the Dummy task is configured to send out its values via the controller.
Register daily working time
---------------------------
To register the daily time in seconds that a device is active, these rules have been developed (from the forum).
Required device tasks:
* Sensor (temperature in the example)
* Dummy device (named ``Dummy`` in this example, minimal 2 values, ``LoggingON`` and ``LoggingOFF``), Interval can be set to 0
.. code-block:: none
On System#Boot Do
TaskValueSet,Dummy,LoggingON,1 // Make sure timer is started and Heater ON message is sent
Endon
On DS1#Temperature Do // Check tmeperature
If %eventvalue1% < 40
GPIO,5,0
AsyncEvent,HeaterON=%eventvalue1%
Endif
If %eventvalue1% > 55
GPIO,5,1
AsyncEvent,HeaterOFF=%eventvalue1%
Endif
Endon
On HeaterON Do // Optional 1st argument is the temperature, defaults to the value of DS1#Temperature if not provided
If [Dummy#LoggingON] = 1
Let,1,%syssec_d% // Store current nr of seconds of today in var#1
PostToHTTP,192.168.1.20,8080,/receiver.php,'','%lcltime% !!! Temp = %eventvalue1|[DS1#Temperature]% -> Heater ON'
TaskValueSet,Dummy,LoggingON,0
TaskValueSet,Dummy,LoggingOFF,1
TaskRun,Dummy
Endif
Endon
On HeaterOFF Do // Optional 1st argument is the temperature, defaults to the value of DS1#Temperature if not provided
If [Dummy#LoggingOFF] = 1
Let,2,[int#2]+%syssec_d%-[int#1] // Add run time to var#2
PostToHTTP,192.168.1.20,8080,/receiver.php,'','%lcltime% !!! Temp = %eventvalue1|[DS1#Temperature]% -> Heater OFF'
TaskValueSet,Dummy,LoggingON,1
TaskValueSet,Dummy,LoggingOFF,0
TaskRun,Dummy
Endif
Endon
On Clock#Time=All,00:00 Do // At midnight
// Send value of [int#2] to wherever you need it
PostToHTTP,192.168.1.20,8080,/receiver.php,'','%lcltime% !!! Total RunningTime = [int#2] Seconds'
Let,1,0 // Reset start time
Let,2,0 // Reset total counter
Endon
Register power used for a heater
--------------------------------
As a variation on the running time, we can also measure the time and calculate the total power used, as long as the used device-power is known. Parts from the above example have been re-used.
This example uses a ``Generic - Dummy Device``, so the values can also be viewed on the Devices page. This has name: Power, output data type: Dual (or Triple or Quad, must be able to store decimals!), value names: Seconds (0 decimmals) and PowerUsed (4 decimals).
The time is counted while GPIO-14 (D5 on a Wemos or NodeMCU ESP8266) has a low state, and power is calculated once the power goes off. The not-On state will need a pull-up resistor to pull the level to 3V3!
After loading this code, either reboot the ESP, or run the command ``event,system#boot`` to set up the GPIO monitoring and wattage of the device.
.. code-block:: none
// Used variables: 1,3,4,5
On GPIO#14 Do // GPIO-14 = D5 on Wemos/NodeMCU ESP8266 boards
If %eventvalue1%=0 // On state
Let,1,%syssec_d% // Store current nr of seconds of today in var#1
Else // Off state
Event,CalcPower // Don't queue
Event,TransmitPower // Send out to receiver
Endif
Let,5,!%eventvalue1% // 0 = On, to invert on/off state change to: Let,5,%eventvalue1%
LogEntry,"Power [int#5#O#C], measured: [Power#Seconds] sec. [Power#PowerUsed#d.4] kWh"
Endon
On CalcPower Do
TaskValueSet,Power,Seconds,[Power#Seconds]+%syssec_d%-[int#1] // Add run time to Power#Seconds
Let,4,[Power#Seconds]*[var#3] // Wattseconds
If [var#4]>0
TaskValueSet,Power,PowerUsed,[var#4]/3600000 // Wattseconds to kWh
Endif
TaskRun,Power
Endon
On TransmitPower Do
// Send value of [Power#Seconds] and [Power#PowerUsed] to wherever you need it, adjust as needed
PostToHTTP,192.168.1.20,8080,/receiver.php,'','%lcltime% !!! Total RunningTime = [Power#Seconds] Seconds, PowerUsed = [Power#PowerUsed] kWh'
Endon
On Clock#Time=All,00:00 Do // At midnight
// Include power used until midnight
If [Plugin#GPIO#PinState#14]=0 // Still on?
Event,CalcPower // Don't queue
Endif
Let,1,0 // Reset start time
Event,TransmitPower // Send out remainder of the day
TaskValueSet,Power,Seconds,0 // Reset total counter
TaskValueSet,Power,PowerUsed,0 // Reset total power
Endon
On System#Boot Do
Monitor,gpio,14 // Generate an event when the GPIO state changes
Let,3,250 // Wattage of the load, adjust as needed
Endon
+4 -4
View File
@@ -21,7 +21,7 @@ import sphinx_bootstrap_theme
# -- Project information -----------------------------------------------------
project = u'ESP Easy'
copyright = u'2018-2023, ESP Easy'
copyright = u'2018-2024, ESP Easy'
author = u'Grovkillen, TD-er & Friends'
# The short X.Y version
@@ -69,7 +69,7 @@ master_doc = 'index'
#
# This is also used if you do content translation via gettext catalogs.
# Usually you set "language" from the command line for these cases.
language = None
language = 'en'
# List of patterns, relative to source directory, that match files and
# directories to ignore when looking for source files.
@@ -179,7 +179,7 @@ html_theme_options = {
# Choose Bootstrap version.
# Values: "3" (default) or "2" (in quotes)
'bootstrap_version': "3",
'bootstrap_version': "5",
}
# Add any paths that contain custom static files (such as style sheets) here,
@@ -278,7 +278,7 @@ epub_exclude_files = ['search.html']
# -- Options for intersphinx extension ---------------------------------------
# Example configuration for intersphinx: refer to the Python standard library.
intersphinx_mapping = {'https://docs.python.org/3/': None}
intersphinx_mapping = { 'ESPEasy': ('https://docs.python.org/3/', None) }
# -- Options for todo extension ----------------------------------------------
@@ -150,56 +150,56 @@ static const uint8_t PROGMEM
mono_bmp[][8] =
{
{ // 0: checkered 1
B10101010,
B01010101,
B10101010,
B01010101,
B10101010,
B01010101,
B10101010,
B01010101,
0b10101010,
0b01010101,
0b10101010,
0b01010101,
0b10101010,
0b01010101,
0b10101010,
0b01010101,
},
{ // 1: checkered 2
B01010101,
B10101010,
B01010101,
B10101010,
B01010101,
B10101010,
B01010101,
B10101010,
0b01010101,
0b10101010,
0b01010101,
0b10101010,
0b01010101,
0b10101010,
0b01010101,
0b10101010,
},
{ // 2: smiley
B00111100,
B01000010,
B10100101,
B10000001,
B10100101,
B10011001,
B01000010,
B00111100 },
0b00111100,
0b01000010,
0b10100101,
0b10000001,
0b10100101,
0b10011001,
0b01000010,
0b00111100 },
{ // 3: neutral
B00111100,
B01000010,
B10100101,
B10000001,
B10111101,
B10000001,
B01000010,
B00111100 },
0b00111100,
0b01000010,
0b10100101,
0b10000001,
0b10111101,
0b10000001,
0b01000010,
0b00111100 },
{ // 4; frowny
B00111100,
B01000010,
B10100101,
B10000001,
B10011001,
B10100101,
B01000010,
B00111100 },
0b00111100,
0b01000010,
0b10100101,
0b10000001,
0b10011001,
0b10100101,
0b01000010,
0b00111100 },
};
static const uint16_t PROGMEM
+4
View File
@@ -0,0 +1,4 @@
# Our handy .gitignore for automation ease
Doxyfile*
doxygen_sqlite3.db
html

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