If Channel is less than 0, it's clamped to 0 on line 134. Then on line 138, dmxData[0] is written with the value, overwriting the start byte that was just set on line 137. DMX Channel numbers should be 1-based (1-512). The bounds check should clamp Channel to a minimum of 1, not 0, to prevent corrupting the start byte
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* added bitwise operation based sqrt16
- replacement for fastled, it is about 10% slower for numbers smaller 128 but faster for larger numbers. speed difference is irrelevant to WLED but it saves some flash.
* updated to 32bit, improved for typical WLED use
- making it 32bits allows for larger numbers
- added another initial condition check for medium sized numbers
- increased the "small number" optimization to larger numbers: the function is currently only used to calculate sqrt(x^2+y^2) which even for small segments is larger than the initially used 64, so optimizing for 1024 makes more sense, although the value is arbitrarily chosen
Updated the release name in nightly.yml to better reflect that this is a
development build (mdev) rather than a production release.
Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com>
The v2.4 release fixes the deprecated set-output command by using GITHUB_OUTPUT
environment file instead. This eliminates the deprecation warning in nightly builds.
Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com>
The action janheinrichmerker/action-github-changelog-generator@v2.3 expects
camelCase parameter names. Changed 'exclude-labels' to 'excludeLabels' in both
nightly.yml and release.yml to fix the nightly release action failure.
Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com>
- Created pio-scripts/set_nightly_version.py following existing set_version.py pattern
- Script sets VERSION to yymmddb format with build number 0 for nightly builds
- Modified build.yml to accept nightly_build boolean input
- Modified nightly.yml to pass nightly_build=true flag
- Added set_nightly_version.py to platformio.ini extra_scripts
- Uses WLED_NIGHTLY_BUILD environment variable to conditionally set VERSION
Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com>
- Modified build.yml to accept optional version input parameter
- Modified nightly.yml to calculate VERSION from build date in format yymmddb
- VERSION is passed as PLATFORMIO_BUILD_FLAGS to override default in wled.h
- Other workflows (wled-ci.yml, release.yml) unchanged and will use default VERSION
Co-authored-by: softhack007 <91616163+softhack007@users.noreply.github.com>
* allows for easier support of other MCUs (p4, c6, etc)
* removes a second place where the version strings had to be maintained
* use the same codename "next step" for v14.8