FastLED 3.10.2
https://github.com/user-attachments/assets/452a23b6-a691-4ffb-a140-041f0300f2aa
FastLED 3.10.2
- CORKSCREW MAPPING!
- Want to create a light saber or festival stick? Before your options were to have vertical strips.
- Now you can use a corkscrew mapping fl/corkscrew.h, see examples/FestivalStick
- You input the number of LEDS + number of turns.
- Corkscrew will provide a surface XY grid that you draw too.
- then call Corkscrew::draw(), and the current surface will be mapped to the corkscrew.
- Rendering is done via 2x2 bilinear sampling. Looks great!
- Animartrix - 30% faster due to forced
-O3andfastmathcompiler settings for this one file. - Ease Functions - lots and lots of ease functions! Great for animations!
- see fl/ease.h and the demo examples/Ease/Ease.ino
- Fast! Everything is done in integer space.
- 3D Perlin noise (
inoise8(x, y, z)) range utilization improved from 72.9% to 88.6%- Significantly better quality for volumetric LED effects (3D fire, clouds, particles)
- Uses industry-standard 12 edge vectors of a cube for optimal gradient coverage
- Adafruit NeoPixel Bridge: Optional Adafruit_NeoPixel clockless controller support
- For some platforms Adafruits NeoPixel just works better.
- Enable with
#define FASTLED_USE_ADAFRUIT_NEOPIXELbefore including FastLED - Now your WS2812 chipset will use the AdafruitNeopixel library (if installed)
- New LED chipset: SM16824E
- 3-Wire
- See also: https://github.com/FastLED/FastLED/issues/1941#issuecomment-2981643952
- apollo3_red (stm variant): beta support.
- HSV16 support
- CRGB -> HSV -> CRGB is highly lossy
- CRGB -> HSV16 -> CRGB is almost perfect.
- Integer based so it's fast.
- ColorBoost
- CRGB::colorBoost()
- Are you doing video on WS2812? Well then you probably are using gamma correction
- Color Boost is an alternative for gamma correction for the WS2812 and other RGB8 chipsets.
- It preserves luminosity but allows you to increase saturation.
- HSV16 is used to preserve color resolution.
- HSV -> CRGB default conversion function can now be overriden.
- Thanks to https://github.com/ssilverman or this full spectrum HSV implementation.
- If you just want to change it for your sketch you can use this:
#define FASTLED_HSV_CONVERSION_RAINBOW(default)#define FASTLED_HSV_CONVERSION_SPECTRUM#define FASTLED_HSV_CONVERSION_FULL_SPECTRUM- To change for the entire engine (recommended) then set these as build flags:
-DFASTLED_HSV_CONVERSION_RAINBOW-DFASTLED_HSV_CONVERSION_SPECTRUM-FASTLED_HSV_CONVERSION_FULL_SPECTRUM
- fl/fetch.h
- A non blocking http fetch library returning an fl/promise.h
- You can then await the promise with
fl::awaitor install a callback to be invoked. The latter is recommended.
- fl/json.h rewrite
- Much more ergonic library. Fast parsing for packed arrays of number
- The underlying ArduinoJson library is only ergonomic if you allow
std:stringandstd::sstream, which is missing on platforms like avr. So we had to write our own api to handle this.
- Platforms
- ESP32-C5 is now supported.
- ESP32 WS2812 SPI driver has a fix for it's async draw routine.
- Blend2d will now replace a subfx XYMap (when necessary) to prevent double mapping. A warning will be issued.
- Seeed XIAO nRF52840 Sense: Fixed incorrect pin mappings that were copied from Adafruit Feather board
- APA102HD Gamma Correction Algorithm: Completely rewritten with closed-form mathematical solution
- Thanks https://github.com/gwgill!
- Graph of the old algorithms quantization issues can be see here:
- https://www.argyllcms.com/APA102_loglog.svg
- STM32F1 pin mapping fixes (blue pill)
- https://github.com/FastLED/FastLED/pull/1973
- Thanks https://github.com/vishwamartur!
- Internal stuff
- FastLED is now way more strict in it's compiler settings. Warnings are treated as errors
- Lots of fixes, some code required amnesty.
- The examples now compile under clang and run for
./test - All examples now compile for ALL platforms.
- this was a major undertaking.
- required a rewrite of the testing infrastructure.
- Teensy41 took ~ 1 hours to compile 40 examples, now it can do 80 examples in ~8 mins
- FastLED is now way more strict in it's compiler settings. Warnings are treated as errors
Color Boost Demo