6455 Commits

Author SHA1 Message Date
9ee6a774e7 Merge branch 'main' of https://gitea.oncloud.my.id/wartana/WLED
Some checks failed
WLED CI / wled_build (push) Has been cancelled
Deploy Nightly / wled_build (push) Has been cancelled
Deploy Nightly / Deploy nightly (push) Has been cancelled
Close stale issues and PRs / stale (push) Has been cancelled
2026-02-20 00:09:18 +08:00
58dc6f8cf6 build: Add WLED bootloader, firmware, and partitions binaries. 2026-02-20 00:09:04 +08:00
bb17574d0c build: Initialize Python virtual environment and install project dependencies.
Some checks failed
WLED CI / wled_build (push) Has been cancelled
2026-02-19 22:31:26 +08:00
ca1319462e Add PCA9685 Usermod
Some checks failed
WLED CI / wled_build (push) Has been cancelled
2026-02-19 22:09:06 +08:00
Frank
1ee42f0206 change version scheme to Major.minor, drop leading "0."
as agreed in #5249
2026-02-14 23:31:28 +01:00
Damian Schneider
d1ed547a7c Improved bus handling: free choice of bus driver in any order and improved memory calculations (#5303)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: DedeHai <6280424+DedeHai@users.noreply.github.com>
2026-02-14 19:00:37 +01:00
Frank Möhle
f830ea498c Clean up global variables namespace, save a few 100 bytes of flash (#5368)
* 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.
2026-02-11 22:24:06 +01:00
Frank
ce31d802d5 add esp-idf managed folders to .gitignore 2026-02-11 10:52:29 +01:00
Frank
f09c449ad5 clarification
according to espressif docs, this is "maximum TX power" not "TX power"
2026-02-11 00:38:40 +01:00
Frank Möhle
6bebb8b4a8 Merge pull request #5338 from wled-install/patch-3
Classic ESP32: GPIO17 is not needed to be reserved for chips with in-package PSRAM (ESP32-D0WDR2-V3 and ESP32-D0WDHR2-V3)
2026-02-10 17:31:40 +01:00
Frank Möhle
e3bc32a823 remove dead (and dangerous) mutex macros in bus_manager.cpp (#5364)
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)
2026-02-09 11:14:58 +01:00
Damian Schneider
6b70c6ae91 Remove FRAMETIME return value from all FX (#5314)
* 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
2026-02-09 07:57:49 +01:00
Frank
b9138b4300 show experimental MCUs in nodes list
add decoding for experimental MCUs to nodes list, instead of just showing "?".
2026-02-09 00:55:30 +01:00
Frank Möhle
7a157a8c91 Add experimental ESP32-C6 and ESP32-C5 options to bugreport template 2026-02-09 00:27:30 +01:00
flo269
7387baace4 Remove gamma value lower limit to enable inverse gamma correction (#5187)
* 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>
2026-02-08 17:53:54 +01:00
Damian Schneider
80e75139c6 Full WiFi scan and apply BSSID if used (#5351)
* use extended wifi scan (fix Arduino bug for ESP32 family), apply BSSID
* if BSSID changed: force reconnect, add comment to BSSID check
2026-02-08 09:26:36 +01:00
Will Tatam
e9ced6ddf1 Merge pull request #5356 from netmindz/welcome-update
Tweak the welcome page to be more appropriate
2026-02-07 20:00:07 +00:00
Frank Möhle
8b6d4134bd Improved Contributor Guidelines & Education (#5348, part1) (#5350)
* Update CONTRIBUTING.md

based on AI proposals in https://github.com/wled/WLED/issues/5348

* Update CONTRIBUTING.md

official style is "GitHub"

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* minor style updates

* styling and perfection

addressing minor recommendations by the rabbit

* cherry-picking some improvement proposals from the rabbit

* extended opening section
* section groups: Getting Started, During Review, After Approval, Coding Guidelines
* removed duplications in AI section
* improve friendly style
* minor corrections

* nitpick

* ok, some more nitpick

* Minor consistency tweak with other headings/sentences

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-02-07 16:37:53 +01:00
Will Tatam
2102bb12f0 Tweak the welcome page to be more appropriate 2026-02-07 15:15:05 +00:00
Frank
747bc2bacd filter out "external" in nigtly build changelog 2026-02-07 13:59:30 +01:00
Will Tatam
4d63b3c8a0 Merge pull request #5353 from netmindz/dmx-output-enabled-error
DMX Output support exclude message incorrectly displayed on builds *with* support
2026-02-06 20:00:17 +00:00
Will Tatam
147384074d Fix the hiding of the lack of dmx output support message for builds that do have support 2026-02-06 19:50:45 +00:00
Frank Möhle
129137d96c Add new build for esp32s3dev_8MB_qspi
It seems that several S3 with 8MB flash have slower qspi PSRAM, and they won't boot with the 8MB_opi firmware.
2026-02-06 12:58:59 +01:00
gustebeast
0120b1ab79 Add user_fx installation instructions and a usermod config example (#5327)
* Update user_fx to include installation instructions and a usermod config example
* Explain installation when using multiple usermods
2026-02-06 07:16:25 +01:00
Frank Möhle
c64b1e3e5d Fix typo in CONTRIBUTING.md 2026-02-05 19:51:59 +01:00
Frank Möhle
0c08c27df4 CONTRIBUTING.md minor formatting updates for easier reading 2026-02-05 19:51:14 +01:00
Damian Schneider
2676ac771d apply inverse gamma to segment brightness for better color preservation (#5343) 2026-02-04 06:57:14 +01:00
wled-install
680ef26f4d Update pin_manager.cpp 2026-02-02 20:55:38 +01:00
wled-install
eb4bd6fbb1 Update pin_manager.cpp 2026-02-02 18:55:29 +01:00
Will Miles
6b953d96eb Fix 5168 (#5181)
* 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
2026-01-31 19:54:03 -05:00
Benjamin Kraus
3d33bae2b8 Add support for WPA-Enterprise (#5194)
* 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.
2026-01-31 19:51:59 -05:00
Damian Schneider
1ca55e42af fix relay not turning on at boot (#5315)
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
2026-01-31 17:40:53 +01:00
Damian Schneider
2c4ed4249d New custom palettes editor (#5010)
* 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
2026-01-30 20:35:15 +01:00
Damian Schneider
f19d29cd64 add json validation to file inputs in UI and minify before upload (#5248)
* also updated edit.htm to do the same
2026-01-30 08:18:17 +01:00
Damian Schneider
1031e70d70 Replace buffer lock magic numbers with defines (#5217)
* replace magic numbers with defines
2026-01-30 08:14:53 +01:00
Frank Möhle
c9f47d4b5c new ESP32 node types
Added new node types for unsupported ESP32 variants, based on same file from ESP Easy.

Just to be prepared for new nodes (future support)
2026-01-28 23:37:22 +01:00
Damian Schneider
857e73ab25 adding image rotation to PixelForge gif tool (#5309) 2026-01-28 19:15:28 +01:00
Frank Möhle
4e072962c0 Merge pull request #5323 from wled/ethernet_led_pin
Change default LED pin to 4 in esp32 ethernet builds and set AR default to "no mic" mode.
The "normal" default LED pin 16 is conflicting with pins needed by many ethernet boards, which can cause random crashes.
2026-01-28 15:29:47 +01:00
Frank
81af160be6 disable repeating warning, set all AR pins to "unused"
* ethernet warning was repeating too often
* make sure that AR usermod will not grab any PINs at startup
2026-01-28 15:24:40 +01:00
Frank Möhle
a64334c32e correct wrong AR build flag
typo
2026-01-27 23:50:34 +01:00
Frank Möhle
8d39dac654 ethernet: avoid dangerous pins
LED pin: 16 -> 4
AR: no microphone, no pins
clarify comment when to disable ESP-NOW
2026-01-27 23:33:33 +01:00
Frank Möhle
e867fcab1a Change default LED pin to 4 in Ethernet builds
GPIO 4 seems to be one of the few pins that is not used in ANY supported ethernet config.

See https://github.com/wled/WLED/issues/5155#issuecomment-3614391561
2026-01-27 23:14:06 +01:00
Frank Möhle
9683896a21 Merge pull request #5317 from gustebeast/wled-gtb-flash-size
Reduce flash size of TetrisAI_V2 by 97%, by removing includes of iostream, iterator and algorithm headers
2026-01-27 17:14:41 +01:00
Martin Fritzsche
ca1d6614b2 Add option to save unmodified presets to autosave usermod (#5175)
* Add option to save unmodified presets to autosave usermod

* Fix lastRun never being assigned
2026-01-24 16:26:47 -05:00
gustebeast
96f423438b Reduce flash size of TetrisAI_V2 by 97%
Main branch without Tetris
Flash: [========  ]  79.8% (used 1255301 bytes from 1572864 bytes)

Main branch with Tetris (+196kb)
Flash: [========= ]  92.3% (used 1452049 bytes from 1572864 bytes)

This commit with Tetris (+6kb, 97% less flash)
Flash: [========  ]  80.2% (used 1261625 bytes from 1572864 bytes)
2026-01-24 19:34:32 +00:00
Copilot
df94a8d5af Remove MAX_LEDS_PER_BUS limitation for virtual buses (#5238)
- Frontend: Updated settings_leds.htm to allow virtual buses up to 16384 LEDs
- Backend: Modified BusConfig::adjustBounds() to skip MAX_LEDS_PER_BUS check for virtual buses

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: DedeHai <6280424+DedeHai@users.noreply.github.com>
2026-01-23 06:58:27 +01:00
Damian Schneider
d9cc751db4 Adding sequential resource loading to edit.htm (#5306)
Avoids multiple parallel connections which is helpful in low heap situations, especially on ESP8266
2026-01-23 06:45:45 +01:00
Damian Schneider
99c3f68f80 Merge pull request #5307 from ChuckMash/main
fix button byte comment
2026-01-22 08:41:07 +01:00
ChuckMash
be900737d2 fix button byte comment 2026-01-21 16:25:22 -08:00
Damian Schneider
af8db57f02 Fix for cfg exceeding LED limit (#4939)
* 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>
2026-01-19 19:33:06 +01:00