* reduce scope of some variables to "static"
these are not used anywhere else. Making them static avoid name conflicts, cleans up the global scope and in some cases allows for better optimization by the compiler.
* remove unused reference ``tz``from analog clock usermod
* side-catch: remove two "local var shadows global var" warnings
* reduce scope of functions declared globally, but not used anywhere else
Safe to make static
* declared in fcn_declare.h, only used locally in one file
* not declared in fcn_declare.h, only used locally
* HUB75 small optimization
make bit array functions "static inline"
-> better for optimization, saves some bytes because the compiler does not need to preserve a non-inline function copy for external references.
* a few more static functions
as suggested by the rabbit.
these macros are
* not used any more
* dangerous because they don't time out
* dangerous because they use an internal mutex of the ledc driver (not part of the LEDC API)
* remove "return FRAMETIME" from all FX, fix timing for some FX
- all FX now render every frame, no more "speed up" during transitions
* fix missing return by adding FS_FALLBACK_STATIC macro
* add FX_FALLBACK_STATIC also to user_fx
* remove obsolete seg.next_time
* Enable inverse gamma correction (gamma < 1.0)
Allow gamma values from 0.1 to 3.0 instead of restricting to > 1.0.
This enables inverse gamma curves for use cases requiring brightened
mid-tones and compressed highlights.
Changes:
- Update backend validation in set.cpp and cfg.cpp to accept 0.1-3.0
- Update HTML form min value from 1 to 0.1
Co-authored-by: Flo <flo@Mac.lan>
Co-authored-by: Damian Schneider <daedae@gmx.ch>
* Fix slop from 5168
Remove the redundant field from the info structure and report what we
actually want to know.
* Fix psram size estimate
Shorten the name, and round up -- getPsramSize() is the usable size,
not the total size (the difference is allocator overhead).
* Let psram builds work without it
* Remove impossible cases in psram reports
* Squashed commit of the following:
commit 70fe1fc76d3d88947d4c9f8b43d58ea90f944230
Author: Benjamin Kraus <ben@benkraus.com>
Date: Fri Oct 31 20:52:13 2025 -0400
Added support for enterprise WiFi.
* Updated based on feedback from CodeRabbit.
* Fixed issue with strncmp identified by CodeRabbit.
* Replaced split declaration-then-assignment with a single statement.
* Revert whitespace only changes.
* Move WPA enterprise behind a feature flag.
These changes eliminate an elaborate race condition
* add dedicated function to handle on/off and relay
* add clarifying comment on output set order
* add define for relay delay, honor forceOff in all cases
* full refactoring, added live preview, better minifying in cdata.js
* update main UI buttons, support for gaps in cpal files, cpal UI cleanup
* fixed some layout issues, added un-ordered cpal deletion
* changed to tab indentation, paste button border color now holds stored color
* fix preview to work properly and some other fixes in UI
* always unfreeze
* new approach to loading iro.js, add harmonic random palette, many fixes.
* decoupling iro.j, update UI of cpal.htm
- load iro.js sequentially
- no parallel requests in cpal.htm
- update UI buttons
- fix showing sequential loading of palettes (using opacity)
- better UX for mobile (larger markers, larger editor)
- various fixes
* small change to buttons
* load iro.js dynamically, remove iro.js from index.htm, revert changes to cdata.js
* improved visibility for very dark/black palettes and markers
* Safety Checks for UI, fix for cfg exceeding LED limit
* improvements to low heap check
* add `isPlaceholder()` to bus, some fixes
* remove `disableForceReconnect` for better future implementation
* add "glitch gating" for C3 and check heapy every 5 seconds instead of every secondd
* replace magic number with the correct define, more robust bus defer by look-ahead
In the event that a Bus fails to initialize, or the memory validation
fails, keep the configuration around so the settings contents don't
change out from under the user.
---------
Co-authored-by: Will Miles <will@willmiles.net>
- add touch pin option
- add wake-up on timer macro
- fix powerup behaviour: now works as intended i.e. if no sleep delay set, it enters deepsleep on powerup but only then
- apply macro after wake up even if the window is missed
- respect date-range setting of macro
- removed non-existing pin from touch list
- removed non existing voltageCheck setting
- fixed incorrect threshold setting
- code cleanup
- fix pullup/pulldown for deep-sleep GPIOs
pin init is now working correctly, tested on all platforms
* remove unused statement
---------
Co-authored-by: Damian Schneider <daedae@gmx.ch>
- PulLightControl UM: dont release a lock you do not own
- off-by-one error in extractModeSlider (used only in rotary in UM)
- safety check in playlist in case something goes horribly wrong