Tags: ly1bwb/ESPEasy
Tags
Merge tag 'mega-20230930' into mega_vurk_dmr
Release mega-20230930
Changes in mega-20230930 (since mega-20230822):
Adam Groszer (1):
added InfluxDB v2 HTTP API docs and some other minors
Fabio Ancona (3):
Update README.md adding "Climate"
[DOC] Update P014 to avoid to use this Plugin with SHT2x devices
Update P014.rst
Michael Schröder (1):
Ignore more variants of own Custom.h
TD-er (84):
Update issue templates
[ADS1x15] Support ADS1015 & add sample rate selector
[ADS1x15] Add ADS1015/ADS1115 sensor type detection to task config page
[Cleanup] Add macro NR_ELEMENTS for array counting
[ADS1x15] Add option to select multiple task value outputs
[ADS1x15] Simplify storage of settings
[ADS1x15] Update documentation
[ADS1x15] Update documentation
[ADS1x15] Replace "ADS1115" with "ADS1x15" in docs and I2C scan result
[ADS1x15] Fix PBC -> PCB typo in documentation
[BMP3xx] Add support for Bosch BMP384/388/390 temp/pressure modules
[BMP3xx] Fix saving I2C address
[BMP3xx] Perform a few reads after init to initialize the IIR filter
[BMP3xx] Add detected chip + altitude compensation
[BMP3xx] Document P154 BMP388/BMP390
[BME280] Show detected sensor model like is done for ADS1x15 and BMP3xx
[Scheduler] Cleanup of Scheduler code
[Scheduler] Allow to schedule task calls to specific functions
[Scheduler] Split Various Scheduler timer types into separate .cpp files
[Cleanup] Fix build issue in WOL plugin
[Scheduler] Remove unneeded scheduler call type
[Scheduler] Cleanup includes and fix decode()
[Documentation] Document ESPEasy Functional Blocks
[Documentation] Add ESPEasy Functional block diagram
[Docs] Mark arrow between controller and MQTT broker as bidirectional
[Docs] Clarify some arrows in ESPEasy block diagram
[Task] Revert 'soft disable' task (for now...)
[Cleanup] Make deviceIndex_t a strict class
[Cleanup] Only allow PLUGIN_ADD to change Device[] vector
[Cleanup] Make pluginID_t a strict class
[Cleanup] Fix build error on ETH builds with pluginID_t
[Cleanup] Partial conversion npluginID_T to class
[Cleanup] Complete convert npluginID_t to strict class
[Cleanup] Reduce build size on ESP8266 making DeviceVector less strict
[Cleanup] Fix crashing compiler on ESP8266 builds
[Cleanup] Reduce build size to 'undo' extra added bytes in this cleanup
[Cleanup] Further reduction of build size
[Cleanup] Fix build on ESP8266 Collection A
[Cleanup] Fix build error on ESP8266 Display
[Cleanup] Reduce build size by moving small functions to .h files
[Cleanup] Use constexpr for static pluginID compares
[Cleanup] Use more constexpr for static pluginID compares
[Controller] Simplify ESPEasy core administration of CPlugins
[Cleanup] Misc code cleanup + add comments from PVS Studio
[Plugin] Simplify ESPEasy plugin registration + reduce build size
[Cleanup] Simplify code for return values internal ESPEasy commands
[Cleanup] Simplify get/set functions of VariousBits1 in SettingsStruct
[Cleanup] Remove no longer needed globals/Protocol.h/.cpp
[Neopixel] Fix build error signed/unsigned compare
[Cleanup] Apply GPIO log optimizations to reduce build size (@ton)
[Cleanup] Fix storing new task (taskenable still doesn't work...)
[Cleanup] Fix silly bug setting tasks disabled.
[Cleanup] Reduce size of embedded lookup table to only included plugins
[Cleanup] Do not use 'Number' in DeviceStruct class
[Cleanup] Simplify DeviceIndex_sorted
[Cleanup] Fix merge issue
[Cleanup] Minor code tweaks to reduce build size
[Debug] Add "minimal" special build for analysis
[PVS Studio] Fix issues found by PVS Studio
[Cleanup] Reduce build size by moving isInitialized() to .h files
[Servo] Fix servo for ESP32-S2/C3
[Cleanup] Reduce build size for bitlevel access in Controller Settings
[Cleanup] Remove code redundancy from DevicesPage and UploadPage
[PluginStats] Fix showing stats when using 256 samples buffer
[Cleanup] Fix crash when adding new controller
[Cleanup] Disable drawing partition layout for limit build size builds
[Cleanup] Fix isNaN check in thermocouple plugin
[Debug] Add special debug build env for Display builds
[Cleanup] Reduce build size making Improv smaller
[Debug] Set special debug 'display' build to BUILD_NO_DEBUG
[Cleanup] Shorten (very) elaborate notes in P039 ThermoCouple
[Cleanup] clarify single event note + reduce GPIO command logs
[I2C scanner] Fix missing ++x; causing reboot during I2C scan
[ADC] Fix handling negative ADC values from Hall Effect sensor
[Notifications] Fix deleting notifier
[GPIO] Fix check for valid GPIO
[RTTTL] Fix parsing correct command argument
[RTTTL] Fix argument index for melody + prevent crash when changing song
[RTTTL] Fix stupid mix-up of old/new command argument parsing
[RTTTL] Only check for old/new syntax in the 1st argument
[RTTTL] I need some coffee....
[Internal temp] Fix crashes on ESP32-S2/S3/C3 + filter
[ESP32 temp] Fix specific includes for ESP32-S2
automatically updated release notes for mega-20230930
Ton Huisman (77):
[P036] Show current display content on Devices page
[P036] Wrap on-display output in `pre` tag to keep spaces and similar formatting
[P036] Remove unreachable code, other optimizations
[addHtmlDiv] Add optional `attribute` argument
[P036] Reduce Show Display font-size to 75%, code optimizations
[P023] Add Show Values for on-Display content, code improvements and optimizations
[P036] Make Interval optional
[P036] Update documentation
[P023] Add documentation
[P023] Updated screenshot
[P036] Add center/right align in preview, make preview compile-optional, code optimizations
[P036] Only disable alignment feature for 1M builds
[P036] Add new compile-time directives to Custom-sample.h
[Build] Make `Climate` build fit
[P036] Code optimizations
[P023] Minor code optimizations
[P036] Add optional user-defined display headers
[P036] Change compile-time defines to bool, change enums to uint8_t type, update changelog
[P036] Fix copy/paste error for `userDef2`
[P028] Add detection-mode setting
[P028] Ignore humidity if Sensor model BMP280 is selected
[Devices] Add event PLUGIN_WEBFORM_LOAD_ALWAYS that is also called for remote data-feed devices
[P028] Fix VType matching for remote data-feed, implement new WEBFORM_LOAD_ALWAYS event
[P028] Update documentation
[Controllers] Show correct data (or nothing) for controllers without Host or Port settings
[Controllers] Code improvement
[P036] Enable Userdefined headers by default for LIMIT_BUILD_SIZE builds
[P104] Add Dot subcommand to draw individual dots in a zone
[P104] Update documentation
[P104] Code improvements and a bugfix
[P028] Fix merge conflict
[P036] Code improvements using `constexpr`
[Rules] Improving removal of comments
[Rules] Separate comment removal from reading a line
[Release] `release.yml` script improvements
[P036] Fix merge conflicts, small source formatting improvements
[SD-card] Bugfix: Opening a file from SD-card doesn't always work
[SD-browser] Code improvements
[P153] Fix incorrect Sensor_VType setting
[SD-Card] Show SD-card CS GPIO pin in pin-selection
[P036] Bugfix in documentation-syntax
[P051] Fix device being automatically disabled and I2C scan issue
[I2C Scan] Make I2C scan more robust by adding extra wakeup
[Docs] Add I2C Scan documentation
[Docs] Additional I2C Scan documentation (mux)
[Docs] Rules example for PostToHTTP/PutToHTTP
[UI] Bugfix: Don't show - None - [SD-CARD] in GPIO selector when SD-Card is not configured (improves letscontrolit#4780)
[Build] Restore RTTTL feature in ESP8266 Climate build
[RTTTL] Add Async play and other improvements
[RTTTL] update documentation
[GPIO] Decrease buildsize by optimizing logging
[RTTTL] Add FEATURE_ flags to Custom-sample.h
[GPIO] Adopt optimized logging improvements (@gijs)
[Build] Add Collection G builds
[Build] Move [P154] BMP3xx to Collection G
[Build] Add checks for some external defined compiletime settings
[P036] Code formatting and optimizations
[P037] Build: Include all features in ESP32 builds
[P073] Reduce logging for BUILD_NO_DEBUG builds to reduce size
[P036] Updates for documentation
[P026][Sysvars] Add Internal temperature sensor value for ESP32
[P026][Sysvars] Feedback and fixes
[P026][Sysvars] Fix typo in comment
[P026] Add Get Config feature for all values
[P026] Add documentation
[Scripts] Handle 8M builds in WebFlasher
[P026][Sysvars] Avoid temperature reading errors on ESP32 classic (2 tries only)
[P026][Sysvars] Read temperature every second on ESP32 classic for better results
[Build] Try to use real branch name on GH Actions builds
[Build] Ignore Docs commits to trigger an Actions run
[P026][Sysvars] Explicitly disable FEATURE_INTERNAL_TEMPERATURE for ESP8266
[P026][Sysvars] Add delay() call
[Build][P026] Update documentation (without Actions run...)
[P037] Update documentation
[RTTTL] Add events for RTTTL play (async only), fix intermitted/skipped async playing
[RTTTL] Restore Cancelled event, update documentation
[P000 Docs] Update some internal links
chromoxdor (2):
Fixed error in section TaskValueSet
Update GPIO.cpp
dependabot[bot] (1):
Bump actions/checkout from 3 to 4
uwekaditz (9):
[P036] Add ticker as scroll option
Compiler error if P036_SendEvent was not set
Calculation for ticker IdxStart and IdxEnd was wrong for 64x48 display, Start page updates after network has connected in PLUGIN_ONCE_A_SECOND
Some bug fixes (only 1 line displayed)
Removed unnecessary clear() functions
Merged with mega from 2023-08-25
Wrong #ifdef P036_SEND_EVENTS
CHG: Disable scrolling or ticker if new line content received (PLUGIN_WRITE)
CHG: Code reduced if P036_ENABLE_TICKER is not used
Merge tag 'mega-20230822' into mega_vurk_dmr
Release mega-20230822
Changes in mega-20230822 (since mega-20230623):
TD-er (103):
[Eastron] Fix merge issues
[Eastron] Uncrustify + remove 500 bytes of duplicate strings
[Eastron] Fix merge issues
[Cleanup] Reduce bin size by stripping unused code
[Cleanup] Reduce bin size by deduplicate factory reset code
[Factory Reset] Fix keeping settings (letscontrolit#4263)
[RFcal] Fix typo in command "clearwifirfcal"
[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()
[Build] Fix merge issues, missing #endif
[ESP32-solo1] Add support for single-core ESP32
[Web flasher] Split "4M collections builds" in a separate group
[release build] Copy ESP32solo1 binaries during release
[Crash Analysis] Show controller/plugin name on crash at system event
[Build] Fix merge issue with duplicate PlatformIO envs
[Build] Fix missing #ifdef check
[Devices] Fix showing all included plugins in devices pull-down list
[Cleanup] Move plugin function pointer array to PROGMEM
[Cleanup] Simplify weblog buffer
[Cleanup] Fix build error due to missing defines
[Cleanup] Improve web serve speed + value formatting speed
[Cleanup] Reduce resouces used on Dallas, Sysinfo and Dummy tasks
[Build] Fix missing #ifdef check
[Cleanup] Reduce CPU usage only calculate valuecount once
[ESPEasy p2p] Remove delay() calls from p2p messaging
[Cleanup] Remove unused PLUGIN_EVENT_OUT
[Cleanup] Get timing stats for controller function calls
[cleanup] Simplify parse controller variables
[P2P] unit with latest build not receiving values of shared plugins (letscontrolit#4718)
[P2P] Check for unset DeviceNumber in matchesSensorType
[Cleanup] Speedup frequent calls + reduce build size
[Cleanup] Reduce calls to saveToRTC()
[Cleanup] Simplify mustConsiderAsJSONString()
[Cleanup] Remove long webserver debug log
[Cleanup] Reduce backgroundtasks() frequency
[Cleanup] Reduce mem allocs for ADC logs
[HLW8012] Improve stability and accuracy
[Cleanup] Allow a task to set initial PLUGIN_READ on init
[Cleanup] Reduce memory usage when timingstats is disabled (or read)
[PlatformIO] Force PIO to 6.1.7
[HLW8012] Fix instability due to IRAM
[Build] Move "hard_" builds to ESP8266 SDK 3.1.2
[Cleanup] Reduce items being logged in TimingStats
[Build] Revert switching 'hard_' builds to ESP8266 SDK 2.7.x
[HLW8012] Remove IIR filter from interrupt callback function
[PlatformIO] Test build with PIO 6.1.9rc1
[PlatformIO] Test build PIO 6.1.9rc1 (2nd attempt)
[PIO] Set minimal PIO version to 6.1.9
[Cleanup] Simplify allocation of ControllerSettings allocation, memleak?
[PVS Studio] Fix issues found by PVS Studio
[PVS Studio] Fix build error & unsafe macro
[PVS Studio] Fix some issues found by PVS Studio
[Cleanup] Attempt to fix memory leak in PluginTaskData
[ArduinoJSON] Update to ArduinoJson 6.21.2
[Cleanup] Simplify PluginStats::getSample
[PVS Studio] Fix some issues reported by PVS Studio
[MDNS] Disable MDNS for ESP8266 due to memory leak
[CSE7766] Improve reliability + fix issue with console port selection
[CSE7766] Fix parsing packets with lost bytes
[CSE7766] Add output selection of units of measure
[WiFi] Fix ESP8266 instability compiler optimization flag -O2
[mDNS] Call MDNS.announce() every second on ESP8266 (mem leak?)
[Cleanup] Add strformat function to simplify log line creation
[Build] Fix build errors incorrect use of strformat()
[Cleanup] Move duplicate oversampling code to helper class
[ESP32 Serial] Fix serial tasks not working after save or restart task
[ESP32 Serial] Do not cache baud rate between end() and begin()
[Cleanup] Replace oversampling code duplication P145
[Cleanup] Replace oversampling code duplication P060
[Cleanup] Replace oversampling code duplication P067
[CSE7766] Update task value with intermediate oversampling value
[Oversampling] Add reset + weighted keep last
[ESP32 Serial] Fix serial tasks not working after save or restart task
[Eastron] Update SDM library to v2.2.2
[Eastron] Re-apply ESPEasy specific changes to SDM library
[Eastron] Generate all SDM register strings
[Eastron] Cleanup showing default taskvalue names + SDM72_V2add
[Eastron] Cleanup code duplicates & uncrustify
[Eastron] Fix compiler warnings
[Eastron] Add support for SDM320C
[Eastron] Split 'readVal' function to allow async reads
[Eastron] Add "demand" in register description
[Eastron] Implement complete async read of Eastron registers
[Eastron] Add hardware RTS support for ESP32 (for ~RE/DE pin on RS485)
[Eastron] Fix ESP32 hardware RTS flow control
[Eastron] improve speed & add commands to set modbusID & baudrate
[Eastron] Start documentation
[Eastron] Document RS485 specific wiring
[Eastron] Complete documentation on Eastron plugin
[Eastron] Add support for RS485 collision detection on ESP32
[Serial Console] Fix HW Serial0 unusable on ESP8266 limited builds
[Eastron] Add delay on first PLUGIN_READ to allow reading registers
[Build] Set ESP8266 Energy build to LIMIT_BUILD_SIZE
[Build] Change LIMIT_BUILD_SIZE on ESP8266 Energy to BUILD_NO_DEBUG
[Eastron] Improve read stability on ESP8266
[CSE7766] Fix crash when not all stats are enabled
[Settings] Fix setting task var names & load default names
[Settings] Fix task value names not being updated on ESP32 (cache)
[Settings] Fix setting custom task value name on Eastron task
[ADS1115] Retry on error reads within timeout
automatically updated release notes for mega-20230822
Ton Huisman (68):
[Release][Bugfix] Script should deploy an archive per CPU Architecture
[Docs] Describe `Wrk` and `Wkd` indicators for `Clock#Time` event
[P153] Remove unused #include
[Build] Add support for ESP32-S3 8MB units
[Build] Rearrange 8M2M to 8M1M configuration
[P118] Fix compilation when suppressing only DEBUG logging
[Build] Check all ESP32 builds correctly for factory.bin filesize
[Docs] Fix typo on Plugin page
[Build] Add `boards` definitions for ESP32-S3 8MB and ESP32-S3 16MB
[ETH] Allow Ethernet Power GPIO pin unset (letscontrolit#4724)
[P014] Set default output values to Temp/Hum
[P118] Fix compilation when included in Custom builds
[Build] Update board_name for custom_ESP32_4M2M_NO_OTA_LittleFS
[Build] Add missing #undef FEATURE_TIMING_STATS
[Rules] Add minHexDigits to toHex function
[Docs] Improvements and various fixes
[Build] Add some missing defines to MAX build to make them explicitly available
[P128] Revert changes after library update (not working with ESP8266)
[UI] Add option for disabling Rules auto-completion
[P035] Add Inverted output option, as supported by the IRsend library
[P035] Code improvements
[P035] Add documentation
[P009] Small documentation typo
[P014] Fix invalid cast
[Build] Move ESP32_4M2M settings to own board file
[Build] Remove unused board definition files
[P118] Allow enable/disable of ORCON feature via Custom.h
[P141] Allow enable/disable of Cursor X/Y values feature via Custom.h
[Console] Add newline after console command to avoid mixing in with logging
[P046] Fix documentation, address some code issues, WiP
[P046] Fix compilation issue and include in MAX build
[Build] Include IR plugins in MAX builds
[P035] Small size reductions, remove some unused commented code
[Build] Enable I2C device scan for ESP32 builds
[P098] Add documentation
[EasyColorCode] Fix typo `7ddt` (was 7dtt)
[EasyColorCode] Add some missing commands
[P013] Move to category Distance (from position), add missing [P134] to Distance too
[Controllers] Fix `validCPluginID` check (initialization and actual check)
[P098] Add precaution to documentation for PWM usage
[Build] Reduce ENERGY build size by removing DEBUG logging
[Build] Fix compiler warnings
[EasyColorCode] Fix some auto-complete issues and typos
[EasyColorCode] Add few missing commands for P036
[Lib] Update NeoPixelBus to current latest
[P128] Use customized NeoPixelBus library, upgrading to latest features won't properly work
[P113] Fix for shifted I2C address in library, code improvements
[P113] Apply the fix at the original crime-scene ;-)
[Libs] Update VL53L1X library to current latest v1.2.12 (with fix)
[P113] Disable I2C address selection as that seems to mess up the sensor
[P113] Update documentation
[P122] Uncrustify and move initialization from constructor to .h file
[P153] Remove unused variable
[P020] Sourcecode formatting for clarification
[Docs] Correct some layout issues, causing parts of documentation to disappear
[P113] Add a few extra nullptr checks
[Core] Fix some string/message inconsistencies
[P113] Add a few extra nullptr checks
[Converters] Add toStringNoZero() function
[Generic] Improvements and fixes part 2, Aug 2023
[P113] Fix typo in log statement
[AdaGFX] Additional error information for unsupported bmp files, improve docs
[UI] Widen `textarea` fields for easier input of larger/wider text
[Docs] P002 / P047 Add YT link for selecting a proper (analog) Soil-moisture sensor
[Converters] Use the correct conversion
[Tools] Remove ESP Easy Flasher, update Espressif Download tool
[Tools] Revert esptool to last version
[Tools] Add `blank_8MB.bin` for erasing 8MB units, exclude from ESP8266 archive
tomcatxx (3):
Update SDM.h
Update _P078_Eastron.ino
Update SDM.h