Skip to content

Releases: letscontrolit/ESPEasy

mega-20230623

23 Jun 21:31
Compare
Choose a tag to compare

Release mega-20230623

Changes in mega-20230623 (since mega-20230508):

Florian Binder (3):

  • Enhance P098 to work without encoder and limit sensors
  • remove PLUGIN_TIME_CHANGE
  • use PCONFIG_LONG instead of PCONFIG

Joan Soler Galmes (2):

  • Added Start and End Pixel feature for scan and dualscan modes
  • Modified description of the command

Joan Soler GalmΓ©s (1):

  • Replaced all occurences of hex2rrggbb("000000") for hex2rrggbb(F("000000")) and An int doesn't need to be converted to an int. (Thx TD-er)

TD-er (147):

  • [ESP32-C3 / -S3] Add support for ESP32-C3 & ESP32-S3
  • [ESP32-C3] Disable P097 ESP32Touch for ESP32-C3
  • [GPIO info] Define flash pins for ESP32-C3 and ESP32-S3
  • [GPIO info] Add hardware/GPIO specifics for ESP32-C3/S3
  • [GPIO Boot States] Fix bug storing ESP32-S2 boot states + add ESP32-S3
  • [Build] Fix missing include
  • [Build] Fix build for ESP8266 missing a define macro
  • [NeoPixelBus] Update NeoPixelBus library to 2.7.5
  • [ESP32-S3] Fix board definitions + build errors on ESP32-S3
  • [ESP32-S3] Add 16M max_ESP32s3_16M8M_LittleFS build
  • [ESP32-C3] Fix computing free stack on ESP32-C3
  • [Docs] Document pins to use for ESP32-S2/S3/C3
  • [PSRAM] Fix PSRAM detection on ESP32-S3
  • [Docs] Update documentation regarding supported ESP chips
  • [NeoPixelBus] Work-around to compile on older compilers (ESP8266 2.7.4)
  • [docs] Fix copy/paste error in ESP32-C3 docs
  • [Docs] Update specs of supported (and not yet supported) ESP modules
  • [Docs] Document future ESP32 C2/C6/H2
  • [Cleanup] Simplify detection of active flash mode
  • [p2p] Fix task value data exchange between nodes via p2p (#4649)
  • [p2p] Fix check on received data for matching plugin IDs
  • [p2p] Fix collecting stats + send to controller on p2p received data
  • [p2p] Fix build on LIMIT_BUILD_SIZE builds
  • [p2p] Fix receiving p2p data on another node (stupid copy/paste bug)
  • [ESP32-S2/S3/C3] Update user configurable SPI bus in ESPEasy.
  • [Build] Fix PlatformIO env definition.
  • [Build] Fix build for ESP8266 due to misplaced #ifdef ESP32
  • [ESP32-S3/C3] Generate web flasher manifest files for all ESP platforms
  • [WiFi] Make Wi-Fi TX power configurable for ESP32-S2/S3/C3
  • [ESP32 SDK] Update to ESP32 SDK 2.0.9 + Enable WiFi TX pwr for ESP32
  • [PIO build] Update build scripts for scons 4.5.x
  • [Build] Fix build error due to strange cast of double type in rules
  • [Build] Work-around for new ESP8266 macro of round()
  • [Build ESP8266] Replace calls to round()
  • [Build] Use HWrandom to overcome build issues
  • [Build] Fix missing include
  • [Build] Remove extern "C" to allow for (C++) function overloading
  • [Build] include ESPEasy_common.h instead of Arduino.h where possible
  • [Cleanup] Moving not commonly needed code out of ESPEasy_common.h
  • [Build] Remove "Helpers" folder from concat script
  • [Build] Include ESPEasy_common.h instead of ESPEasy_config.h
  • [Build] Add Helpers folder to concat .cpp for ESP8266
  • [Build] Add ESPEasyCore to concat cpp & split global RulesCalculate obj
  • [Build test] Disable lots of plugins + not concat Helpers/*.cpp
  • [Build test] Disable P037 to test build failures
  • [Build test] Undef round right after include <Arduino.h>
  • [Build] Revert disabling plugins + concat Helpers/*.cpp
  • [Build] Include cmath after Arduino.h to redefine round()
  • [Build] Fix building ESPEasy in PlatformIO 6.1.7 (#4656)
  • [Cleanup] Fix IP address formatting
  • [Python] Create tool to generate web flasher files from build
  • [Python] Generate index.html for web flasher
  • [Build] Include obviously missing plugins from Climate builds
  • Change jquery CDN URL for China users
  • [Cleanup] Reduce build size by using float instead of double in rules
  • [Cleanup] Fix build, removing double function declaration
  • [Cleanup] Use float version of geometric functions to reduce bin size
  • [Cleanup] Remove duplicate code for leading zeroes formatting int
  • [Cleanup] Keep flags for rules floating point value type in sync
  • [Cleanup] Revert some changes based on review feedback
  • [Custom build] Make it easier for custom builds to force float type
  • [USB CDC] Support USB serial port for ESP32-S2/S3/C3
  • [ESPEasySerial] Split common code to separate .cpp file
  • [ESPEasy Console] Split console to separate class
  • [ESPEasy Console] Fix build error
  • [Build] Fix building on ESP32-S2
  • [ESPEasy Console] Enable USB CDC for ESP32-S2
  • [mDNS] Disable mDNS for ESP32-S2 as it seems to affect WiFi stability
  • [ESPEasySerial] Add platform specific default pins for Serial0 and 1
  • [HWCDC] Add event handling to automatically switch to USB serial
  • [HWCDC] Fix automatic switching to USB console port
  • [USBCDC] Add using USBCDC as console for ESP32-S2
  • [ESPEasySerial] Start adding USB serial to ESPEasySerial
  • [ESPEasySerial] Create wrapper classes for USBCDC and HWCDC
  • [ESPEasySerial] Split files into wrappers and drivers
  • [ESPEasySerial] Cleanup ESPEasySerial class
  • [ESPEasySerial] Fix compile errors
  • [ESPEasySerial] Fix compile errors.
  • [ESPEasySerial] Fix build on ESP32-S2 CDC builds
  • [ESPEasySerial] Fix build errors on ESP8266
  • [ESPEasySerial] Fix (another) build issue on ESP8266 with SWserial disabled
  • [ESPEasySerial] Fix selecting HWCDC on ESP32-C3/S3 for console
  • [ESPEasySerial] Fix Custom ESP32 build
  • [ESPEasySerial] Simplify check availability nr serial ports on SoC
  • [ESPEasySerial] Fix switching HWCDC + dynamically set default pins
  • [ESPEasySerial] Add preliminary support for console serial port fallback
  • [ESPEasySerial] Refactor file names to clarify their use
  • [ESPEasySerial] Fix build issue inconsistent defines
  • [ESPEasySerial] Fix USBCDC on ESP32-S2
  • [ESPEasySerial] Fix fallback USBCDC to Serial0 (input not working yet)
  • [ESPEasySerial] Add separate output buffers for fallback serial
  • [ESPEasySerial] Add setting to enable/disable fallback to serial0
  • [ESPEasySerial] Fix parsing commands via any serial console
  • [ESPEasySerial] Fix crashes on ESP32-C3
  • [USBCDC] Remove 2nd USB CDC port + use USB CDC on ESP32-S3
  • [ESPEasy Console] Show actual serial port config on sysinfo page
  • [Console] Reduce boottime when using CDC as port for console
  • [USB CDC] Add max_ESP32s3_16M8M_LittleFS_CDC (e.g. for Lilygo T-dongle)
  • [ESP32-S3 CDC] Switch USB serial to HWCDC for ESP32-S3 for web flasher
  • [ESPEasySerial] Fix setting correct baudrate
  • [ESPEasySerial] Fix saving SW serial pins
  • [ESPEasySerial] Get actual baudrate from SW Serial
  • [ESPEasySerial] Add SW Serial support for ESP32
  • [ESPEasySerial] Do not show default GPIO pins on SW Serial
  • [ESPEasySerial] Document new USB serial ports + SWserial for ESP32-xx
  • [ESPEasySerial] Update version nr to v3.0.0
  • [Cleanup] Improve formatting of GPIO description on devices page
  • [HWCDC] Enable HWCDC for all ESP32-C3 builds
  • [USBCDC] Enable USB CDC for all ESP32-S2 builds
  • [HWCDC] Enable HWCDC for all ESP32-S3 builds
  • [Web Flasher] Remove separation of CDC builds in dropdown list
  • [Build] Fix missing include for WiFi.h / ESP8266WiFi.h
  • [Build] Remove confusing custom build env. for ESP32-S2
  • [Build] Fix build not using ESPEasySerial
  • [ESP32 SDK] Update SDK to fixed code for HWCDC.end()
  • [DNS] Fix DNS server corruption by IPv6 global IP prefix
  • [DNS] Allow DNS cache of 0.0.0.0 to be restored
  • [Web flasher] Add link to list of plugins per build to flasher page
  • [Web flasher] Use Tasmota's version of ESP Web Tools JS to flash USBCDC
  • [ESP32-S3] Clarify OPI flash requirements in 16M PSRAM build
  • [Build] Mark P065 as dependency on ESPEasySerial
  • [ESP32-S3] Document SPI mode quirks for ESP32-S3
  • [IMPROV] Implement Improv to ease deployment via web flasher
  • [ESP32-S2] Fix esptool.py upload parameters to help autoreset flashing
  • [Serial Helper] Disable updating GPIOs on switch serial port on webpage
  • [IMPROV] Replace library + modify
  • [IMPROV] Add WiFi scan + board/build identification for web flasher
  • [IMPROV] Fix build on ESP8266
  • [IMPROV] Fix ESP8266
  • [IMPROV] Fix build on ESP8266
  • [IMPROV] Do not include IMPROV in ESP8266 limited build size builds
  • [IMPROV] Fix connect to Wifi + add logging
  • [IMPROV] Clear scan result
  • [IMPROV] Clean up ESPEasy console handling fallback serial
  • [ETH] No DNS entries when using Ethernet (#4702)
  • [IMPROV] Feed invalid IMPROV messages to console input again
  • [IMPROV] Use parse state to check parse result
  • [ESP32 IDF] Update to IDF 4.4.5 (2023-06-14)
  • [ESP32 IDF] Update to IDF 4.4.5 (2023-06-14)
  • [Cleanup] Simplify init plugins
  • [Cleanup] Fix simplify init plugins
  • [Cleanup] Move Plugin_ptr[] to PROGMEM
  • [Cleanup] Simplify init included controllers
  • [Cleanup] Reduce memory usage on builds with low numbered plugins
  • [Cleanup] Fix missing include
  • [Devices] Fix showing all included plugins in devices pull-down list
  • automatically updated release notes for mega-20230623

Ton Huisman (62):

  • [P152] Add plugin Output - ESP32 DAC
  • [P152] Add plugin to ESP32 and ESP32-S2 Normal (all) builds
  • [Core] Add support for ESP32 DAC GPIO selection, display and checks
  • [P152] Review feedback
  • [Core] ESP32 DAC GPIO review feedback
  • [P152] Add documentation
  • [Core] ESP32 DAC GPIO Show warning for PSRAM pin
  • [P152] Update documentation for PSRAM warning
  • [P153] Add plugin Environment - SHT4x (Temperature Humidity sensor)
  • [P145] Fix compiler warning (unused variable)
  • [P152] Update documentation removing non-existent PSRAM warning (#4624)
  • [P153] Add command support, apply feedback and other improvements
  • [P147] Add plugin Gases - CO2 SGP4x
  • [Helpers] Add calc_CRC8() function
  • [P147] Rename plugin Gases - SGP4x VOC(/NOx), add to I2C Scanner
  • [P083] Rename plugin: Gases - SGP30 TVOC/eCO2
  • [Custom] Add P147 options, format some definitions
  • [Lib] Add Sensirion Arduino Gas Index Algorithm library
  • [P147] Implement Sensirion Gas Index lib, finish SGP41 suppo...
Read more

mega-20230508

08 May 07:31
Compare
Choose a tag to compare

Release mega-20230508

Changes in mega-20230508 (since mega-20230507):

TD-er (1):
automatically updated release notes for mega-20230508

Ton Huisman (1):
[UserVar] Bugfix: Clear element only

mega-20230507

07 May 14:53
Compare
Choose a tag to compare

Release mega-20230507

Known issue:

  • [ESP8266] UserVar index out of range #4652

Changes in mega-20230507 (since mega-20230505):

SirWant (4):

  • Fix and Add command to PluginStats
  • Replacing sampleN and sample to sample+-N
  • minor fix
  • Final minor fix...

TD-er (8):

  • [Cleanup] Remove duplicate code & document
  • [RTC TaskValues] Fix proper init of task values
  • [p2p] Fix task value data exchange between nodes via p2p (#4649)
  • [p2p] Fix check on received data for matching plugin IDs
  • [p2p] Fix collecting stats + send to controller on p2p received data
  • [p2p] Fix build on LIMIT_BUILD_SIZE builds
  • [p2p] Fix receiving p2p data on another node (stupid copy/paste bug)
  • automatically updated release notes for mega-20230507

Ton Huisman (14):

  • [P004] Rename to 1-Wire Temperature, add support for MAX31826 sensor
  • [P004] Apply CRC check before testing for fixed resolution
  • [P004] Variable naming consistently
  • [P004] Update documentation
  • [P004] Use matching sensor-resolution when reading
  • [P004] Use highest required sensor-resolution when reading multiple sensors
  • [P004] Remove unneeded debug log message
  • [P004] Add 'unsupported' warning for Parasite Powered sensors
  • [Build] Fix Climate build size issue
  • [Build] Add BUILD_NO_DEBUG flag on normal_302_ESP8266_4M1M and normal_beta_ESP8266_4M1M for size
  • [P093] Add support for retrieving all device values
  • [P093] Updated documentation for config values
  • [P093] Add suggested initialization check
  • [Build] Make 1M builds fit by excluding some plugins

mega-20230505

05 May 20:59
Compare
Choose a tag to compare

Release mega-20230505

Known issue:

  • ESP_Easy_mega_20230505_normal_ESP8266_4M1M don't receive ESPEasy P2P Networking values #4649

Changes in mega-20230505 (since mega-20230409):

Fabio Ancona (4):

  • Rename sensor to SHT3x from SHT30/31/35
  • Rename sensor to SHT3x from SHT30/31/35
  • SHT3x Update docs with detailed chip list
  • SHT1x Update docs with detailed chip list

TD-er (33):

  • [LoRaTTN] Split up C018 source files
  • [P151] Add Honeywell I2C Pressure sensor plugin
  • [P151] Fix I2C scanner result not showing address selection dialog
  • [I2C] Use standard functions in I2C_access.h/.cpp
  • [Dummy] Add 1...4 ULong as taskvalue output type
  • [Dummy] Correctly interpret task values based on sensor type
  • [Cleanup] Reduce build size using arrays instead of switch cases
  • [Dummy] Reduce code duplication accessing task values
  • [Cleanup] Fix index issue determine task value name strings
  • [SenseAir] Add ABC option
  • [SenseAir] Add some more debug sensor info on settings page
  • [Build] Fix merge issues
  • [ESP32-S2] Fix selection of only 2 HW serial ports ( #4595)
  • [Honeywell] Fix measuring temperature and pressure on real sensor
  • [Honeywell] Fix accepting "stale" data when value did change
  • [Honeywell] Add documentation for P151 I2C Honeywell Pressure
  • [SenseAir] Revert SenseAir changes as that is split to #4550
  • [TaskValueTypes] Add various data types for dummy plugin
  • [CacheReader] Support new task value data types
  • [TaskValueTypes] Fix build issue missing #ifdef
  • [TaskValueTypes] Fix storing taskvalues to RTC
  • [TaskValueTypes] Rename old "Long" type to "ULong", which it actually is
  • [TaskValueTypes] Simplify ESPEasy p2p task value exchange
  • [Cache Reader] Optimize JSON output
  • [TaskValueTypes] Check new types when checking for valid taskvalues
  • [TaskValueTypes] Simplify checks on TaskValues + speedup.
  • [TaskValueTypes] Add build flag FEATURE_EXTENDED_TASK_VALUE_TYPES
  • [Dummy] Update documentation for the new task value data types
  • Update to esptool.py 4.5.1
  • Update PlatformIO 6.1.6
  • Not define esptool.py in the requirements.txt
  • pygit2>=1.10.1
  • automatically updated release notes for mega-20230505

Ton Huisman (41):

  • [P150] Add plugin Environment - TMP117 Temperature
  • [Build] Correct compiler warning
  • [P150] Add opt. Raw, add opt. logging, add opt. Fahrenheit, resolve feedback
  • [P150] Remove opt. Fahrenheit output
  • [P150] Make one-shot mode work, fix interval reading
  • [P150] Correctly apply config bits, improve configuration screen
  • [P150] Correctly put in Collection F set
  • [P150] Add documentation
  • [Commands] Add internal command HiddenSSID
  • [Commands] Add documentation for HiddenSSID
  • [Commands] Fix handling empty argument for on/off commands on ESP8266
  • [Commands] Fix documentation typo
  • [P106] Update BME680 library to latest
  • [P106] Rename to BME68x, add Gas in Ohm option
  • [P106] Add documentation
  • [Commands] Add PutToHTTP command
  • [Docs] Add PutToHTTP documentation
  • [Commands] Fix typo in PutToHTTP log message
  • [LongPulse_ms] Fix end-state for inverted repeated pulse
  • [LongPulse_ms] Fix end-state for inverted repeated pulse
  • [GPIO] Improve GPIO states for ESP32-S2
  • [GPIO] Fixe ESP8266 compilation issue
  • [GPIO] Update hardware-page documentation
  • [Docs] Add moving average Rules example
  • [Docs] Update moving average Rules example
  • [P102] Bring plugin-name in line with other plugins
  • [P031] Harmonize plugin name
  • [P105] Harmonize plugin name
  • [P094] Correct name in documentation
  • [P112] Add documentation template
  • [P112] Remove [Develoment] tag, add to Collection F
  • [P036] Bugfix for overlapping page variables
  • [UI] Bugfix: /dashboard.esp url was not working anymore
  • [UI] Setup page doesn't serve css
  • [I2C] I2Cscanner command check if I2C enabled
  • [Custom] Add FEATURE_RTTTL define to Custom-sample.h
  • [AdaGFXHelper] Fix optional fonts define error
  • [Custom] Add FEATURE_PUT_TO_HTTP define to Custom-sample.h
  • [P080] Add missing PLUGIN_READ function-handler, so the state is sent to controllers
  • [P080] Only send state-changes to controllers
  • [P080] Use UserVar setters/getters for changing and checking the value

flashmark (13):

  • P145 Minor changes sensor definition struct
  • P122 SHT2x temperature and humidity sensors
  • P122 Reworked after review comment
  • P122 review changes
  • P122 fix wrong bitmask, cleanup
  • P122 Small rework, added documentation
  • P144 Start documentation
  • P144 Rework documentation
  • P122 documentation, fix ordering environment plugins
  • P144 small review fix
  • P122 Fixed typo in documentation
  • P122 Limit build size for esp8266
  • P122 fixed bug in conditional compilation when debugging switched off

mega-20230409

09 Apr 16:23
Compare
Choose a tag to compare

Release mega-20230409

The Easter build for 2023.
Or in Dutch: de Paasbult :)

Changes in mega-20230409 (since mega-20230306):

TD-er (29):

  • [Cleanup] Reduce bin size on minimal builds.
  • [ETH] Fix connect to LAN with internal clock
  • [Build] Fix missing network medium options
  • [WiFi] Fix slow WiFi (re)connect
  • [WiFi] Fix connect from RTC
  • [Eth] Fix restoring cached DNS IPs
  • [Provisioning] Fix setting allowed file types to download via rules
  • [Provisioning] Fix cache and mDNS updates after provisioning
  • [Provisioning] Only allow downloading firmware update from set host
  • [Cache Reader] Add option to delete files after upload
  • [Rules] Fix parsing "Clock#Time=All,**:00" (#4568)
  • Sonoff Soil moistrure sensor MS-01 #4503
  • Disable I2C dev check HDC1080 #4571
  • [ADS1115] Fix channel results mixed #4570
  • Rename HDC1080 to HDC10xx #4578
  • [Rules] Use variables in clock events
  • [ESP32 WiFi] Enable selecting 802.11g mode on ESP32 #4572
  • [ADS1115] Show analog port on Devices page
  • [ADS1115] Fix build issue on ESP8266
  • [ADS1115] Add option to output in Volt using set gain.
  • [ADS1115] Update docs
  • [Build] Fix merge issue
  • Fix using wrong index from string array in sysinfo and SenseAir plugin
  • [PluginStats] Fix "highest peak" for negative values
  • [WiFi] Fix really slow reconnect on ESP32 (#4572)
  • [WiFi] Add auto WiFi (re)Connect and delay options
  • [WiFi] Force restart WiFi if auto reconnect is enabled
  • [WiFi] Document new Advanced options auto reconnect and extra wait
  • automatically updated release notes for mega-20230409

Ton Huisman (113):

  • [P137] Add AXP192 Powermanagement controller
  • [P137] Include used library
  • [P137] Enable code only for ESP32
  • [P137] Add some missing Get Config values, small improvements
  • [Build] Define ESP_LOGD(...) macro, not available on ESP8266 platform
  • [P137] Available for ESP8266 too
  • [P137] Remove [TESTING] tag, enable for ESP8266, minor code improvements
  • [Build] Define ESP_LOGD(...) macro, not available on ESP8266 platform
  • [Build] Change ESP_LOGD(...) macro, remove accidentally committed file
  • [P137] Restored ESP32 limitation as the Linux build can't handle the workaround
  • [P137] Activate in all Collection builds too
  • [P137] Add controller to ENERGY builds and Custom-sample.h
  • [P137] Add documentation
  • [P137] Fix flash-string ==
  • [UI] Add disabled feature for numeric input fields
  • [Tasks] Add Priority task feature for initializing plugins early, with documentation
  • [Lib] Pull AXP192 library local, and implement missing features, exclude from ESP8266 builds
  • [P137] Implement Priority task feature, add more hardware options, add predefined configurations
  • [P137] Update documentation
  • [Boards] Add PSRAM option for 16M8M to improve stability
  • [Build] Add AXP192 to lib_ignore for IR ESP8266 builds
  • [Lib] AXP192 remove some unused variables
  • [Build] Add AXP192 to lib_ignore for normal_beta 16M ESP8266 build
  • [P137] Adjusted default device settings (turn off led and tft backlight for M5Core2)
  • [P137] Revert previously added PSRAM option for 16M8M builds
  • [Build] Remove suggestion that P138 will be a Priority task plugin
  • [P137] Add commands to codeMirror for Rules syntax highlighting, some typos fixed
  • [DOCS] Extend development guide
  • [DOCS] Add Using external libraries chapter, small corrections
  • [DOCS] Use %eventvalue1% in Rules examples where possible, other improvements and additions
  • [P008] Add get config values, update documentation
  • [P008] Handle initialization issue for unconfigured GPIO pins
  • [I2C] Disable I2C GPIO pin configuration if an I2C Priority task is enabled, updated docs
  • [P137] Reorder Device Configuration for output configuration change, enable PluginStats, update documentation
  • [Hardware] Add warning to disconnect ETH PoE during USB Serial use
  • [UI] Darker background color for disabled input fields
  • [UI] Darker background color for disabled input fields, update embedded css
  • [P137] Exclude some more unneeded code if FEATURE_PLUGIN_PRIORITY not set
  • [P137] Add config for LilyGO T-Beam, improved disabled-port UI, update documentation
  • [P013] Add setting for trigger-width
  • [Libs] Update NewPing library, add sanity check for triggerWidth argument
  • [P013] Reduce variable use, make State mode interval event optional
  • [P013] Update documentation with added setting
  • [P013] Update documentation with 'hidden' setting for Mode=State
  • [Lib] NewPing limit max trigger-width to 20 usec (wide enough)
  • [P013] Reduce plugin size (disable added features and log for 1M builds)
  • [P013] Update documentation with adjusted 20 usec setting
  • [P008] Reduce plugin size, minor optimizations
  • [P137] Add I2C config blocked note to documentation
  • [Docs] Correct some plugin status labels
  • [P013] Add Combined mode, as started in #3157
  • [PriorityTask] Fix argument validation
  • [P137] Add support for PLUGIN_I2C_GET_ADDRESS
  • [P137] Fix merge issue
  • [P137] Fix merge issue
  • [P013] Update changelog explaining why not using latest NewPing library version
  • [P013] Allow Interval = 0, inhibit setting for suppressing State-events on Interval
  • [P013] Update and cleanup documentation
  • [P118] Change command to itho from state (deprecated, not removed)
  • [P118] Update documentation for 'itho' command
  • [P145] Fix documentation processor warning
  • [Docs] Add some missing includes on Commands overview page
  • [Displays] Don't trim spaces from text to display
  • [Docs] Correct some plugin labels to display separately
  • [Parameters] add parseStringKeepCaseNoTrim and parseStringToEndKeepCaseNoTrim and implement where useful
  • [P145] Fix compiler warning (nested comments)
  • [Build] Add KEEP_RTTTL build-flag and apply to some builds
  • [P065] Add Serial configuration to enable use on ESP32
  • [P065] Update documentation
  • [Serial] Show I2CSerial as last option, format sources
  • [ESPEasySerial] Remote I2CSerial completely when disabled, format source
  • [Serial] Hide I2CSerial completely when disabled
  • [Serial] Update documentation
  • [P065] Set initial config also for ESP8266, increase initial volume to 50%
  • [P137] Implement GetCommandCode() for commands and getvalues to reduce bin-size
  • [P021] Add Invert Output option
  • [P021] Update documentation
  • [P089] Change command-handling making taskname optional
  • [P089] Add documentation
  • [C014] [Homie MQTT] replace DummyValueSet by TaskValueSet (bugfix)
  • [C014] Minor corrections
  • [Build] Update Arduino framework 2.0.7 (testing)
  • [P089] Show Hostname value on Devices overview page (GPIO column)
  • [P014] Disable I2C check to correct HTU21D read
  • [StringConverter] Add parseHexTextString()
  • [P020] Add command serialsendmix
  • [StringConverter] Improvements to parseHexTextString()
  • [P087] Add command serialproxy_writemix using parseHexTextString()
  • [P087] Format source suing Uncrustify
  • [P144] Disable additional debug logging
  • [Build] Add [C011] to Climate build
  • [P109] Add documentation for ThermoOLED plugin
  • [StringConverter] Add parseHexTextData() to handle 0x00
  • [P020] Use parseHextTextData() to handle 0x00 in data
  • [P087] Use parseHexTextData() instead of parseHexTextString()
  • [P087] Code improvements
  • [Docs] Add reference to Youtube video for Git tools and Python installation
  • [Docs] Cancel/remove hardly used Github feature
  • [P087] Add documentation
  • [P073] Fix documenation typo
  • [P073] Correct 7dbin command for TM1637 and fix scroll feature (bugfix)
  • [P073] Wrap some methods for conditional compilation
  • [P073] Option to suppress leading zeros on day/hour, fix scroll enable/disable
  • [P073] Fix documenation typo
  • [P073] Update documentation
  • [Docs] Minor correction, remove reference to non-existing paragraph.
  • [P073] Fix displaying periods for 7dtext on 6-digit TM1736
  • [Build] Add [P077] to Shelly_PLUG_S build environment
  • [P047] Add support for BelFlE Soil moisture sensor I2C
  • [P047] Add validation on I2C address inputs
  • [P047] Add documentation
  • [WiFi] APmodeEnabled event not generated when logging is disabled #4593
  • [P047] Correct typo BelFlE to BeFlE

chromoxdor (1):

  • [P027] Change the default averaging to 128samples

flashmark (13):

  • Introduce P240 Vindriktning
  • Add P240_Vindriktning experimental
  • P240 Vindrikning, conditional debug messages
  • P240_Vindriktning small bugfixes
  • renamed: src/_P240_Vindriktning.ino -> src/_P144_Vindriktning.ino Renamed global variables to keep them unique
  • P144 rework
  • P144 Vindrikning rework
  • P144 Vindriktning minor rework
  • P144 Vindriktning Review rework
  • P144 Vindriktning Optimize time critical code
  • Reworked with separate P144_data_struct
  • Rework after review
  • Merge define_plugin_sets.h

stefan (3):

  • [HTTP] Increase timeout on send
  • [HTTP] Increase timeouts and smaller fixes
  • Excluded debug output

mega-20230306

06 Mar 20:40
Compare
Choose a tag to compare

Release mega-20230306

This is a hotfix release to fix the issues found since the 20230304 build.

Changes in mega-20230306 (since mega-20230304):

TD-er (1):

  • automatically updated release notes for mega-20230306

Ton Huisman (13):

  • [I2C] Don't check device availability for remote I2C devices
  • [Devices] Don't show Pin/Port/Address options for P2P remote devices
  • [Release] Remove duplicated release notes
  • [Release] Improved step name in release.yml
  • [I2C] Fix scope error.
  • [I2C] Set default response for I2C check to true
  • [Plugins] Ignore PLUGIN_INIT return value if plugin is actually remote
  • [Controllers] Add RTD Help button to Controller config page
  • [Controllers] Add RTD Controller Help button only when space allows, replace switch by if
  • [Controllers] RTD Controller Help button match String.reserve() size
  • [Build] Update to newer Arduino platform lib (2023.01.02)
  • [P037] Always return success on PLUGIN_INIT
  • [Device] Show I2C options correctly for local devices

mega-20230304

04 Mar 13:21
Compare
Choose a tag to compare

Release mega-20230304

Known issues:

  • mega-20230304 mqttimport disabled after reboot #4535
  • Tasks from ESPEasy P2P Networking in mega-20230304 can't be enabled #4530

Work-in-progress to fix these known issues:

  • [I2C] Don't check device availability for remote I2C devices and other improvements #4532

Changes in mega-20230304 (since mega-20221224):

TD-er (136):

  • [CacheReader] Play back the recorded CacheController data
  • [CacheReader] Add rate limiter + command to set readpos
  • [Cleanup] Speedup dumpcache page serving
  • [Cache Reader] Create binary dump messages.
  • [Cache Reader] Send binary blobs to MQTT
  • [Cache Reader] Fix check max. message size bin upload
  • [Cache Reader] Fix memory leak by indexing non existing files.
  • [Cache Reader] Fix stop increasing peek file nr when last was read.
  • [Cache Reader] Store/fetch Plugin ID per sample
  • [Cache Reader] Fix proper handling last file upload + wait
  • [ESP32 SDK] Update to ESP32 SDK 2.0.6
  • [Cache Reader] Add sending task names + fix upload all files
  • [JSON] Fix escaping invalid characters in JSON
  • [JSON] Fix escaping invalid characters in JSON
  • [Controller Queue] Reduce bin size by using inheritance
  • [Controllers] Reduce bin size by no longer using template
  • [Controllers] Reduce bin size by getting rid of extensive macros
  • [Controllers] Move TaskIndex to base class for queue elements
  • [Controller] Fix queue element vase class members being set
  • [Cache Reader] Fix not converting to PluginID twice
  • [PubSubClient] Speedup publish calls by direct writing to client
  • [Cache Reader] Fix JSON taskinfo + speedup sending to MQTT
  • [Dallas] Fix uninitialized sensor data (+crash) when sensor not found
  • [Dallas] Fix uninitialized sensor data (+crash) when sensor not found
  • [Cleanup] Fix proper initialization of controller queue elements
  • [Cleanup] Proper member initialization on ExtraTaskSettings
  • [Dallas] Show auto-detected 1Wire ID on Devices page
  • [Cleanup] Proper initialization of P036 and P037 members
  • [Dallas] Show auto-detected 1Wire ID on Devices page
  • [DNS] Fix restoring DNS server config on DHCP renewal
  • [DNS] Fix restoring DNS server config on DHCP renewal
  • [Build] Disable some plugins in custom build to make it fit again
  • [Build] Fix build on ESP8266
  • [Build] Fix building on ESP8266
  • [Build] Fix missing include
  • [Build] Fix missing include
  • [Build] Reduce bin size to make normal_esp8266_1M finish building
  • [Build] Reduce build size by not including ESP8266mDNS lib at all
  • [Build] Reduce build size by not including ESP8266mDNS lib at all
  • [Cleanup] Reduce build size.
  • [TM1621 Display] Plugin 148: Sonoff POWR3xxD and THR3xxD display (#4448)
  • [TM1621 Display] Plugin 148: Sonoff POWR3xxD and THR3xxD display (#4448)
  • [Build] Fix build error (signed/unsigned comparison)
  • [TM1621] Clean-up, simplify code slightly.
  • [TM1621] Add font containing letters for Sonoff Elite displays
  • [TM1621] Simplify code
  • [TM1621] Access to units of measure symbols
  • [TM1621] Properly formatting numericals
  • [TM1621] Clean-up unused function + fix comment
  • [TM1621] Add option to show taskvalues from plugin
  • [TM1621] Documenting commands
  • [TM1621] Documentation
  • [TM1621] Add selection of unit symbols per task page
  • [Dallas] Fix crash when pluginstats are enabled and sensor not found
  • [Dallas] Fix re-init of sensors when using 'scan on init'
  • [Cleanup] Only save/load settings from storage when changed.
  • [Cache] Only clear specific task caches when needed.
  • [Cache] Only flush task caches when config.dat file is renamed/moved
  • [Cleanup] Leave out unused code.
  • [Cleanup] Reduce build size
  • [Build] Fix missing includes.
  • [Cache] Do not load ExtraTaskSettings from storage for empty tasks.
  • [Cache] Fix saving task name and set taskvalue names
  • [Cache] Reduce nr of file load/save calls to a minimum.
  • [Cache Reader] Fix selecting start position when only 1 file is present.
  • [Cleanup] Add ChecksumType to reduce unneeded file access.
  • [Cleanup] Use ChecksumType to limit load/save
  • [Build] Add missing include
  • [Cleanup] Reduce nr load/save operations (proper init structs)
  • [Cleanup] Reduce build size
  • [Cache] Simplify task settings checksums
  • [TimingStats] Turn timing stats elements into types to check types
  • [TimingStats] Fix cast issue
  • [Cache Reader] Add configurable MQTT topics for upload/metadata
  • [Cleanup] Group timingstats & fix delete of cache controller files
  • [ADXL345] Fix setting nr. of decimals
  • [Cache Reader] Stop sending 'empty' data if cache controller not enabled
  • [Build] Add pre_custom_espXXX_IR.py due to size of IR libs
  • [ESP8266] Speedup event handling and rules parsing by caching task name
  • [Docs] Add warning about calibrating CO2 sensors
  • [ESP8266] Use different constructor for IPAddress (fix crash)
  • [Cache] Cache Controller Settings on ESP32 (slow read from LittleFS)
  • [Controller Queue] Do not format message when controller queue is full
  • [Factory Reset] Factory reset fails with valid FS, but no config.dat
  • [ESP32] Export all task values CacheController
  • [Cache Controller] Add command to flush all data in RTC memory to flash.
  • [Cache Controller] Improve CSV dump speed via /dumpcache
  • [Cache Controller] Add JoinSameTimestamp option
  • [Cache Controller] Add option to exclude not enabled tasks
  • [Cleanup] Reduce bin size on speed-optimized toString function
  • [Cache Reader] Make selecting set tasks optional + add join count column
  • [Cache Reader] Add config flags + CSV download button
  • [Cache Reader] Add Python code to decode bulk upload data sent via MQTT
  • [Cache Reader] Add intended nr of 'samples' per bulk message
  • [Cache Reader] Cleanup Export dump to CSV & fix separator
  • [Cache Reader] Allow bulk dump CSV to MQTT
  • [Cache Reader] Fix serving 'last line' of stored data
  • [Cache Reader] Send bulk taskinfo in either CSV or JSON, using settings
  • [TaskRun] Add optional unixtime as siuggested timestamp (#4497)
  • [C016] Use less includes when USES_C016 is not defined
  • [Build] Reduce build size ESP8266_normal_1M to match _1M_VCC
  • [BootState] Cleanup setting GPIO boot state
  • [Task Commands] Fix parsing parameters on commands with only taskindex
  • [Build] Fix build error on ESP32 ETH builds
  • [TaskRun] Reschedule task to set Interval
  • [TaskRun] Also reschedule on TaskValueSetAndRun
  • [TaskRun] Cleanup code
  • [TaskRun] Fix new command ScheduleTaskRun
  • [Build] Cleanup code + reduce build size
  • [Cleanup] Simplify generating task events
  • [Cleanup] Reduce build size by omitting some conversions
  • [Cleanup] Reduce bin size for (flash)string compares
  • [Cleanup] Reduce build size using own equals function for flash strings
  • [Cleanup] Reduce build size by using own equals() function
  • [Cleanup] Replace single char flash strings with char
  • [Cleanup] Fix copy/paste error handling stringcommands
  • [Cleanup] Small tweaks suggested to reduce bin size
  • [ADC] Add config commands to set calibration
  • [ADC] Document new ADC set calibration commands
  • [SenseAir] Fix reading error state from sensor
  • [Controller] Fix crash debug label for delay queue
  • [ESP32 ETH] Fix setting DNS on latest ESP32 SDK
  • [ESP32 Ethernet] Make sure any ETH power pin is pulled up at boot
  • [Build] Fix build error
  • [ESP32] Enable LTO to reduce bin size
  • [Build] Fix build ESP32 IR ext. using LTO
  • [Build] Fix extra_scripts path
  • [Build] Set Python 3.10 in build script
  • [I2C] Fix crash I2C device is set as first task, with I2C check enabled
  • [Build] Disable LTO for ESP32 and ESP32-S2 due to linker errors
  • [P025] Uncrustify code
  • [ADS1115] Cleanup I2C code + add read timeout
  • [ADS1115] Further clean-up of the code
  • automatically updated release notes for mega-20230304
  • [Build] Replace all Python 3.8 to 3.10
  • automatically updated release notes for mega-20230304

Ton Huisman (161):

  • [P138] Add Power mgt - IP5306 plugin
  • [P138] Add IP5306 library to lib folder
  • [P138] Fix some typos, clean up some obsolete comments
  • [P143] Add plugin I2C Rotary encoders
  • [Core I2C] Add I2C_writeBytes_reg function, format source
  • [P143] Add support for M5Stack I2C Rotary encoder
  • [P143] Add support for DFRobot I2C Rotary encoder
  • [P143] Add Led(s) off on exit option
  • [P143] Add Button longpress support
  • [P143] Add command handling, some refactoring
  • [P143] Remove [Testing] tag from plugin name
  • [P143] Add documentation
  • [P143] Add i2cencoder,set, command
  • [P138] Remove [Testing] tag
  • [P138] Add to I2C scanner
  • [P138] Reorder Device configuration, enable PluginStats option
  • [P138] Add documentation
  • [P138] Use same term for PowerMgt as in P137 docs
  • [P143] Move to Collection C (from A) because of build size
  • [P143] Update documentation
  • [P143] Add nullptr checks, fix byte-swap issue (M5Stack)
  • [Misc] Add byteSwap16() function
  • [P143] Replace macro by byteSwap16() function
  • [P038] Bugfix: Set default for Initial brightness > 0
  • [Misc] Revert/remove byteSwap16() function
  • [P143] Disable all code related to M5Stack encoder firmware V1.1 (no device available)
  • [P001] Get duty-cycle for [Plugin#GPIO#Pinstate#N] on PWM or SERVO pins
  • [P001] Get pinstate/duty-cycle for any plugin that registers its pins, exclude code from 1M devices
  • [Plugin] Update documentation for [Plugin##Pinstate#] use
  • [Build] Add ESP32 IRExt with Ethernet build environments
  • [Eth] Mark used Ethernet Clock pin as unusable if Ethernet is set as Preferred network medium
  • [Eth] Refactor EthClockMode vs gpio check into separate function
  • [P067] Refactoring and other improvements
  • [N001] Add Date in nail header
  • [SysVars] Add %month_s% on System variables page
  • [DateTime] Allow manual datetime command repeatedly (skip delay)
  • [SysVars] Add variable systzoffset with the timezone-offset string, like +0100
  • [N001] Add timezone offset...
Read more

mega-20221224

24 Dec 21:01
Compare
Choose a tag to compare

Release mega-20221224

Flash via web flasher on: https://td-er.nl/ESPEasy/

Changes in mega-20221224 (since mega-20221105):

C.Lee Taylor (1):

  • Add comment to P001 for split up

TD-er (40):

  • [PIO Build] Remove concat work-around for ESP32 builds
  • [PIO] Add all used libraries in lib folder
  • [PSRAM] Do not check UsePSRAM but FoundPSRAM
  • [Docs] Fix "Validate a RFID tag" example
  • [P002] Fix using nr. decimals in calibration
  • [Favicon] Fix serving favicon.ico
  • [Build] Exclude all ext. RTC code when not enabled in build
  • [WiFi] Switch default and alt.WiFi builds for ESP8266
  • [LCtech switch] Fix longpulse (#3385)
  • [NTP] Fix calling NTP when current time source is ext. RTC
  • [Build] Include the 'boards' folder in the source ZIP file (#4274)
  • [SendToHTTP] Only include "Authorization" header when credentials set
  • [ESP32 2.0.5.x] Fix crashes calling noInterrupt() in ISR callback
  • [Adafruit NeoPixel] Update lib to fix noInterrupts
  • [Quad Enc] Fix ESP32 noInterrupts()
  • [Docs] Update rules docs not using %eventvalue1%
  • [HTTP] Restore Authorization headers used in C011 (#4364)
  • [HTTP] Remove check for "Authorization" header
  • [ADXL345] Add pitch and roll as derived task values
  • [ADXL345] Update min/max values per raw sample reading.
  • [Cache Controller] Speedup ESP32 + LittleFS use.
  • [Cache Controller] Allow for larger files on large ESP8266 FileSystems
  • [Build] Make normal_ESP8266_1M fit max. size again
  • [ADXL345] Add output of values in g with self calibration
  • [ADXL345] Document new features of plugin
  • [LongPulse] Fix recurring longPulse
  • [Speedup] Make less calls to LoadTaskSettings as it is slow on ESP32
  • [Cache] Fix updating ExtraTaskSettings Cache after it has been modified.
  • [Cleanup] Do not call own class functions from constructor/destructor
  • [Build] Fix missing #ifdef check.
  • [Taskvalue Select] Fix showing taskvalue config for some plugins
  • [Taskvalue Select] Fix showing taskvalue config for some plugins
  • [PVS Studio] Fix issues reported by PVS Studio
  • [Lib] Update to ArduinoJson 6.19.4
  • [WiFi] Fix WiFi (re)connect not starting AP immediately
  • [WiFi] Fix loop WIFI_STA and WIFI_OFF preventing boot/wificonnect
  • [Controller] Allow system variables in controller username
  • [ESP32] Fix ECO mode on ESP32
  • Fix max. frequencies for various ESP32 SoC's
  • automatically updated release notes for mega-20221224

Ton Huisman (47):

  • [Build] Revert Espressif32 framework to 2.0.4.1 to fix NeoPixel/RMT related issues
  • [P121] Bugfix for unconnected sensor, correct name-typo, code cleanup
  • [P121] Remove obsolete Arduino 1.0 check, use f suffix for float values
  • [P038] Add initial and max brightness settings and command, update docs, optimizations
  • [P121] Add HMC5883L to I2C scanner
  • [Build] Update platform to 2.0.5.2, enable PSRAM for 16M8M envs, prepare PSRAM fix config
  • [CodeMirror] Add NeoPixelBright command
  • [P037] Add JSON sub-attribute support
  • [P037] String and memory optimizations
  • [P037] Small source cleanup
  • [Docs] Add quotes in rules examples for SendTo and SendToHTTP
  • Revert "[Docs] Add quotes in rules examples for SendTo and SendToHTTP"
  • [Docs] Add quotes in rules examples for SendTo and SendToHTTP
  • [P037] Small source improvement
  • [P037] Remove unneeded LoadTaskSettings call
  • [AdafruitGFX] Fix potential initialization issues
  • [Libs] Fix initialization issues
  • [PVS] Code improvements and corrections
  • [P037] Correct table layout on Configuration page
  • [P129] Correct table layout on Configuration page
  • [P099] Correct table layout on Configuration page
  • [P099] Format sources using Uncrustify
  • [P099] Code improvements, small string reductions
  • [Command parsing] Non-numeric arguments could return uninitialized data
  • [AdaGFX] Fix typo in constructor
  • [Build] Deduplicate libs and un-space lib foldernames
  • [Build] Add readme.md to lib folder
  • [P037] Move device configuration subheader, small uncrustify changes
  • [P109] Add Inverted relay-state and Setpoint-delay settings
  • [Build] Enable I2C Multiplexer in most ESP8266 4M builds
  • [I2CMux] Fix Multiple Channels I2C Multiplexer selection table column widths
  • [Metrics] Use default devicename taskN when Name is empty
  • [Metrics] Show default task number as displayed in the device overview
  • [Metrics] Format source using Uncrustify
  • [Build] Enable Zabbix controller for Collection builds
  • [Rules] Get task settings for use in rules
  • [Rules] settings.controllerN also check Controller enabled/disabled
  • [Rules] Update documentation for task settings variables, fix a few typos
  • [Rules] Update ESPEasy ColorCode configuration
  • [Rules] Adjust fetching task-controller settings, update documentation
  • [Rules] Add String functions indexOf and equals, with documentation
  • [Rules] Improved indexOf(_ci) and equals(_ci) string function handling, update documentation
  • [Rules] Introduce commands Inc and Dec, update documentation
  • [Rules] Update ESPEasy ColorCode config for dec and inc commands
  • [ColorCode] Add missing command for P141
  • [Build] Add COLLECTION F builds
  • [P118] Bugfix for crash during startup

Zafrir Ron (5):

  • LCD Rules example
  • spelling correction
  • Impoved version
  • Fix set speed comment
  • Fix to asyncevent & speed comment

chromoxdor (23):

  • modulo+number is now categorized as number
  • [style][layout] css optimizations, values table improvement
  • the zero is not necessary i guess
  • turns out there is more to remove in the css...
  • forgot to minify and embed the css
  • removed one sys var wrap and re added pre tag
  • and i forgot to change p021....
  • and xmp is out
  • Update DevicesPage.cpp
  • made the number inputfield better fit (except firefox)
  • forgot to change width to max-width
  • back to input type=search
  • Update Rules.rst
  • Update JSON.cpp
  • Update Custom-sample.h
  • corrected typo
  • update for #4421
  • update

jimmys01 (1):

  • Move Custom IR related defines in the appropriate file

mega-20221105

05 Nov 15:55
Compare
Choose a tag to compare

Release mega-20221105

Changes in mega-20221105 (since mega-20220809):

Alex (1):
Update release.yml

Jason2866 (2):
Fix boot flash mode
opi flash needs to be flashed in mode dout

Max Prokhorov (1):
Fix github-script v5 breaking change

TD-er (168):
[Framed OLED] Load/save settings in smaller memory chunks
[Framed OLED] Reduce memory usage, especially during load/save
[OLED Framed] Prevent copy of strings when calling some write functions
[PlatformIO] Do not extend multiple PIO envs
[PlatformIO] Change src_filter into build_src_filter for PIO 6.0.0
[PlatformIO] Revert to PlatformIO 5.2.5
[Cleanup] Reduce build size ESPEasySerial inline functions to .cpp
Reduce blocking delays in Blynk command
[Framed OLED] Simplify code to send P036 events
[GPS] Make a bit more clear the GPS has a fix.
[LoRaWAN] Reduce build size + more sensible default settings.
[LoRaWAN] Make RX2 frequency configurable + allow write RN2483 commands
[LoRaWAN] describe how to reduce nr of OTAA joins
[ESP32 PN532] Fix reading PN532 on ESP32
[PN532] Make reading tags non-blocking
[PN532] Disable Debug code + remove last global variable
[PN532] Fix switching I2C clock frequency on ESP32
[I2C] Fix build for ESP8266 (no Wire.end() )
[Cleanup] Renamed other enums related to PLUGIN_TASKTIMER_IN
[ESP32 flash mode] Change flash mode board defs to use QIO for ESP32
[Build] Fix include path + add CircularBuffer to libs folder (#4201)
[ESP32] Include SPI memory_type in board defs
[Build scripts] Only show memory_type on ESP32 builds
[Rules] Fix matching events with first eventvalue being zero (#4198)
[Rules] Simplify & fix stripping leading zeroes
[ESP32 flash] Move back to DOUT and DOUT_QSPI
[SendToHttp] Do not set HTTP authentication when no user/pass set
[ESP32] Use patched 2.0.4 framework-arduinoespressif32 to fix SPI modes
[PMSx003] Fix buffer overflow when reading sensor data
[Build] Include ESPEasy_config.h everywhere
[Build] Add missing include of Wire.h in ESPEasy_common.h
[Build] Fix ESPEasySerial build with DISABLE_SOFTWARE_SERIAL defined
[Build] Explicit ignore SD libraries on "minimal" builds
[Cleanup] Reduce build size for minimal builds
[Cleanup] Disable MCP/PCF commands when P009 and P019 not included.
[Cleanup] Remove MCP/PCF related code when plugins not included
[Build] Reduce build size reducing ArduinoJSON instances
[Build] Fix compile time defines strings with spaces
[Build Version] Generate build version based on date
[Build] Fix build error due to missed function renames
[Build] Fix warning when P009 or P019 is not included in build
[Custom build] Remove #include <Arduino.h> from Custom_sample.h
[Sysinfo] Add functions to compute runtime ABP and flash frequency
[Sysinfo] Code cleanup & add Xtal frequency
[Sysinfo] Fix some code/logic duplication
[Sysinfo] Fix determining flash mode on ESP32-S2
[Build] Move include/ESPEasy_config.h to src/include (#4216)
[Sysinfo] Use FSPI define addressing the SPI bus to the flash
[SendToHttp] Fix HTTP 401 and 404 error
[Network Timeout] Apply workaround to set timeout in msec on ESP32
[Cleanup] Uncrustify _N001_Email.cpp
[HTTP] Change read timeout into HTTP code 200 when "Ignore Ack" is set
[SendToHttp] Set timeout to 1000 msec when set to ignore ack
[Controller] Make timeout dynamic, depending on actual results
[Controller] Don't make timeout dynamic if ignore acknowledgement is set
[Git] Add _*Custom.h to .gitignore
[String] Use .equals for flash strings instead of ==
[Build] Set ESP8266/Arduino to use actual 'staging' code
[ESP8266] Change resetmethod to "nodemcu" to fix reset during flash
[Build] Switch ESP32 board definitions to use DIO mode
[RN2483] Forward declaration of functions
[ESP32 MAX] Fix not defining LIMIT_BUILD_SIZE on MAX builds
[Build_CDN] Generate CDN prefix URL based on Git tag
[Build_CDN] Generate CDN prefix URL based on Git tag
[Build CDN] CDN URL prefix matches checkout tag or latest tag
[Build CDN] Serve ESPEasy auto css by default
[Build] Remove all debug logs when BUILD_NO_DEBUG is set
[Debug Log] Fix reduces log level combo box with BUILD_NO_DEBUG set
[ESP ETH] Reset GPIO states before calling ETH.begin()
[Build] Reduce bin size & merge NodeStruct from ESPEasy-NOW PR
[Build] Add missing dependency check C013 needs FEATURE_ESPEASY_P2P
[Cleanup] Minor tweaks to include less code during compile
[Cleanup] Uncrustify WebServer/RootPage.cpp
[Cleanup] Remove code duplication + concat function to reduce bin size
[CSE7766] Fix wrong debug check wrapper P077 (#4248)
[MH-Z19] Fix executing command for MH-Z19
[PZEM004T] Fix nullptr dereference (#4251)
[Build] Reduce build size by doing less flash string conversions
[Build] Fix missing controllers to ESP32 "Collection" builds
[Build] Do not (yet) define USES_ESPEASY_NOW for MAX builds
[Build] Add FEATURE_RULES_EASY_COLOR_CODE build option
[ESPEasy p2p] Fix crashes (#4261)
[GPIO] Fix bug in GPIO command parsing (#4271)
[Build] Reduce build size for energy and display builds CDN JS/CSS
[CodeMirror] Fix loading code mirror CSS from filesystem
[CDN] Serve static files with cache-control from file system
[build] Disable normal_alt_wifi_ESP8266_1M due to bin size
[CDN] Cleanup the CDN code
[CDN] Browser cache embedded Favicon and CSS
[Build] Fix build on ESP32
[CDN] Only load codeMirror files on Rules/Custom page + add Expires
[CDN] Add Last-Modified header when serving built-in static files
[CodeMirror] Link JS in the HEAD & don't use defer on those.
[WiFi] Prevent setting same WiFi mode multiple times
[SysVars] Fix sunrise/sunset offset (%sunrise-1h%)
[Build] Reduce build size to make minimal OTA_FHEM_HA fit again
[String parse] Cleanup formatting transformation function
[Cleanup] Use roundf or lround where appropriate
[Build] Reduce build size by removing unneeded pow function calls
[WiFi] Change Espressif SDK to SDK221
[WiFi] Prevent reconnect loop
[WiFi] Check scan results for known candidates
[WiFi] Make WiFi reconnect more predictable
[WiFi] Fix WiFi connect timeout handling
[ADC] Internal ADC plugin reading Vcc on _VCC builds
[WiFi] Limit WiFi logs on size challenged builds
[Cleanup] Reduce bin size when using timing stats
[Commands] Fix accepting invalid commands
[Factory Default] Fix default settings for SSID2
[Factory Default] Fix default settings for SSID2
[WiFi] Reduce time needed to connect to WiFi
[WiFi Setup] Fix serving CSS on initial WiFi setup
[Time] Fix check whether real time is set
[p2p NTP] Update time via p2p node when NTP not set or unreachable
[p2p NTP] Fix build includes
[p2p NTP] Fix applying NTP received from peers
[p2p NTP] Prevent receiving random data from old ESPEasy nodes
[p2p NTP] Fix log entry showing correct time source
[Webserver] Fix strange crashes when serving flash strings
[GPIO] Add option for longpulse repeat
[LongPulse] Stop scheduled pulse when setting GPIO + add waveform call
[Longpulse] Cleanup and document
[Longpulse] Fix missing includes
[Dallas] Add option to auto select first sensor found
[Dallas] Document the new Auto Select Sensor feature
[Build] Make ESP8266 Collection D VCC fit again
[Build] Make using ESP8266 Waveform a build feature
[Build] Disable ext. RTC on limited build size builds
[Build] Reduce bin size by excluding libs from 1M builds
[PVS Studio] Fix some uninitialized members found by PVS Studio
Fix build error
[Cleanup] Change time wander unit to ppm
[Dallas] Add DS28EA00 chip (#4292)
[WiFi] Retry to connect to WiFi when set AP is not reachable
[Cleanup] Reduce bin size by assigning smaller types to enums
[Cleanup] Reduce bin size by assigning smaller types to enums
[Sonoff POW] Do not use volatile ints to check for divide by zero
[GPS] Fix set system time via GPS
[GPS] Use custom GPS view of plugin stats data
[PMSx003] Support I2C UART bridge on ESP32
[Ext RTC] Fix updating ext. RTC from other sources like p2p nodes
[Time] Clean up code + show UTC time stored in RTC
[sunset/sunrise] Fix parsing multiple instances of %sunrise...%
[Cleanup] Uncrustify ESPEasy_time
[time] Limit settime update frequency from p2p nodes
[NTP] Fix prefer NTP over p2p time sync
[NTP] Make "p2p time sync" only preferred after at least 2 hours.
[Ext RTC] Round time set to ext. RTC to reduce error to +/- 500 msec
[time] Reduce time update frequency from the same time source
[p2p time] Show ESPEasy unit nr used as time source
[p2p time] Do not use own node as p2p source.
[Build] Update pygit2 lib to fix GitHub Actions builds
[Build] Fix missing include
[SI70xx] Set default I2C address when upgrading using old settings
[HLW8012] Improve stability and resolution Voltage/Current measurement
[HLW8012] Don't use double when float will suffice
[Setup] Fix CSS on setup page + WiFi/Eth event handling
[Settings] Reintroduce MD5 checksum to prevent saving unchanged settings
[PlatformIO] Add missing ESP32 ETH envs (energy/display/climate/neopixel)
[WiFi/Eth] Split handling of WiFi and Ethernet events
[Eth] Split WiFi and Eth event data + fix static Ethernet IP
[WiFi] Increase time between WiFi reconnects
[Ethernet...

Read more

Release mega-20220809

09 Aug 08:22
Compare
Choose a tag to compare

WARNING!!!!

Please be aware this build uses the latest ESP32 SDK which does seem to have changed a lot in the bootloader.
This may have some serious side-effects regarding how the flash is accessed.

Please do NOT upgrade to this version on ESP32 nodes running LittleFS, especially when these cannot easily be flashed using serial.

Known issues:

  • ESP32 builds with LittleFS may cause crashes and/or boot loops on some systems. (even filesystem corruption) ( #4200 , #4194 , platformio/platform-espressif32#877 (comment) )
  • Rules events with a 0 as first argument may no longer work. ( #4198 )
  • SendToHTTP may probe for login, which on some systems may return a 401 HTTP error.

Changes in mega-20220809 (since mega-20220616):

DMoosh (1):

  • Update README.md

Florin (1):

  • Notification Page to Display GPIO pins when in use.

TD-er (146):

  • [ESP8285] Remove ESP8285 specific builds, detect at runtime (#3848)
  • [Provisioning] Add command to download firmware OTA
  • [Provisioning] Fix missing includes
  • [Build] Fix missing line in .ini file due to merge issues
  • [PlatformIO] Update to PIO 6.0.1
  • [PlatformIO] Clean requirements.txt files to only the essentials
  • [Provisioning] Fix missing include
  • [P002 ADC] Move PluginTaskData to separate file
  • [ADC] Add binning and multi-point processing of values
  • [ADC] Improve binning stability
  • [ADC] Speed up formula parsing
  • [ADC] Add caching for binning range
  • [ADC] Add fields to load/save multipoint values.
  • [ADC] Add option to paste many variables at once
  • [Cleanup] Small optimizations to reduce bin size
  • [Cleanup] Reduce loading controller settings when not ready to process
  • [Cleanup] Add function addFormSelector_YesNo to remove code duplication
  • [Cleanup] Reduce build size by combining controller queue types
  • [Controller Queue] Add missing includes
  • [PVS Studio] Fix some hints provided by PVS Studio
  • [P073, PVS Studio] Fix bug in font handling for Siekoo display
  • [ADC] Fix compiler warnings + remove binning for LIMIT_BUILD_SIZE builds
  • [Firmware Download] Fix downloading with no content length set
  • [Download] Fix warning signed/unsigned
  • [BME280] Allow to take samples using taskRun (#3879)
  • [BME280] Clean-up code
  • [BME280] Proper handling error states, send error event.
  • [BME280] Make TaskError event more useful by adding error string
  • [BME280] Update comment to reflect actual behaviour
  • [Cleanup] Reduce build size web form functions
  • [Cleanup] Reduce bin size deduplicate webform switch plugins (001/009/019)
  • [Cleanup] Uncrustify
  • [Cleanup] Minor optimizations to reduce build size
  • [Static Files] Fix option to local store dev page JS file (#4102)
  • [Build] Show proper ESP board name on ESP8266 sysinfo
  • [Build] Do not use commas in ESP board name
  • [PIO] Update to esp8266/Arduino @ 4.0.1
  • [Rules] Disable rules reorder optimization (#4062)
  • [MCP/PCF] Small optimization in code to set MCP/PCF pin range
  • [2nd Heap] No longer use "2nd heap" on all "beta" builds (unstable)
  • [Build] Disable ESP8266 custom beta debug build due to size
  • [Cleanup] Apply minor suggestions from PVS Studio
  • [PlatformIO] Fix upload size for 16M boards, causing bootloops
  • [ADC] Add support for ESP32 ADC factory calibration
  • [PlatformIO] Fix boot loop issues on 16M ESP32 boards
  • [ADC] Fix building on ESP32-S2
  • [Cleanup] Uncrustify Helpers/Hardware.cpp
  • [ADC] Fix build on ESP8266
  • [ADC] Fix crash when importing older ADC task settings enabling binning
  • [ADC] Add charts to show the factory calibration
  • [ADC] Hide Factory calibration data + fix build on ESP8266
  • [ADC] Add chart axis options (e.g. label)
  • [ADC] Add chart to show simulated ADC to output
  • [ADC] Add attenuation option for ESP32
  • [Cleanup] Remove some unneeded HTML code
  • [ADC] Fix building on builds with LIMIT_BUILD_SIZE
  • [ADC] Add pseudo task values via PLUGIN_GET_CONFIG
  • [ADC] Fix reading + cleanup UI
  • [ADC] Add PluginStats to keep history of values
  • [ADC] Fix build issue on LIMIT_BUILD_SIZE
  • [PluginStats] Add generic statistics for tasks
  • [Plugin Stats] Add option for average over last N samples.
  • [Plugin Stats] Use task specific error value
  • [Plugin Stats] Make Plugin Stats optional per task value
  • [Plugin Stats] Add version transitions to ExtraTaskSettings
  • [Plugin Stats] Enable Plugin Stats for all plugins with task data
  • [Plugin Stats] Show statistics + historic samples on all supported tasks
  • [Plugin Stats] Add missing plugins to use the plugin stats too
  • [PluginStats] Add build flags USES_PLUGIN_STATS and USES_CHART_JS
  • [PluginStats] Exclude PluginStats and ChartJS from NeopixelESP8266 build
  • [ADC] Change order of items shown in statistics
  • [ADC] Use set nr of decimals for stats
  • [Cleanup] Move PluginTaskData_base structs to Pxxx_data_struct.h/.cpp
  • [SVG] Revert changes to draw SVG since we're now using ChartJS
  • [ADC] Add computed output values for peaks + fix typo
  • [ADC] Document new options
  • [Plugin Stats] Add stats to plugins to support stats.
  • [Docs] Document accessing Plugin Stats
  • [Docs] Document typical task setup page and task value stats
  • [Plugin Stats] Enable Stats for Sysinfo tasks
  • [Plugin Stats] Reduce memory usage when no stats are used.
  • [Build] Do not limit build size for custom builds with VCC. (#4129)
  • [Plugin Stats] Make labels more clear.
  • [Plugin Stats] Fix strange issues PLUGIN_INIT
  • [Plugin Stats] Fix editing disabled tasks
  • [Plugin Stats] Fix memory leak / low loop count
  • [ESP32] Add cache for ExtraTaskSettings due to load speed on ESP32
  • [Build] Add apt-get update to build.yml
  • [Rules] Fix matching rules with system variables in on...do
  • [SendToHttp] Add option to add credentials in the URL
  • [Rules] Strip leading zeroes (#4134)
  • [Rules] Move logs regarding rules caching to debug
  • [Build] Disable ESPEasy p2p for minimal OTA builds
  • [sendToHTTP] Use same send_via_http as used in Adv. HTTP controller
  • [Cleanup] Reduce build size ESPEasySerial inline functions to .cpp
  • [ESP32] Move to Espressif32 SDK 2.0.4
  • [ESPEasySerial] Fix case sensitive include
  • [ESPEasySerial] Fix incorrect use of static for ESP8266
  • [SendToHTTP] Add Digest Auth
  • [SendToHttp] Clear Basic Auth before using Digest Auth
  • [HTTP] Use the same function for all HTTP controllers + fix timeout
  • [SendToHttp] Generate event with HTTP return code
  • [Web tools] Fix command via Tools page lower case
  • [ESP8285] Clearly state absence of separate ESP8285 builds in README.md
  • [Download] Update using new HTTP Digest Auth implementation
  • [Download] Fix missing include
  • [SendToHTTP] Allow to use http:// formatted URL
  • [HTTP] Document changes to handling HTTP calls + add follow redirects
  • [ADC] Improve factory calibration resolution (ESP32)
  • [ADC] Fix Binning
  • [ADC] Make multipoint charts more intuitive.
  • [ADC] Improve settings UI for Binning + adjust 2-point calibration
  • [ADC] Update docs
  • [ADC] Update documentation
  • [Build] Fix missing #include "ESPEasy_common.h"
  • [Build] Remove Notification code when notifiers disabled
  • [Build] Move some USES_xxx checks and add missing ESPEasy_common.h
  • [Dallas] Fix Dallas 1Wire plugins on ESP32
  • [Dallas] Reduce iRAM usage on ESP8266
  • [NewPing] Rename library from NewPingESP8266 to NewPing
  • [NewPing] Update Library to 1.9.4
  • [NewPing] Re-apply ESPEasy specific additions to NewPing library
  • [NewPing] Use Direct GPIO access to reduce jitter on ultrasonic sensors
  • [DHT] Use Direct GPIO access for DHTxx sensors
  • [DHT] Remove timing critical aspects from reading DHT sensors
  • [DHT] Remove short calls to delayMicroseconds
  • [DHT] Add delay right after waking sensor
  • [DHT] Add missing initialization
  • [DHT] Fix using correct index when recording timings + comments update
  • [DHT] Fix GPIO not yet set to input when DHT wake up.
  • [DHT] Fix switching pinMode(INPUT_PULLUP) way too slow
  • [Direct GPIO] Reduce iRAM usage
  • [DHT] Set the GPIO pull-up resistor explicitly
  • [DHT] Forgot to disable logic analyzer debug pin
  • Revert accidental commit of pre_custom_esp82xx.py
  • [Dallas] Fine tune timings for Dallas sensors
  • [Direct GPIO] Fix using GPIO-16 on ESP8266 (#4175)
  • [Dallas] Add retry to init read or collect data from temp sensor
  • Allow to use leading zeroes on HEX formatted strings
  • [ESP32] Move to framework core 2.0.4.1
  • [PulseCounter] Make ISR function smaller
  • [PulseCounter] Use direct GPIO access to read pin state
  • [PulseCount] Enable PluginStats for pulse counter
  • [Cleanup] Fix some signed/unsigned warnings
  • [Task Settings Cache] Fix save taskValueNames on ESP32
  • automatically updated release notes for mega-20220809

Ton (1):

  • libraries/ITG3205: Missing 'paragraph' from library\nITG3205: Missing 'url' from library

Ton Huisman (72):

  • [Docs] Add missing Tools/Advanced (Rules) screenshot
  • [Docs] Update extensions list for VSCode, remove Atom reference, update some text
  • [Docs] Fix some heading level warnings
  • [Docs] Update styling contrast, add gray and changed options, Retired plugin category, apply changed where appropriate
  • [Docs] Add improved reference to open PIO Terminal
  • [Docs] Updates on writing documentation, remove unused Linux pdf generation setup
  • [P128] Add Max brightness setting
  • [P128] Update documentation
  • [P128] Improvements: Rename variable
  • [Docs] Procedure for configuring a RTC chip
  • [Docs] Add alternatives for RTC configuration, update Rules options after recent change
  • [P116] Add support for ST7735 80x160px with inverted color
  • [P087] Add 'Serial Config' options
  • [P087] Lower minimum baudrate to 300 from 2400
  • [Helpers] enable parseString() family of functions optionally to not trim off white-space
  • [P087] Don't trim white-space from serialproxy_write command argument so f.e. CR/LF can be used to terminate a message
  • ...
Read more