Commit Graph

1185 Commits

Author SHA1 Message Date
Frank
a1a7eb6007 bump version to 14.7.2-mdev (development) build 2601151 2026-01-15 10:53:20 +01:00
Frank
5431ab85fa build 2601131 2026-01-13 16:31:52 +01:00
Frank Möhle
5c10d60022 build 2601111 2026-01-11 20:15:38 +01:00
Frank
f771ded956 build 2601091 2026-01-09 16:31:57 +01:00
Frank Möhle
1a7f469f8c Merge pull request #308 from MoonModules/flickerFixer_backport
WLED-MM backport of upstream wled#4980
RMT High-priority Interrupt driver - solves flickering problems on esp32, esp32-S2 and esp32-S3

do not use the new RMTHI driver on old V3 builds (especially esp32dev_compat)
upgrade all esp32 builds to NeoPixelBus 2.7.9 (we can't go higher due to API incompatibilities)
2026-01-09 16:23:10 +01:00
copilot-swe-agent[bot]
747ca3d5aa Implement GitHub repo extraction in build process
Co-authored-by: netmindz <442066+netmindz@users.noreply.github.com>

# Conflicts:
#	platformio.ini
#	wled00/json.cpp
#	wled00/wled.h
2026-01-06 22:52:26 +00:00
Frank
cec6e229df small simplification 2026-01-06 19:16:09 +01:00
Frank
ad0409789e WLEDMM_NO_FILEWAIT => WLEDMM_FILEWAIT
reversed the logic, to make it more straight forward.
2026-01-06 19:02:45 +01:00
Frank
fafcbf9cf4 no file access waiting if we have the flicker-free LEDs driver 2026-01-06 12:30:27 +01:00
Frank
e6cca911d5 build 2601051 2026-01-05 16:05:53 +01:00
Frank
f07070d7c7 build 2601011 2026-01-01 19:46:19 +01:00
Frank
0901d903b9 Merge branch 'mdev' into pixelforge_backport 2026-01-01 18:07:41 +01:00
Frank
7994536b87 build 2512301 2025-12-30 22:08:41 +01:00
Frank
2a56f9b658 fix presets.json corruption, part 2: mutex for presets file writing
prevents concurrent presets.json writes from doSaveState() and savePreset()
2025-12-29 20:48:07 +01:00
Frank
35c847404c Merge branch 'mdev' into pixelforge_backport 2025-12-29 19:47:51 +01:00
Frank
103e7db83f post merge fix, build 2512291 2025-12-29 14:45:11 +01:00
Frank
2775b16141 clarifications (minor)
* replace delay by vTaskDelay (same behaviour)
* degrade user message to debug (expected behaviour -> no message)
* add pdMS_TO_TICKS to esp32SemTake macro (future proof)
2025-12-23 01:59:59 +01:00
Frank
1c2e6aac6e oppsie 2025-12-23 00:11:40 +01:00
Frank
68a76ff442 minor refactoring of critical sections
- define dummy macros for 8266, to avoid #ifdef ESP32
- small hint for readers who were not able to play arcade games in the 1980's ;-)
2025-12-22 17:59:22 +01:00
Frank
30fcd6efad segment & bus.show mutex redesign
* separate mutexes for improved performance:
  - busses.show and effect drawing
  - critical changes to segment vector
  - block out critical segment changes while strip.service() loops over segments
* UDP realtime acquires mutex before drawing
  - prevents corrupted outputs, caused by parallel tasks updating pixels while busses.show() runs
2025-12-21 23:56:09 +01:00
Frank
7df63db744 and mutex for all
revised mutex and critical section handling for segment drawing
- simplified code with macros (no more #if ESP32 ... #endif)
- remove some critical sections (prevents interrupt stalling)
- added mutex to functions that change the list of segments
- added mutexes to all (potential) background drawing code
- use recursive mutexes to prevent accidental self-locking of tasks
2025-12-20 17:13:52 +01:00
Frank
c25f082231 improve stability of DDP via tcp_task (websockets)
* protect pixel buffer changes with critical section
* protect segment list modification with critical section
* make _isServicing and _triggered atomic (move out of packed bitarray)
* allow custom timeout for waitUntilIdle - DDP needs a longer timeout
* protect strip.show() and effect drawing functions with mutex, to prevent crashes
2025-12-19 18:13:20 +01:00
Frank
4ec939cb4c build 2512171 2025-12-17 01:21:17 +01:00
Damian Schneider
69d4970a6b clear enable bit on unused time macros (#5134)
disables the checkmark in UI on unused macros
2025-12-16 19:56:58 +01:00
Frank
12d7c085b2 better handling of low-brightness colors
reduce default gamma from 2.8 to 2.6
2025-12-01 03:12:44 +01:00
Frank
1125a0003b build number 2511281 2025-11-28 23:10:56 +01:00
Frank
1b3823510c update default AP channel to 6, possible fix for "AP does not show"
backport from upstream
2025-11-27 11:14:59 +01:00
Frank
d26c751281 Disable unicode support in ArduinoJson
Disabled unicode hex string support, to save flash memory.
2025-11-25 21:33:21 +01:00
Frank
dcdc05b592 unicode-related robustness improvements
* enable ARDUINOJSON_DECODE_UNICODE (otherwise unicode needs 6(!) bytes for encoding)
* robustness: increase a few tiny string buffers for some extra margin
* Web UI: allow entering up to 64 chars as segment name
2025-11-20 22:36:46 +01:00
Frank
0a0ca506eb Add WLEDMM_FASTPATH definition for all esp32 builds
force all esp32 builds to use WLEDMM_FASTPATH.
The code is proven in use, while non-fastpath is becoming obsolete.
2025-11-18 23:35:15 +01:00
Frank
dc04ccbde7 another attempt to avoid LED glitches during file writing
* mark synchronization variables volatile (thread-safe)
* additional logic in closeFile() to avoid file write while leds are pushed out by NPB driver
* some comments and analysis
* replace "yield()" after file ops with "delay(0)" before operations.
2025-11-15 00:11:35 +01:00
Frank
60878305fb debug code updates & fixes
better output when using WLED_DEBUG_HEAP without WLED_DEBUG
2025-10-25 00:53:25 +02:00
Frank
22d142942a build 2510241, version 14.7.0-dev
ongoing development
2025-10-24 19:15:20 +02:00
Frank
df55650c84 build 2501170 2025-01-17 21:44:52 +01:00
Frank
7bf7ac0c33 build 2501162 2025-01-16 21:01:40 +01:00
Frank
bd31dd2508 increase E131 max universes from 12 to 112 (esp32 boards only)
* use a more meaningful max universes limit of 112 (safe up to 128x128 pixels)
* accept more universes, but only track sequences for the configures max universes
* made e131LastSequenceNumber[] local (its only used in e131.cpp)
2025-01-16 14:48:54 +01:00
Frank
c96b2d7249 platformio.ini - re-introduce platform_packages for compatibility
MM builds are still using the standard arduino platform - we'll "flip the switch" later
2025-01-16 12:03:08 +01:00
Frank
e7614321e5 build 2501100 2025-01-10 18:57:40 +01:00
Frank
c0d8e256ae WLEDMM: we need the same delay when initially switching the relay on 2025-01-09 23:51:03 +01:00
Frank
79c26db4fa MM-specific handling of PICO reserved pins
this complements the previous commit
2025-01-07 16:45:42 +01:00
Frank
32b22636fa Build 2501030 2025-01-03 17:51:14 +01:00
Frank
4116785b44 build 2412300 2024-12-30 22:55:03 +01:00
Frank
fd2bce521b fix for outputs not working any more when receiving DDP or art-net pixels
This disables bus caching (and related speedups) while receiving realtime UDP pixels.

Its still totally unclear to me what happens, and why disabling the cache solves problems.
2024-12-20 01:57:02 +01:00
Frank
87e6a7bd8e start of 14.5.1-dev, build 2412190 2024-12-19 23:16:18 +01:00
Frank
a7a27d9d5e 14.5.0-beta, build 2412180 2024-12-18 11:29:35 +01:00
Frank
2cc08486fd change version numbering scheme
* use 14.5.0-dev instead of "0.14.5.0-b32.41.dev"
* new release name "Small Step"

* semantic versioning compatibility checked, see  https://jubianchi.github.io/semver-check/#/version/14.5.0-dev
2024-12-11 15:09:05 +01:00
Frank
86ed5a82e3 DNA effect: additional parameter "phases" (thanks @ewoudwijma )
controls the number of phases shown by the effect

breaking - the old code was using a fixed width per wave,  while the new one always fits the same number waves into the panel width.
2024-12-03 16:31:52 +01:00
Frank
6c87799ce5 post merge 2024-11-29 00:48:27 +01:00
Frank
f21b2949f1 fix for effect double restart problem when cross-fade is enabled
we only use palette and brightness transitions, so effect restart at the transition end is not required.
2024-11-27 21:13:46 +01:00
Frank
402786c14e GEQ FLat mode (1D) 2024-11-27 11:11:07 +01:00