Commit Graph

6827 Commits

Author SHA1 Message Date
Frank
e47b08938f minor improvements
* use WLED_HAVE_RTC_MEMORY_HEAP
* fix typo in comment
2026-03-29 16:04:49 +02:00
Frank
b63f2251f0 moving S3 buildenv back where it used to be 2026-03-29 15:44:48 +02:00
Frank
f4fbdbf367 Merge branch 'V5' into V5-C6 2026-03-29 15:34:11 +02:00
Frank
795c6893be ensure consistent inheritance of lib_ignore 2026-03-29 14:19:47 +02:00
Frank
97e1b8ee05 typo's in comments 2026-03-29 14:08:44 +02:00
Frank
be92bacc87 post-merge fixes 2026-03-29 13:49:38 +02:00
Frank
e04a156e78 Merge branch 'main' into V5 2026-03-29 13:30:21 +02:00
Damian Schneider
42844e4fa8 Adding AR support for C3: use DSP FFT and integer math (#4750)
*  fixed problem on S3: turns out to be mem alignment
* fixed scaling for C3
* code cleanup, added arduinoFFT back in, added ifdefs & description

also added major peak and frequency bin calculation for DSP FFT

* moved ifdefs to correct place, separated sample filter & FFT filter application

post FFT band pass and IIR applied to samples are now separated: I found in testing that applying the sample filter helps with aliasing into base-bands, there is no need to hard-cut the lowest frequencies after FFT.

* changed sample low pass cutoff from 80Hz to 90Hz

better anti-aliasing at minimal loss of base frequency.

* code cleanup and minor speed improvement
- moved scaling of FFT values into fftAddAvg() to use ferwer operations
- added "using" for math types, removing some ifdefs and duplications
2026-03-29 13:18:26 +02:00
Benjam Welker
4a6ff64519 add more macro/timer slots (#5140)
* convert to vectors

* Update wled00/cfg.cpp

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

* UI fixes

converted preset entry to select box for ease of use

* no eeprom compatibility

* tighten up code

* fix sunrise/sunset issue

* fix issue with sunrise/sunset/regular selector

* preset dropdowns

* sort before use

* delete timer when preset = 0

* truncate long names and add sort options

* html updates

* fix save bug

* make boxes a bit darker

* add fallback if localStorage is empty

* remove sort option

* code rabbit suggested fixes

* remove css

* restyling

* common

* dry preset loading

* revert missing const

* update deep sleep usermod with new timer struct

* tabs

* Revert "tabs"

This reverts commit fdc01f2f5d.

* remove unneeded clamp checks

* leave index alone

* remove useless check

* fix up await functions

* only fetch localstorage

* inline single line function

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-03-29 13:01:24 +02:00
Damian Schneider
f6a43f4dfa Extend scrolling text FX with custom fonts and international UTF-8 character support (#5372)
* new font format: *.wbf with a 12byte header, bit packed data and support for variable char width
* add support to load custom fonts from file system
* UTF-8 to unicode support functions
* support for any unicode offset in char 128-255 enables many international chars
* update built-in fonts with similar but nicer ones
* update pixelforge scrolling text tool with a preview and support for custom fonts
* accompanied by Font Factory tool (pixelforge) to easily create custom fonts from various formats
2026-03-29 12:10:23 +02:00
Damian Schneider
b7d2c3cd85 Full fastled replacement (#4615)
* removed fastled dependencies
- copied relevant functions
- optimized some of them for ESP32
* added perlin functions from PR, code cleanup. work in progress
* added hsv2rgb16rainbow function, some cleanup
- new rainbow function is faster and more accurate than original fastled function
* updated conversion functions (now faster), cleanup, optimizations
* code cleanup, moved (most) fastled functions into fastled_fcn.cpp
- resolves licensing issue
- moved PRNG into its own space
- prettified some code
* fixed prng: it now generates a full sequence of random numbers, thx @TripleWhy for pointing out the flaw
* rename to fastled_slim, add hsv2rgb() convenience aliases, fix FX usage
* improve ease8inOutCubic() accuracy
* fix background in twinklefox, minor optimization in PS (always use gamma LUT, no ifs)
* bugfixes in FX, adding white and cct transition to slow transition FX

Co-authored-by: Frank <91616163+softhack007@users.noreply.github.com>
2026-03-29 11:40:16 +02:00
Frank
b541c1d284 Merge branch 'V5' into V5-C6 2026-03-28 11:07:21 +01:00
Frank Möhle
39335675c1 Clarify instruction on gathering information when unsure 2026-03-28 11:06:49 +01:00
Frank Möhle
8f951f5068 Update copilot instructions for clarity and guidance
Added instructions for handling uncertainty and providing references.
2026-03-28 11:06:49 +01:00
Will Tatam
0f538eb155 do not keep prompting if there was an error, e.g no wifi 2026-03-28 11:06:49 +01:00
Frank Möhle
20c021d9b8 Clarify instruction on gathering information when unsure 2026-03-28 10:04:40 +01:00
Frank Möhle
9c93cb8cf0 Update copilot instructions for clarity and guidance
Added instructions for handling uncertainty and providing references.
2026-03-28 10:00:31 +01:00
Frank
3cb3ff5223 V5 build 2603281 2026-03-28 02:20:31 +01:00
Frank
e53500f042 V5 build 2603281 2026-03-28 02:19:39 +01:00
Frank
c312f51050 revive device fingerprint in V5
* mbedtls_sha1_... functions have different names
* use CONFIG_SOC_ADC_RTC_MAX_BITWIDTH
* legacy adc calibration API is not supported on new MCUs (-C5, -C6, -C61, -P4)
2026-03-28 01:25:43 +01:00
Will Tatam
7670246a3b do not keep prompting if there was an error, e.g no wifi 2026-03-28 00:22:46 +00:00
Will Tatam
ad5043f7e0 do not keep prompting if there was an error, e.g no wifi 2026-03-28 00:21:37 +00:00
Frank
e362891b8f revive device fingerprint in V5
* mbedtls_sha1_... functions have different names
* use CONFIG_SOC_ADC_RTC_MAX_BITWIDTH
* legacy adc calibration API is not supported on new MCUs (-C5, -C6, -C61, -P4)
2026-03-28 00:54:18 +01:00
Frank
dfba1e97e6 C5: NTP temporarily disabled as it causes crashes
assert failed: udp_new_ip_type udp.c:1278 (Required to lock TCPIP core functionality!)
2026-03-27 21:26:48 +01:00
Frank
61f3c6c379 C5: AP mode needs WIFI_BAND_MODE_AUTO 2026-03-27 21:22:44 +01:00
Frank
9a07784c67 tiny change
debug output
2026-03-27 20:19:03 +01:00
Frank
33ffbd5927 clarify debug output
esp-idf, not esp32
2026-03-27 20:18:24 +01:00
Damian Schneider
5ac282f8b9 Add slow transition FX (over 4hours) (#5379) 2026-03-27 19:53:08 +01:00
Frank
0629720821 Use WLED_BOARD as the single node-type source of truth.
collapse to one assignment, and stop drifting when new boards might be added.
2026-03-27 19:47:59 +01:00
Frank
daed02723f add pin info for new MCU's
based on data sheets, still to be validated on each board
2026-03-27 19:37:20 +01:00
Frank
3bd5f03140 C6 workaround for " WLED_VERSION was not set"
temporary
2026-03-27 19:34:22 +01:00
Damian Schneider
e4351c8979 Increase maximum playlist duration (#5455)
* Add numerical input clamps
* increase playlist item limit to uint32_t: 4294967s (49.7 days)
2026-03-27 19:22:53 +01:00
Frank
96cd51aa77 prelim. pin validation for -C61
not tested, just a first impression from datasheets
2026-03-27 18:25:34 +01:00
Frank
72b47710af C5 buildenv cleanup
no special overrides remaining
c5 build compiles with the standard "CORE3" NeoPixelBus
2026-03-27 16:56:04 +01:00
Frank
dd048b8c23 fix for C5 build
ToDO: check if the special library list is still needed on -C5
2026-03-27 15:44:57 +01:00
Frank
40b4d55edf prefer softhack no_fastled (temporary)
temporary replacement until WLED has its own fastled-slim ready.

The softhack007 fork version is proven-in-use on the fork from @troyhacks, and completly removes any global functions or ISRs when compiling with -D FASTLED_NO_FASTLED
2026-03-27 15:35:53 +01:00
Frank
2a57177a2d revert UI hack 2026-03-27 14:42:42 +01:00
Frank
868fbf3714 revert hack in set_metadata.py 2026-03-27 14:39:02 +01:00
Frank
51af4ecb08 Merge branch 'V5' into V5-C6 2026-03-27 14:35:23 +01:00
Frank
758bdd537c replace preprocessor #error with static_assert
ensures that constexpr constants are handled properly.
2026-03-27 13:27:35 +01:00
Frank
e834de2212 make WLED_MAX_BUSSES constexpr
prevent macro expansion problems, because  WLED_MAX_ANALOG_CHANNELS is a constexpr now.
2026-03-27 13:20:23 +01:00
Frank
3a2674a1f1 toDO: clarify if the ipv6 DNS workaround is still necessary 2026-03-27 12:26:07 +01:00
Frank
eeeb93cdc5 Merge branch 'main' into V5 2026-03-27 12:19:56 +01:00
Will Miles
6a16593be5 Merge pull request #5438 from willmmiles/ipv6-dns-fix
Fix DNS hangs on ESP32
2026-03-26 18:48:57 -04:00
Will Miles
58239ced02 Fix RMT bus drivers for v5
Use a simpler shim in bus wrapper, and clean up the HI driver to
indicate that it's not v5 compatible (yet).
2026-03-26 18:43:04 -04:00
Will Miles
4f7b574d22 dynarray: Directly apply linker fix
Rather than append a linker file, we edit the upstream supplied ones to
add our section to the binaries.  Works better on all platforms.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-03-26 18:41:59 -04:00
Will Miles
b222940ad1 Env cleanup 2026-03-26 18:41:59 -04:00
Frank Möhle
78ecd3805e service cleanup after removing return FRAMETIME (#5443)
Clean-up and simplification of strip.service() after individual effect FRAMETIME was removed.
* Activation "_frametime" is now the same for all effects, so effects scheduling based on individual frametime is not needed any more
* Special handling for mode_static is obsolete, because the solid effect does not have a different timing any more
* Ensures a safe fallback segment after servicing to avoid stale state.
* Brightness changes use a capped refresh threshold to avoid excessive redraws.
2026-03-26 12:31:08 +01:00
Damian Schneider
4c7fa0303b load pixel forge tools from json file, improved tools list, bugfixes (#5404)
* load pixel forge tools from json file, bugfixes

- load available external tools from a json file instead of hard-coding them in
- add buttons to update or delete tools (instead of manually deleting files in /edit)
- fixed bug that file system memory was not updated after uploading or deleting files
- fixed a bug where gifs with a space would not display
- fixed bug of page not loading properly (out of sync access to tabSw() )
- remove pixelforge from ESP8266 1m builds (does not fit)
- add inline html page if pixelforge is not built in to avoid 404
2026-03-26 10:28:23 +01:00
Will Miles
0d539c524c Merge branch 'main' into V5 2026-03-25 19:29:45 -04:00