FastLED 3.9.15
Loading...
Searching...
No Matches
FxEngine.ino
Go to the documentation of this file.
1// @filter: (memory is large)
2
12
13// FastLED.h must be included first to trigger precompiled headers for FastLED's build system
14#include <FastLED.h>
15
16
19#include "fl/fx/fx_engine.h"
20#include "fl/ui/ui.h"
21
22#define LED_PIN 2
23#define BRIGHTNESS 96
24#define LED_TYPE WS2811
25#define COLOR_ORDER GRB
26
27#define MATRIX_WIDTH 22
28#define MATRIX_HEIGHT 22
29
30#define NUM_LEDS (MATRIX_WIDTH * MATRIX_HEIGHT)
31
32#ifdef __EMSCRIPTEN__
33#define IS_SERPINTINE false
34#else
35#define IS_SERPINTINE true
36#endif
37
38
39fl::UISlider SCALE("SCALE", 20, 20, 100);
40fl::UISlider SPEED("SPEED", 30, 20, 100);
41
47fl::UICheckbox switchFx("Switch Fx", true);
48
49void setup() {
50 delay(1000); // sanity delay
52 .setCorrection(TypicalLEDStrip)
53 .setScreenMap(MATRIX_WIDTH, MATRIX_HEIGHT);
54 FastLED.setBrightness(96);
55 noisePalette1.setPalettePreset(2);
56 noisePalette2.setPalettePreset(4);
59}
60
61void loop() {
62 noisePalette1.setSpeed(SPEED);
63 noisePalette1.setScale(SCALE);
64 noisePalette2.setSpeed(SPEED);
65 noisePalette2.setScale(int(SCALE) * 3 / 2); // Make the different.
67 if (switchFx) {
68 fxEngine.nextFx(500);
69 }
70 }
71 fxEngine.draw(fl::millis(), leds);
72 FastLED.show();
73}
#define COLOR_ORDER
#define MATRIX_HEIGHT
fl::XYMap xyMap
fl::FxEngine fxEngine(NUM_LEDS)
#define NUM_LEDS
fl::CRGB leds[NUM_LEDS]
#define LED_PIN
#define MATRIX_WIDTH
#define IS_SERPINTINE
Definition simple.h:49
FL_DISABLE_WARNING_PUSH FL_DISABLE_WARNING_GLOBAL_CONSTRUCTORS CFastLED FastLED
Global LED strip management instance.
fl::XYMap xyMap(MATRIX_WIDTH, MATRIX_HEIGHT, IS_SERPINTINE)
fl::UISlider SPEED("SPEED", 30, 20, 100)
fl::FxEngine fxEngine(NUM_LEDS)
void setup()
Definition FxEngine.ino:49
fl::UICheckbox switchFx("Switch Fx", true)
fl::UISlider SCALE("SCALE", 20, 20, 100)
fl::NoisePalette noisePalette2(xyMap)
fl::NoisePalette noisePalette1(xyMap)
void loop()
Definition FxEngine.ino:61
#define SCALE
Definition Overclock.ino:68
#define SPEED
Definition Overclock.ino:74
#define LED_TYPE
Manages and renders multiple visual effects (Fx) for LED strips.
Definition fx_engine.h:33
@ TypicalLEDStrip
Typical values for SMD5050 LEDs.
Definition color.h:15
#define EVERY_N_SECONDS(N)
Checks whether to execute a block of code every N seconds.
Definition lib8tion.h:1010
fl::u32 millis()
Universal millisecond timer - returns milliseconds since system startup.
Demonstrates how to mix noise generation with color palettes on a 2D LED matrix.
Representation of an 8-bit RGB pixel (Red, Green, Blue)
Definition crgb.h:38
Aggregator header for the fl/ui/ family of per-element UI types.