Releases: letscontrolit/ESPEasy
mega-20221224
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
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...
Release mega-20220809
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
0as 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
staticfor 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
- ...
mega-20220616
Release mega-20220616
Changes in mega-20220616 (since mega-20220427):
Bartłomiej Zimoń (8):
- [P2P] set default port to 8266, plus warn about port, partly fix for #3982
- [p2p] more defaults
- [p2p] warn about int number equals 0
- [p2p] update text plus check for port on rootpage
- [p2p] update text info
- [p2p] typo
- Update AdvancedConfigPage.cpp
- [p2p] typo of typo of typo
Boris Krivonog (2):
Gijs Noorlander (2):
- [MQTT commands] Support commands with arbitrary argument position
- [MQTT commands] Fix parsing full command
Mateusz Skowroński (1):
- P031 - fix timing for SHT1X
TD-er (199):
- [Provisioning] Allow to fetch config via commands from HTTP server
- [Provisioning] Add factory default defines to ease deployment of nodes
- [Provisioning] Add documentation
- [Cleanup] Missing include in C013
- [Cleanup] Fix return value of gpio_mode_range_helper (real bug)
- [Cleanup] Uncrustify Commands/GPIO.cpp
- [ESP32] Update to IDF 4.4 Arduino-ESP32 2.0.1
- [ESP32] Allow building LittleFS builds on ESP32
- [Build] Fix case sensitive include
- [Windows Build] Convert IRremoteESP8266 to single cpp file
- [IR build] Fix build issue on IR plugins
- [WiFi ESP32] Disable WiFi TX power settings for ESP32 (IDF4.4)
- [ESP32 IDF4.4] Update to the latest Arduino ESP32 2.0.1.1
- [Webserver] Change chunked buffer size to 1360 bytes
- [Web UI] Small tweaks improving speed serving pages
- [Cleanup] Use .clear() on strings instead of assigning empty string
- [Webserver] Fix serving CSS
- [Web] Allow to stream from file system (e.g. CSS inline)
- [ESP32-S2] Add PlatformIO envs for ESP32-s2
- [IR] Cleanup check for redefine IR plugin USES
- Revert "[Windows Build] Convert IRremoteESP8266 to single cpp file"
- [Build] Fix build of ESP32 max LittleFS build on Windows
- [PIO] Simplify ESP32 env definitions.
- [PIO] Simplify WROVER kit envs and remove WROVER kit ETH builds
- [PIO] Add missing ESP32-S2 build envs
- [IDF4.4] Use Tasmota's IDF 4.4 platform-tasmota-espressif32
- [IDF4.4-v2.0.2] Now actually using the latest espressif/Arduino-esp32
- [LittleFS] Make sure to always define USE_LITTLEFS on LittleFS envs
- [PIO build ESP32] Attempt to fix boot loop on ESP32 with IDF4.4
- [Cleanup] Misc optimisations to reduce build size
- [LittleFS] Some cleanup to fix boot loops ESP32 IDF4.4 for 16M flash
- [IDF4.4 + 16M] Make normal builds with IDF4.4 work on 16M flash
- [IDF4.4 + 16M] Restore missing ESP32 builds
- [Cleanup] Make ESP32 PIO envs a bit more readable
- [Cleanup] Split ESP32S2 envs to separate ini file.
- [PIO build] Do not use commas in build_flags (Linux build fail)
- [PIO] fix incorrect esp32 IRExt envs
- [PIO] add labels to envs which wil later adjusted in extends
- [PIO] Use shorter extends chain for ESP32 max builds
- [PIO] Apparently when referring an env, the 'env:' prefix is needed
- [P096 eink] Fix failing build
- [ESP32 LittleFS] Add old LittleFS library to lib_ignore
- [P118] Disable P118 ITHO for now as it crashes on IDF4.4
- [ESP32 Factory] Fix boot loop on 16M flash nodes using factory image
- [ESP32 factory] Use esptool.py to generate and patch combined binary
- [Build] Add missing esptool==3.2 in requirements.txt
- [ESP32 factory] Revert factory image script to not use esptool.py
- [ESP32 factory] Final fix using esptool.py by Jason2866
- [ESP32 factory] Change -factory.bin to .factory.bin
- [ESP32 factory] using the pio env to find esptool
- [ESP32 build] Restore ESP32 build for 16M1M (using SPIFFS) with Ethernet
- [Libs] Update adafruit/Adafruit BusIO @ ^1.10.0
- [ESP32 IDF4.4] Set CPU frequency to 240 MHz
- [ESP32 Max] Do not use "LIMIT_BUILD_SIZE" on Max builds
- [ESP32 PSRAM] Rename define ESP32_ENABLE_PSRAM to BOARD_HAS_PSRAM
- [Ethernet] Add selector for newer supported Ethernet chips
- [PSRAM] Fix 40 MHz signal on GPIO-17 using Tasmota PSRAM functions
- [Build] Fix build on ESP8266
- [Ethernet] Work-around for bug in IDF4.4 in ETH.linkUp()
- [Cleanup] Fix parameter mismatch floating point formatting String
- [ESP32 IDF4.4] Update to include latest merges
- [PSRAM] Fix incorrect log of found PSRAM
- [Eth] Show state of actual active network device in logs
- [Eth] Power cycle Ethernet device if power pin is defined
- [PWM] Fix PWM and status LED on ESP32 IDF4.4
- [Eth] Add option to autodetect Eth PHY address + documentation
- [ESP32-S2] Disable -flto on ESP32-S2
- Disable -flto on ESP32 due to linker errors.
- [Cleanup] Move defines from Commands/GPIO to DataStructs/PinMode.h
- [ESP32 IDF4.4] Move to platform-espressif32 v2.0.2.1
- [Bugfix] Fix possible crash when printing floating point values
- [Cleanup] Fix define paths on .h files
- [Cleanup] Fix missing paths on #include statements + update I2Cdev lib
- [I2Cdev lib] Change byte to uint8_t
- [ESP32] Update to IDF 4.4 Arduino-ESP32 2.0.1
- [ESP32] Allow building LittleFS builds on ESP32
- [Build] Fix case sensitive include
- [Windows Build] Convert IRremoteESP8266 to single cpp file
- [IR build] Fix build issue on IR plugins
- [WiFi ESP32] Disable WiFi TX power settings for ESP32 (IDF4.4)
- [ESP32 IDF4.4] Update to the latest Arduino ESP32 2.0.1.1
- [Cleanup] Use .clear() on strings instead of assigning empty string
- [Web] Allow to stream from file system (e.g. CSS inline)
- [ESP32-S2] Add PlatformIO envs for ESP32-s2
- [IR] Cleanup check for redefine IR plugin USES
- Revert "[Windows Build] Convert IRremoteESP8266 to single cpp file"
- [Build] Fix build of ESP32 max LittleFS build on Windows
- [PIO] Simplify ESP32 env definitions.
- [PIO] Simplify WROVER kit envs and remove WROVER kit ETH builds
- [PIO] Add missing ESP32-S2 build envs
- [IDF4.4] Use Tasmota's IDF 4.4 platform-tasmota-espressif32
- [IDF4.4-v2.0.2] Now actually using the latest espressif/Arduino-esp32
- [LittleFS] Make sure to always define USE_LITTLEFS on LittleFS envs
- [PIO build ESP32] Attempt to fix boot loop on ESP32 with IDF4.4
- [Cleanup] Misc optimisations to reduce build size
- [LittleFS] Some cleanup to fix boot loops ESP32 IDF4.4 for 16M flash
- [IDF4.4 + 16M] Make normal builds with IDF4.4 work on 16M flash
- [IDF4.4 + 16M] Restore missing ESP32 builds
- [Cleanup] Make ESP32 PIO envs a bit more readable
- [Cleanup] Split ESP32S2 envs to separate ini file.
- [PIO build] Do not use commas in build_flags (Linux build fail)
- [PIO] fix incorrect esp32 IRExt envs
- [PIO] add labels to envs which wil later adjusted in extends
- [PIO] Use shorter extends chain for ESP32 max builds
- [PIO] Apparently when referring an env, the 'env:' prefix is needed
- [P096 eink] Fix failing build
- [ESP32 LittleFS] Add old LittleFS library to lib_ignore
- [P118] Disable P118 ITHO for now as it crashes on IDF4.4
- [ESP32 Factory] Fix boot loop on 16M flash nodes using factory image
- [ESP32 factory] Use esptool.py to generate and patch combined binary
- [Build] Add missing esptool==3.2 in requirements.txt
- [ESP32 factory] Revert factory image script to not use esptool.py
- [ESP32 factory] Final fix using esptool.py by Jason2866
- [ESP32 factory] Change -factory.bin to .factory.bin
- [ESP32 factory] using the pio env to find esptool
- [ESP32 build] Restore ESP32 build for 16M1M (using SPIFFS) with Ethernet
- [Libs] Update adafruit/Adafruit BusIO @ ^1.10.0
- [ESP32 IDF4.4] Set CPU frequency to 240 MHz
- [ESP32 Max] Do not use "LIMIT_BUILD_SIZE" on Max builds
- [ESP32 PSRAM] Rename define ESP32_ENABLE_PSRAM to BOARD_HAS_PSRAM
- [Ethernet] Add selector for newer supported Ethernet chips
- [PSRAM] Fix 40 MHz signal on GPIO-17 using Tasmota PSRAM functions
- [Build] Fix build on ESP8266
- [Ethernet] Work-around for bug in IDF4.4 in ETH.linkUp()
- [Cleanup] Fix parameter mismatch floating point formatting String
- [ESP32 IDF4.4] Update to include latest merges
- [PSRAM] Fix incorrect log of found PSRAM
- [Eth] Show state of actual active network device in logs
- [Eth] Power cycle Ethernet device if power pin is defined
- [PWM] Fix PWM and status LED on ESP32 IDF4.4
- [Eth] Add option to autodetect Eth PHY address + documentation
- [ESP32-S2] Disable -flto on ESP32-S2
- Disable -flto on ESP32 due to linker errors.
- [Cleanup] Move defines from Commands/GPIO to DataStructs/PinMode.h
- [ESP32 IDF4.4] Move to platform-espressif32 v2.0.2.1
- [Cleanup] Fix missing paths on #include statements + update I2Cdev lib
- [I2Cdev lib] Change byte to uint8_t
- [EDP32 IDF4.4] Fix merge issues
- [IDF 4.4] Update to platform-espressif32 v2.0.2.2
- Temporary revert move operator on RamTracker
- [MQTT commands] Add command via MQTT with variable parameters
- [IDF 4.4] Update to espressif/arduino-esp32 tag 2.0.3
- [WiFi] Prevent stack overflow when WiFi connection isn't successful
- [WiFi] Properly clear duplicates from WiFi scans
- [WiFi] Fix connecting to the strongest WiFi AP
- [Build] Add missing include in Servo.cpp
- [IDF 4.4] Update to platform-espressif32-2.0.3rc1
- Revert "[IDF 4.4] Update to platform-espressif32-2.0.3rc1"
- [Build] Fix build on display plugins using NodeMCU pin labels
- [MQTT] Reduce rate of MQTT reconnects when failing to reconnect
- [IDF 4.4] Update to latest platform espressif32 zip file
- [Web flash] Let user choose to erase flash or not upon flashing
- [Eth] Fix loosing DNS info when disabling WiFi after ETH got IP
- [ETH] Cleanup unused variable
- [Rules] Fix issues with rules one-liners (#4025)
- [ESP32] Fix PWM on IDF4.4
- [Docs] Fix formatting of C005 OpenHab MQTT documentation
- [MQTT Events] Allow receiving events + eventvalues via MQTT (C005)
- [Provisioning] Cleanup code to manage internal file names
- [Provisioning] Cleanup of no longer needed strings + use RULESETS_MAX
- [Misc] pre-merge small fixes from pending ESPEasy-NOW PR
- [Web] Cleanup code to show MAC address input field
- [MQTT events] Do n...
mega-20220427
Release mega-20220427
Changes in mega-20220427 (since mega-20220328):
Blazej222 (1):
Allow OTA attempt even when not enough space
Gijs Noorlander (2):
[MQTT commands] Support commands with arbitrary argument position
[MQTT commands] Fix parsing full command
Leonardo Rizzi (1):
Update _controller_substitutions.repl
Peter Kretz (1):
Check of x and y against height and width has to be done before
TD-er (50):
[MQTT commands] Add command via MQTT with variable parameters
[Build] Make sure to add fs:: namespace to fs::File
[Pip] Remove conflicting version limit on semantic-version
[WiFi] Prevent stack overflow when WiFi connection isn't successful
[WiFi] Properly clear duplicates from WiFi scans
[WiFi] Fix connecting to the strongest WiFi AP
[MQTT] Reduce rate of MQTT reconnects when failing to reconnect
[Build] Disable test_X_beta_ESP8266 builds due to build size
[Rules cache] Add handler for speeding up rules parsing
[Rules] Let the RulesHelper parse line by line
[Rules] Cache rules per line on ESP32
[Rules] Only parse lines that need to be parsed
[Rules] Nesting level does not matter to stop parsing rules file
[WiFi] Rate limit checking WiFi.isConnected()
[Rules] Small tweaks to speed up processing rules
[Rules] Rate limit calls to background tasks
[Rules] Minor tweaks to improve rules execution speed
[Rules] Cache which rules lines start with "on " for ESP32
[Rules] Fix missing include
[Rules] Add caching to speed up rules processing
[Rules] Fix build issue on ESP32
[Rules] Fix build on ESP32
[Rules] Fix missing include on ESP32
[Rules] Improve speed processing rules + option to disable rules cache
[PlatformIO] Update ESP32 PIO platform to 3.5.0
[Rules] fix parsing events starting with " do"
[Rules] Add %eventname% and %eventpar% to allow for simpler rules
Rate limit the number of background task calls to improve speed
[Timing Stats] Add process_system_event_queue() to the timing stats
[Rules] Add setting to disable cached event reorder
[Rules] Allow for more than 4 %eventvalueN%
[Rules] Document using > 4 eventvalues + using string type eventvalues
[Rules] Add %eventvalue0% to get all arguments at once.
[Rules] Fix compiler warning compare signed/unsigned
[Rules] Check for invalid %eventvalueN% occurences
[Rules] Add documentation on %eventvalue0%
[Rules] Allow for empty event values
[Rules] Add option for default values on non-existing eventvalues
[Rules] Add 'restrict' keyword to safely allow executing %eventvalueN%
[Rules] Fix issue when processing eventvalue without default value
[Rules] Update documentation regarding event values.
Wrap eventvalues in quotes when needed for generated events
[Fonts] Only include font data once in built bin file.
Add Fixme for later reducing IRAM usage on font size struct
[Cleanup] Remove duplicate code to wrap text in quotes
[MQT import] Reduce memory usage, especially during load/save
[Cleanup] Fix tricky PLUGIN_EXIT calls
[MQTT Import] Unsubscribe from MQTT topics on exit
[MQTT import] Add log when task cannot unsubscribe as others use it
automatically updated release notes for mega-20220427
Ton Huisman (247):
[P037] Add mapping, filtering and json support - Mapping string to numeric/other string - Filtering to limit processed data - json support to process complex messages
[P037] Fix build issues (missing include, testing size)
[P037] Fix some bugs, add filtering with list, some code optimization
[P037] Bugfixes, improvements, filter per Topic, re-org Device setup
[P037] Some minor corrections
[P037] Add documentation
[P037] MQTT Topic match multi-level standards compliant
[P037] MQTT Wildcard handling improvement
[P037] Proceed with invalid numeric value as NaN
[P037] Code cleanup and improvements, documentation improvements
[P037] Actually store the NaN value if applicable
[P037] Adjust for changed compare function
[P037] Use proper double variables for comparisons
[P037] Reduce String re-allocations and memory use
[P037] Additional merge fixes
[P037] Optimize string handling/passing
[P037] Source formatting (uncrustify)
[P037] Disable development logging
[P037] Add conditional flag to force all features
[P037] Merge changes for byte to uint8_t change
[P037] Optimizations and some source reformatting
[P116] ST7735/ST7789 TFT Plugin and AdafruitGFX helper
[Build] Add ST7735 library to libdeps for ESP32
[Build] Fix ST7735 library libdeps for ESP32
[Build] Fix ST7735 library libdeps for ESP8266
[Build] Fix ST7735 library libdeps for ESP8266
[Build] Fix ST7735 library libdeps
[Build] Fix ST7735 library libdeps
[Build] Fix Adafruit_ST77xx library libdeps
[AdaGFX helper] Only compile when used/needed
[AdaGFX helper] Treat like an optional 'plugin'
[AdaGFX helper] Fix for custom_ir build
[AdaGFX helper] Add validation check (optional, if build size permits)
[P116] Small code improvements
[AdaGFX helper] Add debug logging to validation check
[AdaGFX helper] Small improvements
[P116] Textual changes, only generic type names shown
[AdaGFX helper] Add color conversions, improved validation and compile-time defines
[AdaGFX helper] Missed a file for compile-time defines
[AdaGFX helper] Implement TextPrintMode, get cursor coordinates, fixes
[P116] Use new features of AdafruitGFX_helper
[P116] Reorder some device settings
[P116] Add triggerCmd 'backlight,' command
[P116] Reorder more device settings
[AdaGFX helper] Corrections and improvements
[P116] Add default color settings
[AdaGFX helper] Argument validation corrections
[Docs] Fix small typo in tools.rst
[P116] Add documentation, including AdafruitGFX_helper commands
[AdaGFX helper] Fix a missing conditional compilation check
[AdaGFX helper] Improve 'clear' command, add 'rot' command
[P116] Refactor some generic functions to AdaGFX helper
[AdaGFX helper] [P116] Fix: Restore intended transparent background feature
[AdaGFX helper] Improvements for compatibility with P095 ILI9341
[P095] Initial implementation of AdaGFX Helper, work in progress
[AdaGFX helper] Moved more generic code here, improvements
[P116] Less conditional compilation, improvements
[P095] Complete overhaul w. AdaGFX Helper, settings like P116, Use PluginStructs for multi-instance, some work in progress
[AdaGFX helper] Add/update unicode-char conversions
[AdaGFX helper] Add/update unicode-char conv, add txz and asciitable commands
[P116] [P095] Minor update for AdaGFX helper update
[P116] Documentation corrections
[AdaGFX helper] Bugfix,apply txp/txz compatibility correction
[P095] Remove duplicate clear handler
[P096] Initial implementation of AdaGFX Helper, work in progress
[AdaGFX helper] Fix typos in unicode character conversions
[AdaGFX helper] Enable subcmd proc. from template
[AdaGFX helper] Change subcmd trigger, bugfixes [P095][P116] Allow longer template lines, always process subcmds
[P095][P116] Improvements in template processing
[AdaGFX helper] Improvements and corrections
[P095] Re-order settings, minor improvements
[P116] Re-order settings, minor improvements
[P096] Complete overhaul w. AdaGFX Helper, settings like P116, Use PluginStructs for multi-instance, some work in progress [LOLIN_EPD] Update library to support extra devices
[P037] Reformatted using Uncrustify, string & logging optimizations
[P037] Fix filter input validation, use string.isEmpty() where possible
[P037] Small source reformsatting
[P037] Small improvements
[P037] Restore required include
[P037] Reduce info-logging somewhat
[P037] Fix JSON filtering & resizing bugs
[AdaGFX helper] Fix color parsing bug
[P116] Explicitly initialize all ST7789 resolutions
[P116] Add support for ST7789 240x135 resolution
[AdaGFX helper] Rename color(depth) enum values
[P096] Fix compiler warning on 'delete eInkScreen'
[AdaGFX helper] Add setting for Fill text background
[P116] Update documentation
[P116] Simplify initialization
[P095] Simplify initialization
[P096] Simplify initialization
[P095/P096/P116] No 'read' action if all Line fields empty, log Exit, optional splash text
[P116] Swap resolution for 135x240 display
[P096] Fixes to Lolin EPD library, fix bg color conversion
[Lolin EPD lib] Fix class destructor issues
[Lolin EPD lib] Fix class destructor issues
[AdaGFX helper][P095][P096][P116] Fix many bugs (init, rotation, destructors)
[AdaGFX helper] Don't remove trailing spaces
[P116] Fix displaybutton handling (based on P036)
[P095] Fix displaybutton handling (based on P036)
[AdaGFX helper] Move settings to generic functions
[AdaGFX helper] Fix row/col recalculation on rotation change
[AdaGFX helper] Restore text-end trimming
[AdaGFX helper] Add vert. font offset where needed, add 16pt font, include all fonts in MAX builds
[AdaGFX helper] Fix font issues, add some fonts, remove 1 font
[AdaGFX helper] Handle proportional font widths correctly
[AdaGFX helper] Disable fonts used during debugging
[AdaGFX helper] Bugfix monospaced fonts
[AdaGFX helper] Fix for fonts with 0-width space
[P037] Documentation improvements
[P116] ifdef error fixed
[Storage] Add optional offset argument to Load/SaveCusto...
mega-20220328
Release mega-20220328
Changes in mega-20220328 (since mega-20211224):
Leonardo Rizzi (1):
Typo in comment of P074
Sven Briesen (1):
Add docs for the lib
TD-er (190):
[PWM motor] Add _P098_PWM_motor.ino
[PWM motor] Minor tweaks
[PWM Motor] Add proper debounce to limit switches
[PWM motor] Move P098 to "testing A" due to iRAM usage
[PWM Motor] Uncrustify
[PWM Motor] Restore positions at boot & format GPIO overview
[PWM Motor] Cleanup GPIO selection code
[GPIO selection] Make conflicting pins more clear in the web interface
[PWM Motor] Fix setting GPIO state when start/stop motor
[PWM Motor] Temp disable interrupts when processing ISR
[GPIO selection] Filter possible GPIO pins based on needed properties
[PWM Motor] Fix crash on handling limit switch pulse
[PWM Motor] Simplify processing debounce on limit switches
[Core 3.0.0] Allow building using esp8266/Arduino core 3.0.0
[Core 3.0.0] Rename deprecated ICACHE_RAM_ATTR to IRAM_ATTR
[WiFi] Allow longer scan time per channel
[Memory] Move controller queue elements to IRAM heap
[Memory] Store event queue in IRAM 2nd heap
[Memory] Move web log entries to IRAM 2nd heap
[Memory] Fix crashes using IRAM 2nd heap
[Memory] Do not switch heap from .ino or .h files.
[memory] Store p2p Nodes information in 2nd heap
[ESP32] Fix build issues
[Memory] Fix build issues when using 2nd heap (PIO define issue)
[Libs] Explicit define Adafruit BusIO library + version
[Cleanup] Keep flash string when executing internal commands
[Memory] Fix strange crashes due to not using correct heap
[Memory] Switch to DRAM heap on every loop and when adding plugins
[Reduce size] Add build flag to remove the 4-bytes alignment for PSTR()
[Webserver] Fix unneeded copy of object when serving data(#3693)
[Mutex] Fix no longer using fishy assembly for ESP8266 mutex
[PIO libs] Update Adafruit BusIO to 1.8.1
[2nd heap] Make sure DRAM heap is selected when making [CN]Plugin calls
[WiFi scan] Push scans to temp list first to store in 2nd heap
[Framed OLED] Fix crashes when using 2nd heap
[Numerical] Fix bug where "-" is considered numerical
[Cleanup] Wrap strings in F()
[Web UI] Update served static files
[Memory] Fix crashes on serving flash strings with 2nd heap active
[Memory] Core 3.0.0 = SDK3, Beta = staging + 2nd heap
[PIO] Set build_unflags for all esp8266 build envs
[WebUI] Allow slightly longer flash strings to be sent in a single chunk
[PIO] Cleanup use of build_unflags
[Memory] Fix web log buffer using 2nd heap
[Memory] Store more runtime data in 2nd heap
Move to esp8266/Arduino @ 3.0.1
[Cleanup] Fix some possible uninitialised members & other loose ends
[Cleanup] Fix bugs reported by PVS Studio
[Memory] Fix reboot on 2nd heap sorting plugins
[Cleanup] Fix return value in MQTT Publish command
[Cleanup] Use of "byte" as a type. uint8_t or (C++17) std::byte are better
[LoRaWAN] Fix crash when LoRa or serial could not be allocated
[Libs] Don't use "byte" as type anymore
[Cleanup] Don't use "byte" as type anymore (.ino files)
Fix uninitialised members of RegExp
[Memory] Allow to disable collecting timing stats to save RAM
[Framed OLED] Reduce memory usage slightly.
[ESP32] Fix merge issue
Add custom_beta_IR_ESP8266_4M1M build env
Fix build issue with updated Adafruit BusIO library
[PIO] Fix merge issue
[core 3.0.2] Update to esp8266/Arduino 3.0.2
Let toString(UnaryOperator op) output FlashString
[Core 3.0.x] Update all references to core_3_0_2
[ser2net] Remove tricky temp char pointer use
[Commands] Make sure commands are converted to String before executing
[Logging] Don't use const char* as function argument
[Framed OLED] Fix build issues with PLUGIN_036_DEBUG defined
[Cleanup] Do not use const char* as function argument for URLEncode
[SD log] Fix merge issue on log to SD
[Build] Add -fno-strict-aliasing as build flag make builds more stable
[PIO] adafruit/Adafruit BusIO @ ~1.9.0
[PWM motor] Add plugin to "testing D"
[PWM motor] Add encoder timeout
[PWM motor] Add PWM soft start/stop
[PWM motor] Add configurable duty cycle
[Web UI] Update tasks with no configurable interval every 1 second
[Web UI] Suggest reset flash write count command in error message
[GCC] Use GCC 10.3 bugfix for ESP8266 core 3.0.2
[Webserver] Change chunked buffer size to 1360 bytes
[Web UI] Small tweaks improving speed serving pages
[Webserver] Fix serving CSS
[Web] Allow to stream from file system (e.g. CSS inline)
[Webserver] Reduce resources when serving file from file system
[Dashboard] Use less resources when serving dashboard.esp
[Cleanup] Cache some more constant flash chip values
[Cleanup Cleanup] Add missing include
[Bugfix] Fix possible crash when printing floating point values
[Cleanup] Remove some unneeded conversion to float P073 7DGT
[ESP8266 v3.0.2] Update lib_deps
[Cleanup] Fix missing paths on #include statements + update I2Cdev lib
[Cleanup] Fix define paths on .h files
[ESP8266 2nd Heap] Store log buffers in 2nd heap
[2nd heap] Load webpage template and string load in 2nd heap
[Cleanup] Improve readability for lowest memory usage
[Cleanup] Fix merge issue, remove forward declaration duplicate
[I2Cdev lib] Change byte to uint8_t
[P016] Reduce memory usage during load/save
[P016] Convert settings on the fly, using less memory
[P016] Cleanup settings convert and save routine
[P016] Make sure to always convert settings on load
[P016] Uncrustify P016_data_struct
[Task Save] Delete task data before saving when possible
[Task Save] Make sure to explicitly PLUGIN_EXIT on saving settings
[Web UI] Serve web template immediately to client (less RAM usage)
[Web UI] Serve web template immediately to client (less RAM usage)
[Web] Add missing include
[usec timing] Use 64 bit variables when comparing usec timing
[HCSR04] Remove loglevel depending timing showing useless log
[Static files] Update link to CDN delivered content to latest build
Do include degree symbol on limited build sizes
[Cleanup] Serve 2 char flash strings as 2 chars on web pages
[Cleanup] Fix signed/unsigned compare warning
[Cache] Cache nr of task value decimals
[SDK3.0] Disable normal_302_ESP8266_1M due to build size
[SSDP] reduce memory usage on SSDP schema
[Cleanup] Reduce bin size handling large switch statement
[Cleanup] Reduce bin size on longTermTimer by implementing in .cpp
[JSON] Improve speed serving JSON + make parsing numericals better
[Cleanup] Slightly reduce bin size using chars instead of flash strings
Revert caching nr decimals due to strange issues.
[JSON] Remove some code duplication generating JSON
[Cleanup] Replace some short flash strings with chars
Keep "getDeviceIndex error in Device Vector" check
[INO to CPP] Adapt __Plugin.ino to .h/.cpp
[INO to CPP] Adapt __CPlugin.ino to .h/.cpp
[INO to CPP] Rename Cnnn.ino to Cnnn.cpp
[INO to CPP] Mark ESP8266/ESP32 specific plugins in _Plugin_init.h/.cpp
[INO to CPP] Adapt __NPlugin.ino to .h/.cpp
[INO to CPP] Rename Nxxx.ino to .h/.cpp
[INO to CPP] Fix missing forward declarations in C018.cpp
[Build] Unflag -fexceptions and build flag -Os to reduce bin size
[SendToHTTP] Add some checks for timeout to send to HTTP
[2nd Heap] Disable using 2nd heap for non-String objects
[Webserver] Fix "Templ: Unknown Var : content"
[Low Mem] Add checks for successful String memory allocation
[WebServer] Speed up serving pages and slight reduction of RAM usage
[RAM Tracking] Disable detailed RAM tracking + make it a setting
Fix build error WiFiClient doesn't have getTimeout()
[CSV] Stream CSV directly to the client, not using RAM
[Cleanup] Replace empty string assignment with .clear()
[Cleanup] Write single char units as char instead of flash string
[Cleanup] Do not generate temp strings that can be streamed to client
[Cleanup] Use flash strings where needed or chars for single char string
[Cleanup] Direct initialise selection options where possible
[Cleanup] Misc cleanup to reduce build size
[WiFi] No longer destruct and recreate WiFi object on init
[Build Flag] Add -s flag on ESP8266 to explicit strip unused parts
Fix build error on ESP32
[WebServer] Do not use substring to serve larger strings
[Cleanup] Change NULL to nullptr
[Cleanup] Use F() macro where possible and less String conversions
[WebServer] Tune to faster serving pages using less memory
[Build] Fix build error after change to use flash string
[RAM tracker] Not logging ram tracker when not enabled.
[PLUGIN_READ] Do not call PLUGIN_READ when not enabled.
[Webserver] Use move operator when possible to prevent copy strings
[Webserver] Fix crashes on 1 heap setups with serving flash strings.
[Cleanup] Uncrustify P118 ltho
[P118 ltho] Fix some very basic const issues.
Disable P118 Itho for 2nd heap builds to make it fit
[Log] Prevent String copy when adding log
[Log] Make sure to allocate 2nd heap when available
[Log] Call addLogMove where log Strings can be moved instead of copied
[Log] Fix cleaning up Web log buffers + buffer efficiency
[Log] Fix freeing memory in the log struct.
[Memory] Free allocated memory in Strings .clear() does not ...
mega-20211224
Release mega-20211224
Changes in mega-20211224 (since mega-20211105):
StefanNetzer (15):
- Update _P043_ClkOutput.ino
- add events
- added TDs recommendations
- cleanup
- resync to GitHub
- Update _P043_ClkOutput.ino
- added PLUGIN_VALUENAME2_043
- Update _P043_ClkOutput.ino
- Update _P043_ClkOutput.ino
- Update _P043_ClkOutput.ino
- added output data type
- replaced all by simple
- restored
- fixed link error
- using output value definition from P004
TD-er (22):
- [Cleanup] Fix lots of missing delete calls to free memory
- [P095 ILI9341] Convert to use PluginDataStruct
- [P095 ILI9341] Renamed functions in P095 plugin
- [P096 E-ink] Convert to use PluginDataStruct
- [Build] Fix case sensitive mixup in include path
- [Build] Correct correct include path depth
- [P095 P096] Convert to use PluginDataStruct
- Revert changes to P095 and P096 Moved to PR #3835
- [ThermoOLED] Check for successful allocation of display object
- [Domoticz] Only incoming MQTT on tasks with controller linked (#3829)
- [GPS] Add power save commands (Ublox specific)
- [GPS] Add more U-blox specific features
- [GPS] For now, disable U-blox specific settings
- [GPS] Document GPS plugin
- [Password] Add clearPassword command
- [Doc] Add Notepad++ colourise ESPEasy Rules language
- [dashboard] Fix crash on parsing empty command {} (#3873)
- [dashboard] Fix parsing {} and leaving the braces when not a command
- GCC 10.3 Bugfix 1 - Constant literal address fix
- [ClearPassword] Fix typo in command
- [PIO] Restore default envs
- automatically updated release notes for mega-20211224
Ton Huisman (25):
- [Docs] Add How To for starting development on ESPEasy
- [Docs] Add How To for starting development on ESPEasy
- [Docs] How To fix some typos
- [Docs] How To: fix some sphinx syntax issues
- [Docs] Development guide restrucured and extended
- [Docs] How To guide: textual improvements and additions
- [Docs] How To: Extend the text and some corrections
- [P111] Add virtual destructor to MFRC522 library to fix compiler warning
- [P053] Fix support for PMS5003T
- [P053] Remove unneeded #define, minor source formattings
- [Build] Enable Dummy device and Neopixel on ESP32 Custom (script)
- [P053] Leave out invalid event-values for PMS5003T
- [P124] Add plugin Output - I2C Multi Relay
- [P124] Add optional initialization 'protection'
- [P117] Add SCD30 CO2, humidity and temperature sensor
- [P117] Correct slash/backslash confusion/typo
- [P117] Add to TEST_D set
- [P117] Adjust ClockStrechLimit message
- [P117] Add documentation
- [P117] Fix compilation issue error: narrowing conversion of '2415919104' from 'unsigned int' to 'int' [-Wnarrowing]
- [P124] Add configurable I2C addresses, add relay state on exit [P114] Add VEML6075 to I2C scanner
- [P124] Add documentation
- [P124] Include in TEST_D build, aad missed documentation file
- [P016] Change plugin title Communication - IR Receive (TSOP4838)
- [P124] Add get command and looping that, fix a small settings bug
svollebregt (7):
- Adding Itho library to main reposity
- Revert "Adding Itho library to main reposity"
- [P118] Adding Itho plugin to main reposity""
- Update _P118_Itho.ino
- Update _P118_Itho.ino
- Further code improvements
- Remove noInterrupts() and Itho library improvements
mega-20211105
Release mega-20211105
Changes in mega-20211105 (since mega-20211005):
Peter Kretz (4):
- [P103 AtlasEZO] Added Dissolved Oxygen Sensor DO
- Update platformio_esp32_envs.ini
- Update _P103_Atlas_EZO_pH_ORP_EC.ino
- Rename Plugin 103 : Atlas Scientific EZO pH ORP EC DO
TD-er (59):
- [P103] Perform manual merge of conflicting files
- [P103] Perform manual merge of P103...ino
- [PMSx003] Convert plugin into using multiple instances data_struct
- [PMSx003] Uncrustify .ino file
- [PMSx003] Cleanup naming of types and variables
- [ESP32] Revert to PlatformIO platform 3.3.0 to fix web login
- [PMSx003] Cleanup by turning sensor type into enum class
- [PMSx003] Add pin selection for PWR Set pin
- [Serial] Make serial selection more intuitive
- [PMSx003] Use defines when interpreting received data
- [PMSx003] Use enum class for event output selector
- [PMSx003] Add check for duplicate messages
- [PMSx003] Make output/event selector enums a bit more readable
- [PMSx003] Add commands for reset/sleep/wake + document them
- [Cleanup] Use PLUGIN_WEBFORM_SHOW_GPIO_DESCR to show all GPIO used
- [PMSx003] Add output selection for counted small particles 0.3 ... 2.5 u
- [PMSx003] Add explanation on particles measurement
- [PMSx003] Simplify event generation + update task value names
- [PMSx003] Update documentation
- [PMSx003] Ignore incompatible event out selections
- [ESPEasySerial] Fix issues on ESP32 with serial (restart serial)
- [ESPEasySerial] Fix issues on ESP32 with serial (restart serial)
- [PMSx003] Document new pmsx003,wake & pmsx003,wake commands
- [ESPEasySerial] Include v2.0.7 in the ESPEasy libs dir too
- [PMSx003] Add option to split counted data in bins
- [PMSx003] Add oversampling to average readings
- [PMSx003] Document new Data Processing features.
- [PMSx003] Add sensor init time option after wake up sensor
- [PMSx003] Add proper defaults when creating new task or loading old conf
- [PMSx003] Make 1M builds fit again
- [Cleanup] Remove PeriodicalScanWiFi
- [Cleanup] Fix compile warning and failed build on ESP8266 beta builds
- [ESP32] Update GPIO description docs & add event to get boot strap pins
- Reset former PeriodicalScanWiFi bit to 0
- [P046 Ventus] Fix UV only "binary" (#3073)
- [P046 Ventus] Minor cleanup of strange float casts
- [GPIO] Fix [Plugin#PCF#PinRange#x-y] (#3815)
- [Build] Fix build on Windows for ESP32 Max LittleFS builds
- [Build] Concat Globals .cpp files to help building in Windows
- Fix missing lib_debs
- [PVS Studio] Test using ESP32 max build + some suggested fixes
- [PVS Studio] Fix issues reported by PVS Studio
- [PVS Studio] Fix "dangerous" macros in IRremoteESP8266 library
- [Python] Update Python packages due to Sphinx build error on Python 3.10
- [PVS Studio] Fix some warnings made by PVS Studio.
- [Python] Update Python packages + missing Ubuntu packages
- [Build] Fix build fail due to warnings
- [Build] Fix CompiletimeDefines
- [Build] Fix quotes issue on compile time defines
- [Build] Cleanup of Compile time defines scripts
- [WiFi] Add note about minimal WPA key length
- [WebFlasher] Generate manifest.json file per build
- [Webflasher] Generate html page for web flasher
- [Build] Add option "esp8266" to be the same as "esp82xx"
- [build] Make sure Python requirements are installed
- [Webflasher] Add groups in selection combobox
- [Build] Include flash size on all PlatformIO envs
- [Webflasher] Do not create index.html during build
- automatically updated release notes for mega-20211105
Ton Huisman (64):
- [P104] New plugin: MAX7219 dot matrix display
- [P104] Include plugin in Display builds
- [P104] Fixed zone initialization and brightness setup
- [P104] Code improvements
- [Helpers] Add helper getFormItemIntCustomArgName(int)
- [P104] Code improvements and optimizations
- [P104] Implement Clock and Date content, clear on plugin exit
- [P104] Use compiletime defines where appropriate
- [P104] Get settings defaults right
- [P104] Update MD_Parola library
- [P104] Implement PLUGIN_WRITE commands, add fonts, many improvements
- [P104] Fix issue with MD_Parola update
- [P104] Revert addition to MD_Parola made earlier
- [P104] Implement Repeat delay, add settxt command, edit active settings, update source doc, some source reorg.
- [P104] Format source
- [P104] Try to make build fit in ESP8266 display configuration
- [P104] Try to make build fit in ESP8266 display configuration
- [P104] Try to make build fit in ESP8266 display configuration
- [P104] Try to make build fit in ESP8266 display configuration
- [P104] Try to make build fit in ESP8266 display configuration
- [P104] Added time/date configuration options
- [P104] Adjust Custom-sample.h
- [P104] Add Bar-graph support and bar/setbar commands
- [P104] Add update command, bugfixes and improvements
- [P104] Implement 'direction' and 'barType' options for Bar-graph, many bugfixes
- [P104] Re-enble commands for 'display' build, many bugfixes
- [P104] Add Actions column, add Zone order, many bugfixes and improvements
- [P104] Bugfixes and minor improvements
- [P104] Bugfixes and improvements
- [P104] Allow up to 255 modules per zone.
- [P104] Limit settxt and setbar commands to max. input length
- [P104] Add 'p', comma and dash to num. double height font, some UI improvements
- [P104] Add documentation for Max7219 Dot matrix display
- [P104] Small optimizations, resolve some typos, documentation improvements
- [P104] Documentation - Add font overviews
- [P104] Bugfixes, add Text reverse option, update documentation
- [P104] Small improvements, check modules count on save
- [P104] Suggested small code optimizations
- [P104] Reformatted source (uncrustify needed an update)
- [P104] Fix compilation error after merge
- [P104] Code optimizations
- [P104] Bugfixes, optimizations and phase 1 of improvements
- [P104] Reworked saving and loading settings resolving stack issues
- [P104] Updates to documentation
- [Build] Apply LIMIT_BUILD_SIZE for ESP8266 Display build to fit in more plugins
- [P104] Reduce flashcounter on save, use LIMIT_BUILD_SIZE to fit in more features
- [P104] Simplify SPI pin display, small formatting changes (uncrustify)
- [P104] Add missing slash in numeric doubleheight font
- [P104] Update and improve documentation
- [P104] Code improvements and small optimizations
- [P104] Code improvements as suggested in reviews (nullptr checks, unneeded array, destructor, comparison)
- [P104] Minor improvements, memory handling
- [P104] Add Inverted option (dark on light), incl. docs
- [P073] Add 7output command
- [P073] Store via commands changes settings but not save them yet
- [P073] Reformat source (uncrustify and some manual adjustments)
- [Build] Re-enable IR plugins in custom_IR builds
- [Build] Enable IR plugins in MAX ESP32 builds
- [Build] Enable Blynk controller in MAX ESP32 builds
- [Docs] IR plugins are not in normal builds (for a long time)
- [Docs] IR plugins are not in normal builds (for a long time)
- [Docs] IR plugins are not in normal builds (for a long time)
- [Docs] IR plugins are not in normal builds (for a long time)
- [P119][P120] Register plugin IDs for ITG3205 and ADXL345
jimmys01 (2):
- [IR] Update IR library to the latest build
- Fix String ambiguous conversions in the lib
mega-20211005
Release mega-20211005
Changes in mega-20211005 (since mega-20210802):
Boris Krivonog (5):
- Added support for operating and compressor frequency.
- Fixed json output.
- Fixed link to source, removed links to obsoleted urls, added simple changelog ...
- Make AC status additional info configurable.
- Make sure ESPeasy serial can be allocated if P093 data struct was allocated (embed it).
Max Prokhorov (1):
- [Build] Revert to platformio/toolchain-xtensa for the esp8266
Michael Schröder (1):
- P051 (AM2320) is TESTING not NORMAL
Plebs (3):
TD-er (93):
- [ESP32-S2] Add experimental support for ESP32-S2
- [ESP32-S2] Further make ESP32-S2 compile (no WiFi yet)
- [ESP32-S2] Add reset reasons
- [I2C] Add recovery to an I2C bus that hangs.
- [Cleanup] Uncrustify C014 Homie
- [Cleanup] C014 Log entries using F()
- [C014] Cleanup calls to CPlugin_014_sendMQTTdevice not using F()
- [C014] Cleanup calls to CPlugin_014_sendMQTTnode not using F()
- [ESP32-S2] Make it compile against esp32-2.0.0-pre
- [ESP32-S2] Add missing includes
- [ESP32-S2] Changed struct sizes for esp32-2.0.0-pre
- [ESP32-S2] Compute LogStruct size for new String size
- [ESP32-S2] Add GPIO definitions for ESP32-S2
- ESPEasySerial to 2.0.6 to support ESP32-S2
- [PIO] Force ESPEasySerial to update to @ 2.0.6
- [ESP32-S2] Fix build warnings + set ESPEasySerial lib to 2.0.6 for ESP32
- [ESP32-S2] Add touch pins to ESP32Touch plugin + check valid GPIO I2C
- [ESP32-S2] Use proper WiFi event ids for IDF > 3
- [Cleanup] Check for validGpio using new function
- [Cleanup] Include ESPEasyLimits.h where MAX_GPIO is used
- [TaskValueSet] Allow TaskValueSet on non-Dummy tasks (setting)
- [Hostname] Make generated hostname RFC952 compliant (#3723)
- [Cleanup] Use Arduino isDigit and isAlphaNumeric functions
- [Docs] Document "Allow TaskValueSet on all plugins" checkbox
- [Formula] Use correct nr of decimals in formula (#3721)
- [Formula] Allow using standard conversions and task values in formula
- [Formula] Add more documentation for formulas + examples
- [docs] Fix wrong topic length in docs.
- [Cleanup] Replace single character flash strings
- Fix setting month + century bit RTC lib
- Add 'client' to http.begin call
- [Cache Controller] Allow to save sample time in local time
- [RTC lib] Makecentury bit unambiguous in C++ terms
- [Cache Controller] Update dump.htm to not check for valid timestamp
- [docs] Update Cache Controller docs to mention different time exports
- [Scheduler] Convert defines into SchedulerTimerType_e enum class
- [MQTT] Fix duplicate call task PLUGIN_READ at MQTT connect
- [Uncrustify] Scheduler.cpp/.h
- [Scheduler] Rename SchedulerTimerType_e to what it is calling
- [NTP] Use random interval for NTP sync interval
- [docs] Add documentation on on the time wander info
- [docs] Describe all fields on the sysinfo page.
- [Web Login] Fix file access with password set (#3759 )
- [Web UI] Fix handling rules switching
- [Web UI] Do not POST rules parameters to save memory
- [Dashboard] Do not check for loggedIn() on dashboard.esp
- Accidentally removed extra check in isLoggedIn()
- Fix missing include in ConfigPage.cpp
- [I2C] Use 8 bit for I2C address selection
- [Build] Add -fno-strict-aliasing as build flag make builds more stable
- [Cleanup] Replace reinterpret_cast + fix compiler warning.
- [Casts] Change C-style (uint8_t*) casts into reinterpret_cast
- [Casts] Change C-style casts (int) and (float) into static_casts
- [Docs] Update README.md about newer build sets
- [Cleanup] Change some short strings to just a char.
- Add custom_ESP8266_2M256 PlatformIO build env
- [DMX512] Fix memory leak when exiting P054 DMX512 task
- [ESP32 ETH] Fix not getting DNS from DHCP at boot
- [ESP32] Switch to PlatformIO ESP32 core 3.3.2
- [ESP32-S2] Switch platform packages for ESP32s2 to improve build success
- [ESP32-s2] Suppress SDK info/debug logs on Serial0
- [ESP32-s2] Fix crash when scanning I2C bus
- [WiFi] Only set WiFi initialised when connected & got IP
- [WiFi] Clear IP config on disconnect
- [WiFi] Only set WiFi initialised when connected & got IP
- [WiFi] Only check WiFi connection timeouts if they are started.
- [WiFi] Try connect to hidden SSID without explicit BSSID + channel
- [ESP32] Force SDK log level to NONE
- [ESP32] Allow to compile using staging branch ESP32
- [Cleanup] Prevent float to double promotion
- [P013 sr04] Hangs on HI in state mode when NO_ECHO
- [Cleanup] Uncrustify _P013_HCSR04.ino
- [Blynk] Add ESP32 support for Blynk
- [Blynk] ESPEasy patched files Blynk lib 1.0.1
- [Blynk] Update to library v 1.0.1
- [Docs] Add note to rename the CSS file to esp.css
- [ESP32-S2] Use latest ESP32 core 2.0.0 + IDF4.4 + I2C fix
- [ESP32-S2] Mark ESP32-s2 and ESP32-c3 as ESPEasy platforms
- [PSRAM] Add preliminary support for PSRAM
- [ESP32 IDF4.x] Fix build issue with ESP32 IDF 4.x
- [P109 ThermOLED] Fix array bound error
- Fix build error on limited build size builds
- [Cleanup] Clean up of double includes + pio.ini description
- [NeoPixel] Update to latest Adafruit Neopixel library
- [Docs] Add some description of ESP82xx/ESP32/ESP32-S2
- [I2C] Fix switching low/high clock + fix PCF8563 ext. RTC
- [Cleanup] Get rid of global dummyString
- [I2C] Make clearing hung I2C bus optional
- [I2C] Do not run I2C tasks when bus is in error.
- [I2C] Clarify error on I2C scan
- [I2C] Only perform reset I2C bus during scan when enabled by user
- [I2C] Document the new feature to clear a stuck I2C bus.
- automatically updated release notes for mega-20211005
Ton Huisman (95):
- [P065] Add mode and repeat commands From a request in the forum - mode,<0..3> to set playback mode: 0=Repeat, 1=Folder repeat, 2=Single repeat, 3=Random - repeat,<0/1> enable/disable repeat play 0=Off, 1=On
- [P065] Uncrustify and some minor source adjustments
- [P065] Reviewer corrections
- [P065] Minor optimization
- [P065] Add documentation (partly migrated from the wiki)
- [P065] Add commands to command reference
- [P065] Add commands to command reference (cleanup)
- [P016] Correct hex value conversions to unsigned
- [P016] Revert a few invalid comments
- [P016] Small optimizations
- [P016] Apply suggestions and some more optimizations
- [P016] Add type in logging, more optimizations
- [P016] hexToUL doesn't seem to work with a char array
- [P016] Fixed zero termination of char array
- [P016] Update changelog
- [StringConverter] Fix hexToUL to accept 0x prefix
- [P016] Add support for 64 bit IR codes, incl. settings conversion, update settings UI
- [P016] Small code optimizations
- [P016] Update library enum definition
- [P016] Disable debug log for BUILD_NO_DEBUG and some cleanup
- [P016] Revert BUILD_NO_DEBUG dependency
- [P016] Updated documentation
- [P016] Match UI with documentation :-)
- [P016] Update logging for memory analysis
- [Markup] Introduce delay(0) during addSelector_options for longer option lists
- [P016] Refactor using vectors instead of arrays, load/save settings in chunks
- [P016] Refactored settings conversion into constructor and other improvements
- [P016] Reformatted source (uncrustify)
- [P105] Move AHT10 plugin from PlayGround
- [P105] Check for other I2C devices and show warning on device settings
- [P105] Complete the documentation
- [P105] Update Custom-sample.h plugin comment
- [P105] Add AHT10 to I2C scanner
- [P105] Replaced code by the 'other' AHT plugin from Playground, updated documentation, some other doc. fixes
- [P105] Code improvements, based on feedback
- [P105] Update I2C Scanner to include AHT20/AHT21
- [P105] Small code improvement
- [P008] Add 'Alternative decoding' option
- [P008] Format code using Uncrustify
- [P008] Format code minor improvement
- [I2C Scanner] Show available device(s) for detected addresses
- [I2C Scanner] Fix typo (swapped lines)
- [P105] Small improvements
- [P007] Add easier I2C Address and port selection options
- [P007] Correct off-by-1 error for Port setting
- [P019] PCF8574 Add easier I2C Address and port selection options
- [P007] Add documentation
- [P019] Add documentation
- [P019] Avoid unneeded flash-string
- [P007] Avoid unneeded flash-string
- [I2C Scanner] Reworked to minimize use of Strings
- [P103] Moved I2C address setting to designed plugin event
- [P109] Moved I2C address setting to designed plugin event, cleanup to use macros where appropriate
- [I2C Scanner] Restore leaving most of feature out of OTA builds
- [P009] MCP23017 Add easier I2C Address and port selection options
- [P009] Add documentation
- [I2C Scanner] Show proper message if no I2C pins configured
- [P009] Correct off-by-1 error for Port setting (copy/paste error)
- [I2C Scanner] Adjust errormessage, refactor checks into isI2CEnabled()
- [P103] Remove unsupported devices from I2C selection list
- [P103] Fix silly typo :-(
- [P108] DDS238 Fix 2-complement values (#3662)
- [IRremoteESP8266] Update library to 2.7.19 (from 2.7.13)
- [P016] Fix memory allocation issues
- [IRremoteESP8266] Remove unneeded library files
- [P016] Remove unneeded #define, update change history
- [P108] Code improvements
- [I2C Scanner] Move refactored check into Settings struct
- [P065] Adjust documentation on mode command not always working as advertised
- [I2C Scanner] Also check I2C Low Speed (is used by scanner)
- [P007] PCF8591 Allow multiple output values in task
- [P007] Updated documentation
- [P009] Code optimizations, remove duplicate
- [RTClib] (Bugfix) Write month correctly to DS3231 (#3749)
- [P105] Fix I2Cscanner merge issue
- [P033] Dummy device - make Interval optional
- [P033] Remove default Interval
- [P033] Migrate documentation from Wiki and update
- [P008] Reverted previous...
mega-20210802
Release mega-20210802
Changes in mega-20210802 (since mega-20210503):
Christoph Kaiser (15):
- [P039] added support for RTD sensors to plugin P039; updated SPI handling of all sensors to optimize ROM usage
- [P039] place form selectors in separated scopes
- [P039] corrected first review findings
- [P039] further corrections rfom revews and initial documentation for P039 plugin
- [P039] fixing multiple typos in P039.rst file
- [P039] fixing multiple typos in P039.rst file
- [P039] added taskname and taskVarName to the log entries in INFO log file
- [P039] smallervfixes of diagnostic handling for thermocouples; added TODOs to not forget design changes
- [P039] migrated RTD functionality to use of TIMER API and state machine
- [P039] resolved review findings from TD-er, fixed static fault flag with data structure
- [P039] resolve issues with MAX6675 + MAX31855 and latest updates
- [P039] fixed typos and typecast issues, corrected MAX 31856 access
- [P039] fixed recent findings and added automated reload for device family and type selector in plugin parameters
- [P039] corrected log length reserve values and reworked fault logging
- [P039] enhanced logfile formatting,; update of documentation; enhanced Voltage Modes for MAX 31856
Joerg Heinemann (8):
- Add _P112_AS7265x.ino
- Add _P112_AS7265x
- Add SparkFun AS7265X library
- Change MeasurementMode
- Giving up - Running into a loop without sensor readings
- Handle Measurement Status
- Reduce plugin READ time
- Improved settings options
KimPanda4 (8):
- P003 New enhanced version 2.2 (PULSE Modes)
- introduce taskIndex_t instead of byte for taskID
- Updated P003 docu
- correction of reference in P003 command docu
- avoided nested switch, added overdue statistics
- Requested changes from today in P003
- Review corrections re. logging, commands, memspace
- Enhancd docu of commands. Mention TaskName option.
Lars Volker (1):
- Fix small typos in heatpumpir documentation (P088)
Maxim Prokhorov (5):
- ci: allow builds to fail
- ci: release single binaries .zip, merge all available build artifacts
- ci: try to ignore build workflow when releasing
- ci: bump python version for actions
- ci: build documentation for push & pr
Paul Berry (8):
- added prometheus exporter on /metrics path
- added prometheus exporter on /metrics path
- fix for building esp32 firmware from directory with space in name
- fixes from PR
- more PR fixes
- Added prometheus documentation
- Added ifdef, updated image name as per PR comments
- removed unused string definition
Peter Kretz (40):
- Nextion available for ESP32
- Personal upload settings
- Name Changed from ORP EZO to EZO ORP Configuration ofEZO pH now error tolerant. if you misconfigure a temperature correction, a temperature of 20° will be taken. More documentation about temperature correction for EZO pH as Note. Bug fix for pH calibration: if you stored a calibration for pH of e.g. 9.18 he restored 9 and you have to change it manually, now the value will be restored correctly
- now without monitor_filters = time
- now with Nextion Plugin P075
- com port settings
- colorize raus
- WebServerPort duplicate thrown away
- further merging
- further merging
- now fits to new changes
- [Atlas EZO]: Unified Plugin for pH, ORP and EC Sensors from Atlas via I2C
- Removed upload speed
- Added use of html functions
- removed speed
- Removed speed
- Fixed 0 terminated strings and substring issue
- ZEROTERMINATE, safe_strncpy , an 0 character handling as requested by review
- dtostrf
- my settings
- configuration stuff
- rework in calibration --> streamline and reuse of duplicated code - show # of calibration points - possibility to clear calibration
- Probe Type for EC could be configurated, improvement of displaying calibration status and some minor improvements
- Debuggin Prupose Removed name = K now
- Update _P103_Atlas_EZO_pH_ORP_EC.ino
- empty line removed
- upload speed
- Update Custom-sample.h
- CUSTOM_EMERGENCY_FALLBACK_START_AP
- Custom Sample
- platformio
- Removed build error for Build error for ESP32 builds: byte board_type = UNKNOWN;
- Update platformio_esp32_envs.ini
- Update Custom-sample.h
- Update platformio_esp32_envs.ini
- Update platformio_esp82xx_envs.ini
- [Atlas EZO EC pH ORP] added device name to I2C address scan, reorganized plugin in Custom build
- Commented Atlas EZO Plugin in Custom sample
- VCC flag removed
- Poolmeter
TD-er (196):
- [Playground] Move P168_ThermoOLED.ino to main repo
- Rename P107_ThermoOLED to P109
- [Controllers] Optimize memory usage by using std::move
- [Controller] Do not keep unitMessageCount as member when not needed
- Add move assignment to EventStruct
- [Events] Make sure events are not copied unless absolutely needed
- [Controllers] Implement move constructor to guarantee no copy is made
- [MQTT] Fix MQTT controller may not connect when re-enabled after a while
- [Memory] getMaxFreeBlock() should return valid value on ESP32
- [Network] Properly switch between ETH and WiFi
- [WiFi] Fix small issues showing WiFi state & abort WiFi connection process
- [WiFi] Show WiFi STA MAC in sysinfo when eth is active
- [Network] Allow fallback to WiFi when Ethernet not connected at boot
- [Oopsie] Need to hide in other commits, deny this ever was committed!
- [Cleanup] Remove unneeded std::move and copy/assignment constructors
- [Controller Queue] Remove unneeded constructors using =default and =delete
- Plugin 115 MAX1704x I2C, Sparkfun Fuel Gauge Sensor
- Add library to lib dir + PIO environments
- [P115] Restructure code + allow for multiple instances
- [MAX1704x] Add documentation
- [Build] Revert splitting lib_deps and lib_ignore to multi-line
- [P115] Fix missing #ifdef + register library in PIO
- [Locking] Add mutex to access map structures (#3623)
- [Docs] Fix some small documentation issues.
- [P115] Clean up documentation
- [MAX1704x] Add changerate for MAX17048/MAX17049
- Added MAX1704x comment line to Custom-sample.h
- MS5611 (GY-63) unrealistic values for <20C (#3626)
- [MAX1704x] Fix crash with device not yet initialised
- [Boot Cause] Make boot cause more clear + add %bootcause% for rules
- [Linux Build] Add some checks to prevent wiping ALL data on PC
- [Linux Build] Cleanup + document build script + add options
- [Linux Build] No longer use before_deploy from build_ESPeasy.sh
- [ESP32 RTC] Add RTC memory usage like on the ESP8266
- [Cache controller] Make Cache controller work on ESP32
- Disable left over RTC_STRUCT_DEBUG flag
- [P115] Cleanup code & add 4th variable name
- [P115] Fix nullptr de-reference crash
- [P115] Constrain threshold value to 1...32 & copy charge rate value
- [P115] Add work-around as detect of sensor not seems to work.
- [Git Build] Fix Git Build description on root page
- [LoRaWAN TTN] Fix controller not setting SF or FP & add ADR (#3630)
- [P115] Remove comment
- [P012 LCD] Fix use of USES_P012_POLISH_CHARS define
- [Cleanup] Move setup() from ESPEasy.ino to .h/.cpp file
- [Cleanup] Move ESPEasy loop() and backgroundtasks() to .h/.cpp
- [Cleanup] Uncrustify ESPEasy_loop(), _setup() and backgroundtasks()
- Fix missing include on SysInfoPage.cpp
- [Cleanup] Missing include in C013
- [Cleanup] Fix return value of gpio_mode_range_helper (real bug)
- [Cleanup] Uncrustify Commands/GPIO.cpp
- [Cleanup] Missing include in P016
- [Cleanup] Remove SI1145 from standard custom build, to make it fit
- [WiFi] Allow for unprocessed WiFi events to timeout
- [WiFi] Change unprocessed event timeout to 10 sec.
- [P012 LCD] Add custom defined Polish characters (#2669)
- [P012 LCD] Fix compile ambiguity & comment unused letter definitions
- [P012 LCD] Remove Polish "Wait..." print statement
- [WiFi AP] Add flag to prevent starting WiFi AP.
- Fix build errors + reword label to "Do Not Start AP"
- [Build] Fix build issues since ESPEasy.ino split
- [Build] Fix build issues Nxxx & P001-P080
- [Build] Fix build issues other files.
- [MQTT] Check MQTT status before sending
- [PubSubClient] Apply fixes related to crashes on connect to broker
- [MQTT] Fix MQTT controller not (re)connecting
- [WiFi] Fix issue where WiFi could not scan to reconnect
- [WiFi] Load known credentials right after loading settings
- [Cleanup] Fix warnings of some uninitialised variables.
- [Docs] Document %iswifi% system environment variable
- [Domoticz MQTT] Move JSON serialize/deserialize to helper .h/.cpp
- [Cleanup] Reduce build size handle internal commands macros
- [GPIO] Split duplicate code into shared function to reduce build size
- [Rules] Remove unused parameter & change event parameter to const
- [WiFi] Remove unneeded log connection status
- [Cleanup] Remove code duplication to reduce build size
- [Cleanup] Stream JSON from PROGMEM LabelType::Enum array to reduce size
- [Cleanup] Do not include DNS server in minimal OTA builds to reduce size
- [Cleanup] Reduce build size by keeping flash strings as flash string
- [Cleanup] Optimise streaming JSON
- [Cleanup] Add FlashStringHelper function wrappers to reduce build size
- [Cleanup] Add missing F() macro where applicable
- [Serial log] Small optimization to reduce build size + process logs
- [Cleanup] Add small optimisations to reduce build size
- [Cleanup] Change return type of static get string functions to flash string
- [Cleanup] Reduce build size of parseStandardConversions function
- [Cleanup] Reduce build size using flash strings in selectors
- [Cleanup] Fix build error due to missing change in commit.
- [Cleanup] Change return type of some commands to FlashString
- [Cleanup] Remove unneeded String() wrappers
- [Cleanup] Remove "new rules" from any build
- [Cleanup] Domoticz MQTT, generate own JSON, not using ArduinoJSON lib
- [Cleanup] Serialize JSON not using ArduinoJSON to reduce build size
- [Cleanup] Use EMPTY_STRING instead of ...