Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 16:48
    seymar closed #911
  • 16:48
    seymar commented #911
  • 14:01
    jspolsky commented #911
  • May 20 03:41
    sheaivey synchronize #1391
  • May 20 03:40
    sheaivey opened #1391
  • May 16 22:46
    marmilicious commented #1385
  • May 14 16:48
    Benik3 commented #1047
  • May 13 08:08
    link0687 opened #1390
  • May 10 09:59
    nmaas87 commented #1261
  • May 10 09:56
    nmaas87 commented #1221
  • May 10 09:55
    nmaas87 commented #1258
  • May 10 09:55
    nmaas87 commented #1359
  • May 09 15:36
    Skywalkerf34 opened #1389
  • May 09 11:39
    mbariola commented #1388
  • May 08 22:15
    zackees commented #1388
  • May 08 22:14
    zackees commented #1388
  • May 08 15:38
    mbariola opened #1388
  • May 08 09:17
    burner- opened #1387
  • May 06 12:12
    CeriniA commented #1374
  • May 05 06:01
    timmypidashev closed #1285
Andreas Hopf
@systembolaget
@DenverClarke Better clone it to your GitHub repos before it disappears...
Marc Miller
@marmilicious
@sblantipodi There's an issue open about this on github.
Braeden
@braedenf
Can anyone help me with this issue. I am using the WS2812B RGB Leds with a Teensy micro controller, and with the fast led library all the leds display white continuously. I am able to write other colours and they show but add with the white. I don't have any of these issues with the neopixel library, so I can't think of why it would be my hardware setup.
Braeden
@braedenf
Nvm issue solved. There is a parallel output issue with Teensy 4.0.
Davide Perini
@sblantipodi
hi all, can I ask how FastLED computes the white temperature correction?
from this file:
http://fastled.io/docs/3.1/color_8h_source.html
it seems that if I set for example, candle white temp correction, Fastled sets pure white from 255, 255, 255 to 255, 147, 41
but how this is related to other colors?
how can you calculate the pure red for example with a candle white temp correction?
sutaburosu
@sutaburosu
FastLED colour correction is just a simple multiplication of fractions. With a correction of (255, 147, 41), the RGB values are scaled by (255/255ths, 147/255ths, 41/255ths).
Davide Perini
@sblantipodi
sorry for the noob question but what it means for (scaled by 255/255ths, 147/255ths, 41/255ths)?
can you make an example with 127,127,127 scaled by 255, 147, 41 please?
do FastLED does a proportions for each pixel for every channel every time? something like this?
255:127=140:X
where 140 is the color channel I want to scale?
MSO
@Flavourdynamics
127 scaled for all channels with the correction you mentioned:
R: (255/255)*127=127
G: (147/255)*127=73
B:(41/255)*127=20
A pretty aggressive correction that will make everything redder.
sutaburosu
@sutaburosu
ok, yes, I wasn't clear enough. :)
For 127 scaled by your original factors:
r: (127 * 255) / 255 = 127
g: (127 * 147) / 255 = 73.211
b: (127 * 41) / 255 = 20.419
If FastLED can sustain >100 FPS with your number of LEDs, it will use the fractional parts of those conversion to do temporal dithering. It makes a huge difference, especially at lower brightness levels.
it does make it significantly more red, but that's exactly what that correction factor asked for. Where did you get that correction? Is it one of the built-in FastLED options? I generally run my strips and matrices with FastLED.setCorrection(UncorrectedColor); in setup(). I feel the default is perhaps optimised for much older addressable LEDs.
Marc Miller
@marmilicious
@sutaburosu All the preset color corrections are in that file linked above.
Also, here's an example file that runs through them all to help visualize the differences. https://github.com/marmilicious/FastLED_examples/blob/master/color_temperature_demo.ino
Tom
@tomnz
Unusual question... Does anyone have experience embedding the FastLED library into a windowed desktop application? I'm trying to create a "simulator" for my visualizer project on my development machine, so that I don't have to re-flash a microcontroller every time I iterate. I've split out the core parts of the project into a C++ library - it still relies on FastLED for basic management of colors/buffers (CRGBArray and associated methods), but does NOT need to create any controllers, or talk to any hardware. So far this has been a fruitless endeavor, as the compilation hard fails if FastLED doesn't think it's compiling for a supported microcontroller (e.g. in led_sysdefs.h). I suppose my next step is to start stripping FastLED down to just the parts that I need, but I'm curious if anyone has already done this work, or if there's a simple preprocessor directive I can set to "trick" FastLED into compiling without specific device support.
I guess the "ideal" solution would be to not require any specific supported device, and have a "null" controller which doesn't do anything. But I don't see such a thing in the source code :(
Alternatively I re-implement FastLED's core drawing APIs and pixel/color types on my own, and just use it for final display of color data, but I'm sure there are loads of optimizations in the code that I would miss out on that way
Tom
@tomnz
Hrm looks like some people go as far as stubbing out Arduino libraries: https://github.com/marcmerlin/ArduinoOnPc-FastLED-GFX-LEDMatrix
Tom
@tomnz
fastled-sim.gif
Was able to get it working by manually stripping out unnecessary parts of FastLED... Not elegant but it'll do 🙈
Marc Miller
@marmilicious
Cool @tomnz Feel free to come share what you're working on in the reddit group. Someone will probably be interested. :)
There was a brief discussion somewhere in the FastLED github issues about having a "null" controller of some sort-- can't find it at the moment though. Btw, you've seen this? https://wokwi.com/arduino/libraries/FastLED
7 replies
Kristoffer Rekvik
@MythicalForce
hi all :)
Johnstre
@Johnstre
Hi, is it possible to have different strip lenghts, eg. Strip1 4094
Strip2 4094, Strip3 512, Strip 4 512 and Strip5 1024 ?
@Johnstre please post to the Reddit FastLED group for greater assistance.
Diogo Cardoso
@diogocardoso28
Hey guys, im running a 16x16 WS2812B panel with GRB color order, the primary colors red,green and blue show up fine but "mixed" colors don't. Is there any easy fix for this issue? thanks in advance.
Marc Miller
@marmilicious
@diogocardoso28 I see you posted to the reddit group, thank you. Hopefully you can get it sorted there.
Tom Sciano
@TSciano_twitter
Is there a tft esp wled controller
Think it would be a good idea and example to make the gui for controll in tft
Mathi9155
@Mathi9155
How can I invert my signal?
Marc Miller
@marmilicious
@TSciano_twitter You might want to check with the WLED group.
karl b
@karlb1_gitlab
Howdy folks, does FastLED require PWM pins or just any old digital pin will work ?
Marc Miller
@marmilicious
@karlb1_gitlab Any digital pin for the data will work.
karl b
@karlb1_gitlab
@marmilicious TYVM
Tom
@tomnz
I'm running into FastLED/FastLED#1118 on an ESP32 TinyPICO... Basically, a linker error occurs when trying to build for a 3-wire chipset, but 4-wire is fine. Still seems to be a problem on latest master. Anyone encountered this before? WS281x should be supported on ESP32 surely?
Tom
@tomnz
In fact, 90% sure I have used the same codebase to drive Neopixels in the past... Really odd :(
Tom
@tomnz
Using #define FASTLED_ESP32_I2S causes the code to link properly - indicating it's something to do with the RMT implementation? I'm not sure I can actually use I2S for this though, as I'm using it for high frequency ADC
Nikita
@nikitos1550
Hello! I have a question, I have 8*8 matrix of NEOPIXELS. How can I use FastLed in order not rewrite data for all 64 led pixels, but write one data for first pixel and other pixel's data will be shifted forward?
MSO
@Flavourdynamics
@nikitos1550 Each would need to be electronically signalled with a new colour. However, you can copy the colour value from one led to another trivially, but then you would still need to update all LEDs.
Nikita
@nikitos1550
@Flavourdynamics Yep, I already learned docs and code sample, seems so. Sad that I cannot update just first one and old data will be shifted forward, as such feature can be useful for some scenarios.