Tags: pe1ago/ESPEasy
Tags
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 letscontrolit#3835 [ThermoOLED] Check for successful allocation of display object [Domoticz] Only incoming MQTT on tasks with controller linked (letscontrolit#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 {} (letscontrolit#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
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" (letscontrolit#3073) [P046 Ventus] Minor cleanup of strange float casts [GPIO] Fix [Plugin#PCF#PinRange#x-y] (letscontrolit#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
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): Fixed letscontrolit#3736 Updated plugin documentation patch for Safe Button and FHEM (letscontrolit#3739) 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 (letscontrolit#3723) [Cleanup] Use Arduino isDigit and isAlphaNumeric functions [Docs] Document "Allow TaskValueSet on all plugins" checkbox [Formula] Use correct nr of decimals in formula (letscontrolit#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 (letscontrolit#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](https://www.letscontrolit.com/forum/viewtopic.php?f=4&t=8521) - 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 (letscontrolit#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 (letscontrolit#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 mod. Changed to allow 26..64 bits receive format. Updated documentation [SPI][ESP32] User-defined GPIO pins for SCLK, MISO and MOSI [P007] Cast measured value to double instead of float, update docs with Slow I2C Clock requirement [SPI][ESP32] Use enum for SPI options [P105] Correct type error [SPI][ESP32] Refactor use of enum for SPI options [SPI][ESP32] Make SPI options explicit [SPI][ESP32] Small cleanup, remove unneeded includes [SPI][ESP32] Remove unneeded include [SPI][ESP32] Remove redundant 'default' [P019] Fix compilation error (type) [P009] Fix compilation error (type) [P007] Remove unneeded cast [PinSelect] Bugfix missing last GPIO in Touch and Hall Effect selector (ESP32) [P017] Add warning for I2C Clockstretching to documentation [ESP32S2] Only show CPU0 reboot reason on single-core ESP32 S2 [I2C Scanner] Fix device descriptions for 0x38 and 0x39 addresses immiimmi (9): p20 fixed for esp8266; the pin will be resetted only if requested in the menu P020 bigger buffer needed Update _P020_Ser2Net.ino Update _P020_Ser2Net.ino Update P020_data_struct.h Update P020_data_struct.cpp Update _P020_Ser2Net.ino Update _P020_Ser2Net.ino Update _P020_Ser2Net.ino stefan (2): Exclude not needed parts for USES_MQTT and WEBSERVER_METRICS Cleanup webserver_metrics
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 [039] 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 (2): added prometheus exporter on /metrics path added prometheus exporter on /metrics path Peter Kretz (38): 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 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 (letscontrolit#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 (letscontrolit#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 (letscontrolit#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 (letscontrolit#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 F("") to reduce build size [Cleanup] Reduce build size for Factory Default device name [Cleanup] Fix build issue on Serial Proxy [Cleanup] Add more functions with flash string as parameter to reduce size [Cleanup] Add wrapper to web_server.arg() with flash string arg [Cleanup] Remove addLog macro and use separate functions per type Fix new introduced bug in htmlEscape function [DeviceModel] Change to enum class to allow compiler help check usage [P003 Pulse] Uncrustify _P003_Pulse.ino [Pulse] Split pulse handling into .h/.cpp & remove task index limit [P003_Pulse] Make pull-up configurable [WebServer] Optimize serving flash strings [WebServer] Speedup serving flash strings directly [WebServer] Speedup serving single char chunks + missing F-macros [P003 Pulse] Fix build error without pulse statistics enabled [P003 Pulse] Fix compile issue when plugin not included in build. [Log] Prevent generating logs if loglevel not enabled [SD] call SD.end() if not successful at begin() [WebServer] Small optimization in serving ints and small strings [WebServer] Reduce memory usage when streaming web template [WebServer] Balance speed vs. stability based on free memory Add DL-bus plugin to "Testing C" [DL-bus] Wrap logs in checks for active loglevel [Webserver] Fix build for ESP32 as WiFiClient.flush() cannot have timeout [Mem analysis] Log free memory during setup phase [String] Change == "" into .isEmpty() [Strings] Change .length() == 0 into .isEmpty() [Strings] Change .length() != 0 into !...isEmpty() [Build] Fix SDFS & SD lib_ignore defines [CaptivePortal] Fix root page redirect when connected via LAN [GPIO Selection] Filter possible GPIO pins based on needed properties [Pulse counter] Fix values not being updated on Devices tab [ESP32] Fix PWM not cleared when changing pin mode (letscontrolit#3671) [Pulse] Fix copy/paste error in pulse counter plugin [Build] Update Python packages [Docs Build] Update to Sphinx 4.0.2 [WiFi] Make sure to clear pending WiFi events on reconnect [Deep Sleep] Revert default deep sleep call & make it optional [WiFi] Clear WiFi events when turning off WiFi Add Mac_address object to simplify handling MAC addresses [WiFi] Only store last used AP in RTC when connection is stable [WiFi] Small flash string optimisation [WiFi] Handle slow connect to WiFi AP Add link to experimental web flash page [DeepSleep] Turn off WiFi before DeepSleep + limit max. deepsleep [WiFi] Make reconnect to last from RTC optional [Reduce size] Add build flag to remove the 4-bytes alignment for PSTR() [Webserver] Fix unneeded copy of object when serving data(letscontrolit#3693) [WiFi] Allow longer scan time per channel [Cleanup] Keep flash string when executing internal commands [Numerical] Fix bug where "-" is considered numerical [Cleanup] Wrap strings in F() [Web UI] Update served static files [WebUI] Allow slightly longer flash strings to be sent in a single chunk [Cleanup] Fix some possible uninitialised members & other loose ends [Cleanup] Fix bugs reported by PVS Studio [Cleanup] Fix return value in MQTT Publish command [LoRaWAN] Fix crash when LoRa or serial could not be allocated Fix uninitialised members of RegExp [Memory] Allow to disable collecting timing stats to save RAM [Framed OLED] Reduce memory usage slightly. Fix merge issues Fix build issue on ESP32 (ETS_UART_INTR_DISABLE is ESP8266 only) [Mutex] Fix no longer using fishy assembly for ESP8266 mutex [Cleanup] Use of "byte" as a type. uint8_t or (C++17) std::byte are better [Libs] Don't use "byte" as type anymore [Cleanup] Don't use "byte" as type anymore (.ino files) [ESP32 3.3.0] Update to PlatformIO ESP32 3.3.0 [Bug] EnableTimingStats DoNotStartAP used same bit [TinyGPS] TinyGPSCustom::valid was not initialized [WiFi] Fix scan issue, causing failed connections [WiFi] Fix WiFi need to connect flag not always set [WiFi] No need to disable interrupts when connecting WiFi [WiFi] Clear wifiConnectInProgress when prepare WiFi failed [Security Settings] Add alignment checks at compile time. [WiFi] Try to connect right after WiFi scan found known APs [WiFi] Fix build issue [Tooltips] Fix merge issues [DS1307] Add support for external RTC clock DS1307 [Ext. RTC] Use Adafruit library to support DS1307/DS3231/PCF8523 [RTClib] Add lib/Adafruit_RTClib [Build] Add TinyWireM to lib_ignore to prevent build issues. [RTClib] Remove TinyWireM from depends [Build] Lib_ignore TinyWireM for all envs [Build] Do not use PIO library finder for RTClib (TinyWireM issues) [Ext. RTC] Fix reading from RTC module [Ext. RTC] Show time source + I2C scan result [Ext. RTC] Fix some library bugs and add some validity checks Fix TSL2591 overflow at high Lux values [Ext.RTC] Make sure time is set immediately when received from ext. src [Ext. RTC] Document external RTC chip support [TimeSource] Move ExtTimeSource_e to TimeSource.h to fix includes [P109] Fix issue with SPIFFS vs LittleFS [P109] Uncrustify ThermoOLED plugin [P109] Remove it from "display" build due to build size [P109] Disabled also for "testing B" builds due to size. [Prometheus] Add text/plain as header [Custom build] Make external RTC optional via USE_EXT_RTC define Rename getDevicePluginID_from_TaskIndex to getPluginID_from_TaskIndex [Commands] Output proper feedback on command execution [Commands] Add feedback on other task commands [Commands] Don't use newline in JSON value automatically updated release notes for mega-20210802 Ton Huisman (72): [P114] Move VEML6075 (P130) from PluginPlayground [P114] Move string log.reserve to first use of log [P114] More string log.reserve optimizations, initialize floats with f postfix [P114] Move plugin to correct category (UV) [P114] Add documentation [P012] Add Inversed option for display button [P012] Fix a compare-confusion [P012] Update documentation [P012] Fixed typo preventing new setting to be saved [P012] Documentation: improve 5V warning display and text [P012] Add commands to command reference [Build] Fix builds having USES_SSDP for missing include [Commands] Enable LogEntry to log for other level than INFO letscontrolit#3312 [Command] Update LogEntry documentation, small code optimization [UI] Enable optional tooltip for most input controls [UI] Add tooltip option for a few more input controls [UI] Add conditional compilation to Tooltip feature [Build] Re-enable RTTTL in TESTING where it fits [Sysvars] Add %s_sunrise%, %m_sunrise%, %s_sunset% and %m_sunset% variables [Sysvars] Extend documentation for s_sunrise, m_sunrise, s_sunset and m_sunset [Build] Include all TESTING plugins even when using LIMIT_BUILD_SIZE [UI] Rename `title` argument to `tooltip` [UI] Fix manual merge typo [Build] Include Trigonometric functions also in 1M Normal builds [Doc] Correct function names for asin, acos, atan and friends [Build] Keep trigonometric stuff out of MINIMAL_OTA builds [UI] Correct manual merge error [P057] Add support for periods in display [P036] Add Generate Events option for Display and Contrast [P036] Eliminate a few unneeded variables, saving a little .bin size [P036] Add events for Frame and Line, reduce code size [P036] Make Frame & Line events optional, introduce #defines for flags [P036] Updated documentation (and a small textual improvement in the setting) [P068] Add temperature offset setting, with humidity compensation [P068] Use proper float-comparison functions [P068] Simplify float-comparison [UI] Add extra definition of addSelector() with tooltip support [P068] Reverse inverted calculation [P057] Improve dot display, code optimizations [P057] Add extra check to avoid reading past string length [Domoticz MQTT] Always wrap svalue with quotes [P053] Add support for PMS5003ST, PMS2003 and PMS3003 [Sysvars] Add %dns1% and %dns2% sysvars and urlencode stringfunction [Sysvars] Correct typo in documentation [P053] Only generate events when Rules enabled [P053] Documentation (partly transplanted from the wiki) [P053] Add count of particles per 0.1L options to plugin, update documentation [P053] Correct unit terminology, improvements and fixes [P053] Update documentation [P053] Correct typos in the measurement units [UI] Show release date in header [P053] Limit disabling new features to 1M OTA builds [UI] Allow Build date/name in either Header or Footer [UI] Only show Build in footer [P053] Correct reading from PMS2003/PMS3003, minor improvements [ESP32] Fix maximum deepsleep time for ESP32 [P053] Minor improvements [UI] Show build date in header, add build date to build filename in footer [UI] Build name/date is link to Github Releases page [UI] Open Releases link in new tab, show tooltip on hover [UI] Small source improvement [UI] Fix compiler warning [TaskValueSet] Only allowed for Dummy Device (bugfix) [UI] Move Github Releases link define to ESPEasyDefaults.h [TaskValueSet] Rename and move new support function to Plugin.h/cpp [TaskValueSet] Remove not needed include [P033] Return true on PLUGIN_INIT so TaskEnable returns OK [Task commands] Check if task enabled before action [PLUGIN_INIT] Fix remaining plugins missing the PLUGIN_INIT case [Commands] Fix camelcase typo [Commands] Change OK, FAILED and new error messages to uppercase [Commands] Revert Failed to original case dependabot[bot] (1): Bump urllib3 from 1.25.10 to 1.26.5 kretzp (1): VCC flag removed peter.kretz (1): Poolmeter unknown (6): 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
Release mega-20210503 Changes in mega-20210503 (since mega-20210223): Ament Martin (9): Patch to use the AP-Mode as daily driver Allow optional usage of Sensor without WIFI avaiable. When set you can use the Sensor in AP-Mode without beeing forced to /setup. First Version of ApDontForceSetup. Grouping Webserversettings in Advanced Typo fixed Missed a setting Patch to use the AP-Mode as daily driver Fixed missing setup for 404. And added some docu ResetAdvanced to branch-mega and implement Option at ConfigPage Added missing setting Bartłomiej Zimoń (4): add requested client event letscontrolit#3584 [P20_Ser2Net] add task index to sendevent function Update _P020_Ser2Net.ino Update _P020_Ser2Net.ino GravityRZ (1): Update GPIO.rst Henri de Jong (3): Possible sagemcom fix Always max message size Don't create buffer bigger than maximum Joerg Heinemann (2): Initial documentation for P050_TCS34725 Initial documentation for P050_TCS34725 Maxim Prokhorov (13): Github actions instead of Travis make sure to fetch the tag message see if these work once again and again try wildcard fetch into local ref fix order order files more files more more build everything Peter Kretz (1): Fix: [CUSTOM_EMERGENCY_FALLBACK_RESET_CREDENTIALS] Plebs (18): wip for new expander commands wip new mcp commands WIP WIP WIP WIP WIP wip WIP WIP small changes fixing Travis code optimizations Moved PLUGIN_REQUEST to core Update GPIO.cpp added documentation Added documentation for [PLUGIN#MCP#PINRANGE#x-y] fixed typo TD-er (107): Fix merge issues SendStatusOnlyIfNeeded [P020 Ser2Net] Serial port selection on ESP32 Add MAX31856 support to P039_ThermoCouple [Docs] Fix some documentation inconsistencies [P020 Ser2Net] Restore serialsend command & add ser2netclientsend [Controller Queue] Add flag to allow messages to expire [Controller Queue] Add deduplicate check in controller queue [Controller Settings] Fix merge conflict with ESPEasy-NOW PR [Controller Queue] Fix initialization of expire timeout + improve dedup [ESP32] Handle more WiFi events (e.g. STA_LOST_IP) [WiFi] Process Station event Auth Changed [Controller] Debug log on remove duplicate queued message [GPIO] Fix warning of unused variable [Build] Remove HWL8012 from "energy" build [Energy build] Add P093 Mitsubishi Heat Pump [Cleanup] Remove ICACHE_RAM_ATTR on wifi event function [Build] LittleFS can only be built on 'beta' builds [Build] No longer ignore RN2xx3 library on Custom IR builds [Cleanup] Reduce IRAM usage in Dallas bit read/write code [Build] Fix normal_beta_ESP8266_16M_LittleFS build [Cleanup] Remove unneeded ICACHE_RAM_ATTR on DHCP timeout callback [Build] Remove P076 HWL8012 from "testing" builds due to build size [Build] Disable test_ESP8266_4M1M_VCC_MDNS_SD as it does not fit in IRAM [Build] Set normal_IRext_no_rx_ESP8266_4M2M to LIMIT_BUILD_SIZE [GPS] Fix running out of memory when no GPS data is received. Fix higher load introduced recently by variable WiFi TX power [GPS] Fix running out of memory when no GPS data is received. Fix higher load introduced recently by variable WiFi TX power [Scheduler] No need to call backgroundtasks() twice in the same loop [Build] Make sure PLUGIN_USES_SERIAL is defined for USES_P020 [Build] Make test_ESP8266_4M1M build again [testing build] Remove 2 more "energy" plugins from "testing" build [WiFi] Make sure to reset WiFi if RSSI = +31 [ESP32] Update to PIO [email protected] [ESP32 ETH] Fix set config IPs to 0.0.0.0 when using DHCP + cleanup code [1M builds] Init config.dat file to 36k size [WiFi] Set max TX power always if forced in settings [WebPage] Allow for basic web page layout changes in custom build [WebPage] Add CSS styling to WiFi bar chart SVG [Custom.h] Add DEFAULT_SSID2 & DEFAULT_KEY2 [WebPage] Allow to hide help buttons [WiFi] Fix unit not reconnecting to WiFi Fix build error in WebServer/404.cpp [Ethernet] Proper handling of network events + revert to WiFi [ESP32] Set to PIO [email protected] (letscontrolit#3564) [Deployment cconfig] Allow for deployment SSID and emergency fallback [Custom Build] Allow web UI customization in custom builds [WiFi Setup] Make WiFi setup more intuitive [WiFi Setup] Store WiFi scan results in WiFi_AP_CandidatesList [WiFi setup] Fix layout setup page [Webserver] Allow serving static files from SPIFFS when not logged in [WiFi] Reset WiFi if it changes channel without disconnecting [WiF] Prevent WiFi resets when not all events are processed. [WebServer] Do not alias index.htm and index.html to handle_root() [WiFi] Fix clear credentials on emergency fallback SSID [WiFi Setup] Add clear WiFi credentials button (for deployment) [WiFi Setup] Add "Include hidden SSID" as "advanced" setting bottom page [WiFi Setup] Increase click area for selecting scan result [Sysinfo] Show network services state on root- and setup page [WiFi Setup] Only scan on WiFi setup page if needed to prevent disconnect [WiFi] Decrease number of scans when AP is used, to make setup stable [WiFi Setup] Implement captive portal to automatically sign in [WiFi] Add periodical rescan option + reuse recent scans for reconnect [Setup page] Add rescan button to setup page [Build] Fix build issues when not using Custom.h [Docs] Document new added WiFi settings Fix Precision issues and initialisation of members in rules [WiFi] Feed SW watchdog timer on WiFi related actions that may take time [Custom build] Allow DEFAULT_WIFI_INCLUDE_HIDDEN_SSID in Custom.h [WiFi] Fix issue where WiFi does not reconnect after disconnect [Custom Build] Allow to embed custom CSS [Network] Disconnect WiFi when switching to Ethernet [WiFi] Allow faster reconnect on lost connection [ESPEasy-NOW] Reduce load when not connected to WiFi [WiFi] Fix merge issue [ESP32 ETH] Add default definition for wESP32 and WT32-ETH01 [WiFi Setup] Hide password on Setup page ("*****") [Customize Build] Allow to disable Node List columns on root page [P020 Ser2Net] Re-apply connected event (letscontrolit#3587) [CUL Reader] Append timestamp to received messages [P039_Thermocouple] Uncrustify [P039 ThermoCouple] Cleanup code + allow multiple instances [VL53L0X] Include library description used by PIO [lib/VL53L0x] Move lib files to lib/VL53L0X/src dir [lib/VL53L1X] Include missing files from SparkFun_VL53L1X library [PIO build] Use full VL53L0X & VL53L1X names of the libraries in PIO [WebUI] Only redirect (used for captive portal) via AP or on clean setup [Low Memory] Add some checks on success of reserving memory [Low memory] Move strings when possible instead of copy them [UDP timeouts] Add timeout on DNS resolve + reset softWDT on UDP connect [Setup Page] Fix typo [WiFi] Actively purge expired WiFi scan results to free RAM [Root page] Allow again sending HTTP commands to reboot [CUL reader] Reduce memory usage on log + web stats [Memory Usage] Check success memory allocation string type value events [CUL Reader] Fix sending received message + timestamp Change delay(1) into delay(0) to reduce load [WiFi] Fix not able to reconnect if unit immediately disconnects [WiFi] Add copy constructor to WiFi_AP_Candidate class Fix PLUGIN_WRITE for P020 Set2Net [P020_Ser2Net] Fix sendConnectedEvent [BME680] Fix elevation compensation + add 2 conversion commands [ESP32] Revert back to Espressif32 PIO v 2.1.0 due to serial issues [TTN] Add decoders for plugins 102-113 + TTNv3 decoder (letscontrolit#3611) [TTNv3] Add selector for TTN stack version [TTN] Include all 6 values for P102 PZEM004Tv3 automatically updated release notes for mega-20210503 Ton Huisman (65): [Merge] Remove (again) [Task* commands] Some code cleanup [Task* commands] Code cleanup and some corrections [P110] Move P133 VL53L0X from PluginPlayground to main repository [P111] MFRC522 RFID reader moved from PluginPlayground [P111] Initialization corrections [P110] Add to Custom-sample.h [ESP32 MAX] Configuration for ESP32 with 16MB Flash [ESP32 MAX] Include in travis build [ESP32 MAX] Extend configurations with 2MB and 4MB SPIFFS, 4MB default [ESP32 MAX] Enable SD-card support (and fix compilation errors) [ESP32 MAX] Add configuration with 1MB SPIFFS [ESP32 MAX] Mixed up partitions fixed [ESP32 MAX] Switch to LittleFS, only 16M2M and 16M8M configs + ETH [ESP32 MAX] Fix build issue, case-sensitive filename [EPS32 MAX] Extend logging during configuration save [P110] Add extra logging with model-id on init-errors [P110] Add experimental support for VL53L1X [P110] Improve code readability [P111] Disabled Tag removal detection as this won't work properly [P111] Add documentation [Rules] Process all %vN% variables [ESP32_MAX] Add plugin P108 to ESP32 Max set [Rules] Calculate IF conditions before evaluation [Rules] balanceParentheses(): Always use String.reserve when changing string [Build] Display timestamp after copying files to build_output [ESP32 MAX] Add 16M1M config (SPIFFS), rename 2M/8M (LittleFS) configs [ESP32 MAX] Add ESP32_16M1M_ETH configuration, disable PS-RAM support [P113] Add VL53L1X Time of Flight sensor to ESPEasy [P113] Add VL53L1X to Custom-sample.h (disabled) [P113] Add Documentation [P110] Removed check for unsupported VL53L1X, added range to plugin description [P113] Add secondary address to I2C_Scanner [ESP32 MAX] Enable most plugins up to P125 (even when not in PR yet) [ESP32 MAX] Enable P109 now that it is in PR [ESP32 MAX] Clean up an obsolete comment [P113] Removed Interval optional setting, minor source cleanup [ESP32 MAX] Add ENERGY and DISPLAY plugin sets, remove EXPERIMENTAL set [Docs] Documentation updates and corrections [Docs] Correct a typo [Docs] Restore default doc. header for P050, some corrections [Docs] P050 Add missing Changelog section [P113] Add 'Trigger delta' option, updated documentation [P113] Apply uncrustify source formatting [JSON] Add extra variables to JSon output [JSON] Remove unneeded calls [JSON] Add more variables, Location, NTP, Uptime_MS [SysVars] Add %uptime_ms% System variable [SysVars] Update documentation [SysVars] Adjust documentation [JSON] Add setting for quoted bool values (default on) [JSON] Add documentation, initialize the setting during factory reset [JSON] Invert setting logic, adjust setting index [JSON] Fix merge typo [JSON] Rename methods and define, small optimization [ESP32] Add missing lib_deps dependency [Build] Split testing sets into 4 pieces [Build] Fix compilation error for MAX builds, missed 1 changed docs file [Build] Add P114 (preliminary) to test D set [Build] Disable dev build, update README.md and build documentation [Build] Remove dev build instead of commenting it out [Build] Remove reference to dev build from platformio.ini [Build] Actions: Also build ESP8285, WROOM02 and 'hard' environments [Build] Revert unneeded change to build.yml, add docs on use of Custom.h [Build] Exclude C016 and SD-card features on 1M units to fit custom builds dependabot[bot] (4): Bump pygments from 2.6.1 to 2.7.4 Bump jinja2 from 2.11.2 to 2.11.3 Bump pyyaml from 5.3.1 to 5.4 Bump bottle from 0.12.18 to 0.12.19 glsf91 (1): Added choice SH1106 controller to plugin 32 martament (1): Update SettingsStruct.cpp sakinit (1): * Fixed rounding bug from issue 8 on breakout board. tonhuisman (5): [TaskValueSet(AndRun)] Use TASKname and/or VARname instead of TASKnr/VARnr [TaskValueSet(AndRun)] Minor documentation fixes [Task* commands] Add support for TASKname/VARname in addition to TASKnr/VARnr + documentation [Documentation] Add TaskValueSetAndRun [Task* commands] Fix a few silly typos
Release mega-20210223 Changes in mega-20210223 (since mega-20210114): Henri de Jong (1): Increase buffer size TD-er (44): Use max seen P1 message length to allocate buffer [cleanup] Mark "Bitwise:" log as debug log [ESP32 PIO] Update to [email protected] [WiFi] Try to use the strongest known SSID after a scan. (letscontrolit#3463) [Build] Fix custom IR build letscontrolit#3469 [WiFi] Simplify credentials manager [WiFi] Fix setup procedure [WiFi] Reduce TX power to 17.5 dBm and tune timings + fix mDNS start [mDNS ESP32] Fix build issue ESP32 (does not have MDNS.close()) [WiFi] Allow to limit TX power and make TX power dynamic [WiFi] Cleanup code + add settings transition for new parameters [WiFi] Make sending at max TX power optional [Pulse] Pulse Counter P003 enhancement [WiFi] Introduce 2 seconds delay at boot before starting WiFi [WiFi] Set sleep mode after switching wifi mode [WiFi] Fix build issues on ESP32 (different sleep mode function) [WiFi] Change log level of TX power to debug [Rules] Fix bug in time parsing (leading 0) [Rules] Make parsing numerical a bit more robust [Rules] Fix complex time matching [Time] Fix tm_mon starting at 0 and tm_year at 1900 [Time] Cleanup time calculation code Rename default variable names in P084 VEML6070 UV [Cron] Fix cron resolution + value updates Move to UserVar struct to have universal conversion of task variable types [P003 Pulse] Revert changes (See letscontrolit#3500) Revert "[Rules] Make parsing numerical a bit more robust" [PIO] Update to [email protected] [PWM] Set PHASE_LOCKED_WAVEFORM for new esp8266/Arduino core [WiFi] Fix crash when trying to reconnect while low on memory [PIO] Only update tmp files when changed to reduce build time safe_strncpy should not crash on FlashStringHelper strings [WiFi] Fix WiFi AP candidate from RTC causing crash [WiFi] Fix crash when deleting element from empty list [WD reboot] Change yield() into delay(0) for network connections [Cleanup] Uncrustify Networking.cpp [ESPEasy p2p] Add check on buffer allocation received UDP data [MQTT] PubSubClient checks when callback + publish happen simultaneous [MQTT] Fix rejecting QoS=0 messages with 0 or 1 byte length [ESPEasy p2p] Fix WD reboots due to not initialising array [Cleanup] Explicit init UserVar with 0.0f [WiFi] Fix bogus RTC settings loaded to connect to WiFi [WiFi] Allow spaces in SSID and pass phrase automatically updated release notes for mega-20210223 Ton Huisman (26): [P050] Additional output settings - Add Color Temperature DN40 calculation - Add Lux calculation - Add Clear output option - Add Normalized RGB calculation [P050] Add Normalized sRGB calculation [P050] Apply suggested patches to the Adafruit library [P050] Minor calculation adjustment, added to TESTING build [P050] Adjusted Normalization calculation, added R/G/B Calibration factors [P073] Improve display of periods in 7dtext Add 7ddt command (dual temnperatures on Max7219 display) [P073] Periods in 7dtext also for TM1637 display [P050] Removed unneeded output selection option [P037] Options for hide degrees symbol, right align temperature [P073] Options currently only applicable for MAX7219 [P050] Added 3x3 matrix calibration, added opt. event for all values, adjusted device settings [P050] Fix missing include [P050] Add extra transformation options, fixed a typo [P050] Rename Calibration to Transformation, added optional events for RGB values [P017] Add options for tag reset, delay and reset event [P017] Added documentation explaining the new settings [P008] Fix typo in minimal reset timer check [P073] Bugfix for 7ddt command being leftshifted by 1 [P073] Add fonts Siekoo/dSEG7, scrolling text and 7dbin command [P073] Optimizations and bugfixes, extra text scroll option [P073] Initialization optimizations [P073] Optimizations and minor code cleanup [Documentation] Update copyright year to 2021 [P073] Clear scroll text when setting 7dbin data [P073] Add documentation [P073] Fixed TM1637 mapping bug, moved log to DEBUG level, some source cleanup sakinit (1): Clear error by reading the error register loglevel independent stefan (4): P003 Pulse Microseconds P003 µSec backward compatibility P003 use micros64() P003 use getMicros64() function
Release mega-20210114 Changes in mega-20210114 (since mega-20201227): Gijs Noorlander (3): [Floats] Use proper compare functions to compare float values [PVS-Studio] Add braces to some defines to make them more predictable [PVS-Studio] Simple hints from PVS-Studio applied TD-er (60): Fix merge issue as Misc.ino was moved Small optimization changing char arrays to char Fix merge issues Fix missing include for CacheControllerPages [Rules] Add operators to convert integer values [Docs] Document the effects of external hosted CSS/JS files Add ABS function [Rules] Add trigonometric functions [Rules] Use bitwise operators only on unsigned ints Fix build warning [Rules] Change order parameters bitwrite [Rules] Increase accuracy in Calculate and variables from float to double Include P090 CCS811 in the builds again Increase accuracy in rules computation by using more decimals [Rules] Improve calculation resolution and compares. [Build] Reduce build size of OTA builds including new rules operators [Build] Move PMSx003 to 'normal' builds [Cleanup] Wrap <div> markup in a separate function [Cleanup] Reduce build size by replacing addHtml(String(....)) to addHtmlInt Restore accidentally removed "Note:" prefix for notes [Rules] Parse hex numbers when prefixed with 0x (uint only) [Cleanup] Remove String construction with = ""; [Rules] Allow HEX values in formula, rules, etc. [Rules] Change '!' + '=' into '<' + '>' to avoid conflict with '^' [Rules] Disable math functions for now to make them more intuitive [Serial] Only parse commands from serial when no task uses Serial0 [PIO] Fix building 'beta' builds toolchain update Fix build issue after merging other PRs [Rules] Add support for binary numbers with 0b prefix [Rules] Remove limit of nr. of variables [Rules] Improve readability of Rules Calculate function [Rules] Wrap rules calculation functions in a struct + cleanup [Rules] Fix out of bound crash with calculate ending with '=' + cleanup [Rules] Add preliminary support for math functions like sqrt, sin, etc. [Cleanup] Change typo trimTrailingZeros [Rules] Add missing functions (sin/cos etc) [Rules] Fix typo on limited size builds [Rules] Fix order of parsing "arc" functions [Rules] use parseString on string operation commands [Rules] Add some basic math functions + documentation [MQTT] Fix status update over MQTT for internal commands [MQTT] Also strip %valname% in topic if task index is invalid [MQTT] Small optimizations in parsing publish topics [Rules] Add option to each task to combine all values in a single event [MQTT] Fix remove of '//' in topic [Rules] Add hint about changed event when combining all event values [Cleanup] Uncrustify changed files of this PR [Cleanup] Fix issues compile caused by uncrustify [Minimal OTA] Make minimal OTA build fit again Fix build issue on ESP32 Accidentally removed C013 from the minimal OTA build [JSON] Fix a bug in generated JSON, not wrapping '00' as a string [Build] Reduce build size for minimal OTA builds [Logs] Format task values in logs with set nr of decimals [Cleanup] Fix MDNS builds on ESP32 and reduce minimal OTA build size [ESP32] Fix build issue due to missing include [Build] ESP32 factory bin files are 64k larger so don't reject those [Build] Rename test_ESP32_4M316k_lolin_d32_pro to match build script checks [ESP32] Increase DEVICES_MAX for ESP32 builds (> 85 plugins in build) automatically updated release notes for mega-20210114 Ton Huisman (8): [P023] Fix merge conflict [Commands] Improvements, refactoring and added feature of [<TaskNumber>]. prefix [Docs] Updated for [<TaskNumber>]. prefix [Checks] Don't allow numeric (float) device name [TaskName] Define is no longer available [P090] Re-enable plugin for TESTING build [P008] Wiegand add options for Tag removal [P073] Display a zero-prefix for temperatures between 0.9 and -0.9 tonhuisman (5): [Commands] Add global `[<TaskName>].` prefix for all PLUGIN_WRITE commands [Commands] Remove local taskname-prefix impl., exclude P022 [Commands] Remove requirement for [ and ] on <TaskName>. prefix [Commands] Improve documentation on [<TaskName>]. prefixing [Commands] Add extra safeguard check for DeviceIndex
Release mega-20201227 Changes in mega-20201227 (since mega-20201130): CurlyMoo (4): Support for Shelly 1 temp. addon Added documentation Small typo in documentation Small comment about potential serial port conflicts Joerg Heinemann (1): Add copyrights and permission notices TD-er (92): [Cleanup] Wemos motor shield, reduce resources used. [docs] Minor Sphinx warnings fixed. [Playground] Move BME680 from playground [Cleanup] Uncrustify P106 BME680 Make sure notifications (Email/Buzzer) are included in 1M normal build [IRTX] Use parse argument functions for IR TX command arguments [NeoClock] Fix building P070 NeoPixelClock [PVS-Studio] Allow testing IR builds for coding errors [IRTX] Convert more commands to use parse string functions Fix missing defines to allow "Periodical send Gratuitous ARP" [Cleanup] PluginStructs/*.cpp include prepend PluginStrucs dir [PIO] Concatenate .cpp files to prevent linking errors [PIO] Concat *.cpp files in ControllerQueue/ and PluginStructs/ [PIO] Add Commands/*.cpp to the files to be concatenated in single .cpp Fix build error in Linux build environment [PIO] Separate appended .cpp files with newline [PIO] Concatenate all WebServer/*.cpp files into temp file. [PIO] Make sure library includes are present in .cpp [MQTT] Prevent high CPU load when not connected to MQTT broker (letscontrolit#3410) [Web UI] Proper encoding for HTML attribute values [Cleanup] Uncrustify of web page code [MQTT import] Share MQTT client with active MQTT controller [Dallas] Fix P100 DS2423 counter plugin matching new changes. [MQTT import] Fix missing return statement [Dallas] Fix P100 DS2423 counter plugin matching new changes. [NeoClock] Fix building P070 NeoPixelClock [PVS-Studio] Allow testing IR builds for coding errors Make sure notifications (Email/Buzzer) are included in 1M normal build Fix missing defines to allow "Periodical send Gratuitous ARP" [Cleanup] PluginStructs/*.cpp include prepend PluginStrucs dir [PIO] Concatenate .cpp files to prevent linking errors [PIO] Concat *.cpp files in ControllerQueue/ and PluginStructs/ [PIO] Add Commands/*.cpp to the files to be concatenated in single .cpp Fix build error in Linux build environment [Cleanup] Wemos motor shield, reduce resources used. [docs] Minor Sphinx warnings fixed. [PIO] Separate appended .cpp files with newline [PIO] Concatenate all WebServer/*.cpp files into temp file. [PIO] Make sure library includes are present in .cpp [IRTX] Use parse argument functions for IR TX command arguments [IRTX] Convert more commands to use parse string functions [Web UI] Proper encoding for HTML attribute values [Cleanup] Uncrustify of web page code [MQTT import] Only process incoming messages if topic matches and enabled Fix %isntp% and %ismqttimp% states + MQTTimport connected events Remove ICACHE_RAM_ATTR from LongTermTimer and move to .h only [Webserver] Don't use temp variables for webserver arguments Exclude special characters from system variable page in minimal builds [WebServer] Do not include custom page on minimal OTA builds Reduce build size by wrapping all parameters for internal commands [ESP32] Remove warning for GPIO-15 to use PNP transistor on ESP32 [Custom build] Reduce Custom build size [Deep Sleep] Make wake from deep sleep more reliable [Playground] Plugin-107: SI1145 - UV index / IR / visible (letscontrolit#3426) [Docs] Document Domoticz authethication via SendToHTTP Fix build issues P107 [Cleanup] Use PCONFIG macros where possible [Domoticz MQTT] Reduce memory usage when sending message Use small stack allocated Json objects when processing web command [BME680] Make address config uniform for all I2C plugins [Cleanup] Rename I2C address label to reduce build size [BME680] Use the selected I2C address Delete _Custom.h [Travis] Disable test_alt_wifi_ESP8266_4M1M_VCC in CI builds [Typo] Fix 'succesful' typo Fix init check on P106 BME680 [BME680] Force reinit after change settings [P107: SI1145] initialise sensor and stop sensor at each reading [P107_Si1145] Rename default value names and plugin name [BME680] Add to I2C scanner [Flashing] Include Espressif Download Tool in our repository [Docs] Document flashing, especially ESP32 [Docs] Add stubs for not yet documented plugins Add XPT2046 touchscreen to Custom-sample.h Include Notifiers on hardware specific builds [Cleanup] Exclude unused code to reduce build size [Cleanup] Reduce build size by using CDN for CSS and JS [Cleanup] Reduce build size by using iterators for globalMapPortStatus Fix build issue for P019 (missing brace) Rename toasting,js to toasting.js [Cleanup] Reduce build size of WebPages [Cleanup] Disable "New Rules" on Limit build size builds Remove _custom.h Rename plugin ID to P108 because of ID conflict with pending PR [Doc] Add documentation stubs for P108 DDS238-x [PIO] Add "display" and "energy" build collections [Dallas] Fix Dallas sensor not being read if optional pin unset [EmonCMS] Allow sending 4 values per task (letscontrolit#3438) [EmonCMS] Fix build issue [Controller Queue] Optimize C004, C009 and C017 [PWM] Fix fade down (letscontrolit#3434) automatically updated release notes for mega-20201227 Ton Huisman (14): [P099] Touch XPT2046 new plugin - Adds Touch support for XPT2046 (often combined with ILI9341 TFT) - Space for up to 40 user defined touchobjects by name - Allows several types of events, X/Y, X/Y/X, objectname [TaskName#ObjectName] - Calibration to map to screen coordinates (optional) [P099] Code improvements - Avoid using unicode in source - Less scope braces - Memory optimizations - Improve data struct definition - Pointer initializations - Cleanup on `PLUGIN_EXIT` [P099] Cut off x/y coordinate outside calibration [P099] Documentation for TouchScreen - Device configuration - Setup calibration - Define TouchObjects [Docs] Add Touch plugin category - [P099] Improvements and corrections - [P095] Adjust documententation title (remove XPT2046) [P099] Events only fired when Rules enabled Show note in Device settings page if Rules disabled Add USES_P099 to `define_plugin_sets.h` (disabled) [P099] Fixed an issue in x/y scaling function [P099] Add On/Off button to touchobjects - Add On/Off button and Inverted settings per touchobject - Updated documentation and screenshots [P099] Settings page to show when task is disabled [P099] Adjust #include to new structure, enable plugin in test build [P099] Improve string allocation, add options, source formatting - Source formatting and String allocation using reserve() for longer strings - Add option and command for flipping the rotation setting - Improved rotation setting to conform to ILI9341 setting - Add option for setting the debounce delay for On/Off buttons [P099] Add updated file [P099] Fix casting and rounding in calculations Adjust #include path to fix build denisfrench (4): Add #includes required since PR letscontrolit#3139 Update to work with recent builds, lifted from P085 Copy in _P103_DDS238.ino Move P224 in from Playground as P103 jimmys01 (1): Update the IR library josemariaaraujo (1): Plugin for DDS238 Energy Meters juliokele (1): [P069] Fixed LM75A logging uwekaditz (23): [P036] Support for 128x32 display Files for [P092] replaced with original ones from mega [P092] Reduce memory usage when plugin not used PR letscontrolit#3248 [P016] Improvement: a received IR code can be saved and a command can be assigned to it Undo changes for PR letscontrolit#3323 in this branch OLED_P036 ressouce-saving string calculation not using the _ prefix anymore, use reserve() for long log strings Update P036_data_struct.h BUG: #endif missing in P092_data_struct.h Copy and Paste error integrate the changes of PR letscontrolit#3345 (created by pez3) [P092] P092_data->init() is always done if P092_init == false Update _P036_FrameOLED.ino Update P092_data_struct.cpp [P036] PinMode in Web interface adjustable (even InputPullDown if available) [P092] PinMode in Web interface adjustable (even InputPullDown if available) wrong comment sign [P092] Documentation for UVR61-3 (v8.3 or higher) added Delete P092_data_struct.cpp Delete P092_data_struct.h Changes requested by TDer Update P092_DLbus.ino from mega Changes requested by TD-er
Release mega-20201130 Changes in mega-20201130 (since mega-20201125): TD-er (14): [Cleanup] Reduce build size LIMIT_BUILD_SIZE builds [RTTTL] Fix check argument count for RTTTL command (letscontrolit#3391) Check nr. task value decimals = 0, when decimals cannot be set (letscontrolit#3396) [Build Size] Exclude typical debug logs from minimal builds [GPIO] Echo the GPIO command line if parameters are invalid [GPIO] Only log errors when using positive GPIO [GPIO] Add proper valid GPIO pin check to all GPIO commands [Servo] Fix build issue due to missing include [Cleanup] Do not execute invalid command from Domoticz MQTT helper [Storage] Check if file exists before writing to it Check range of set output device values BUILD_NO_DEBUG should be enabled for Normal builds Update build_ESPeasy.sh automatically updated release notes for mega-20201130
Release mega-20201125 Changes in mega-20201125 (since mega-20201102): TD-er (51): [Build IR] Do not exclude IR lib on Custom build Add custom_IR_ESP8266_4M1M PIO environment [Playground] Move P251 PZEM 004T-v30 from Playground to main repo Uncrustify [P102] PZEM004Tv3 [P102] Cleanup serial config [ESP32][Mini Dashboard] Not working (letscontrolit#3356) [GPS] Fix 1024 week roll over on old GPS modules [PVS-Studio] Fix able to build PVS-Studio test builds [GPS] Process full sentence sooner after receiving line [PVS-Studio] Fix suggestions made by PVS-studio [PVS-Studio] Fix suggestions made by PVS-Sturdio (pt 2) [Events] Trigger new events TaskInit#taskname and TaskExit#taskname [I2C] Update I2C clock based on frequency, not in low/high speed mode [command] Trim spaces from commands given via web interface Tools page [RN2483] Properly format LoRaWAN controller credentials on web UI [Dallas] Fix timings for multiple tasks running Dallas sensors [Dallas] Move redundant code from P004, P080 and P100 to a Dallas helper [Dallas] Cleanup P004 DS18b20 plugin code [Dallas] Reschedule at normal interval to prevent drift caused by reading [Dallas] Improve timings to comply with datasheet timings [Dallas] Fix build issue on ESP32 [Docs] Make the P004 Dallas documentation a bit more informative [Dallas] Support multiple temp sensors in 1 task for simultaneous reads [Dallas] Add statistics + speed up reading [Cleanup] Rename _CPlugin_SensorTypeHelper.h to _Plugin_SensorTypeHelper.h [Cleanup] Load default var names when changing nr output values [LoRaWAN] C018 Reduce memory usage when controller not used [Cleanup] Save resources by moving static strings to flash [GPS] Read all data available in the serial buffer [Dallas] Document + update TTN decoder Fix build issue on ESP32 Include all Dallas plugins in the Custom builds [Servo] Add normal build for ESP32 including servo support [Servo] Fix lib_ignore for all ESP82xx builds to ignore ServoESP32 [EmonCMS] Fix copy/paste bug (letscontrolit#3377) Standardise command execution via web interface (letscontrolit#3374) [PWM] Move PWM command to internal + add support for ESP32 PWM frequency [Servo] Fix interoperability between PWM command and servo on ESP32 [PWM] Use central GPIO manager functions for all analogWrite calls [PWM] Fix stability issues on ESP32 regarding PWM [Tone] Move command 'tone' from switch plugin to be an internal command [RTTTL] Move RTTTL command from switch to be an internal command [TLS2561] Use floats instead of double to reduce build size [MS5611] Use bit shift instead of pow calculations [Servo] Move Servo command from switch to internal command [Docs] Document WiFi ECO mode [Cleanup] Fix small left-over issues related to GPIO/Servo handling [Build] Remove some more plugins for limited size builds [ESP32] Make sure calls to open files have leading / on ESP32 [Encoder] Update output immediately after "encwrite" automatically updated release notes for mega-20201125 Ton Huisman (6): [P062 Touch] Add sensitivity configuration - Add global sensitivity setting - Add sensitivity setting per touchobject - Add calibration data gathering and display [P062 touch] Some code improvements [P062 Touch] Fix calibration log [P062] Another calibration log fix [Conversions] Add unitnr to IP address conversion - Uses UDP Network member list to lookup the IP address - Inspired by a [forum question](https://www.letscontrolit.com/forum/viewtopic.php?f=6&t=8066) Add argument for result on unknown IP: - 0 = default `(IP unset)` - 1 = empty string - 2 = `0` fcauwe (1): [P056] Fixed bug when SDS sensor is not reporting uwekaditz (7): Improvement: a received IR code can be saved and a command can be assigned to it ressouce-saving string calculation, Inhibit time between executing the same command, automatic adding of new IR codes is disabled after boot up [P016] reduce memory usage when plugin not used not using the _ prefix anymore, use reserve() for long log strings BUG: Wrong EventValueSource for ExecuteCommand_all() [CHG] #include "../../ESPEasy_common.h" after #ifdef USES_P016 Update platformio_esp32_envs.ini
PreviousNext