Using FastLED library with NeoPixels
hi guys,
i'm after advice project… details of setup -
i have 12 concentric rings of individual neopixel pcb's each soldered own data pin arduino uno
the first ring has 84 neopixels , each subsequent ring has 6 less previous (84, 78, 72, 66 , on)
i believe need them separate rings achieve "animation" i'm after.
my problem when try declare each of rings , number of led's in each ring in code run out of memory global variables.
and yet when run 1 of fastled>multiple example sketches , have largest number of leds in them run, won't work need animation run @ different speeds in each ring smallest ring finishes @ same time largest ring.
i new arduino , have jumped in @ deep end one, appreciated
many thanks,
james churches
i'm after advice project… details of setup -
i have 12 concentric rings of individual neopixel pcb's each soldered own data pin arduino uno
the first ring has 84 neopixels , each subsequent ring has 6 less previous (84, 78, 72, 66 , on)
i believe need them separate rings achieve "animation" i'm after.
my problem when try declare each of rings , number of led's in each ring in code run out of memory global variables.
and yet when run 1 of fastled>multiple example sketches , have largest number of leds in them run, won't work need animation run @ different speeds in each ring smallest ring finishes @ same time largest ring.
i new arduino , have jumped in @ deep end one, appreciated
many thanks,
james churches
i believe need them separate rings achieve "animation" i'm after.you never strickly need can make coding easier.
alright, quick calculation. 84 leds first makes 18 on last, correct? makes 12 x (84 + 18) / 2 = 612 leds in total. pretty large number. each led has 3 8-bit colors store need 1836 bytes of memory. that's problem because uno has 2kb = 2048 byes of memory leaves 212 bytes rest isn't enough.
now here comes in handy connected different pins. means can't update sets @ once. or put more positive now, means can update single ring without need update other 11.
how can use that? make single store largest ring
code: [select]
crgb leds[84];[/quote]
and use same rings (and use more manageable 84 x 3 = 252 bytes). draw ring 1, show ring 1, draw ring 2, show ring 2 etc
see [url=https://github.com/fastled/fastled/wiki/multiple-controller-examples#managing-your-own-output]managing own output[/url].
downside can't store data ring in between because reuse same memory rings. every time want redraw ring have redraw/recalculate values of ring ground up.
Arduino Forum > Using Arduino > LEDs and Multiplexing > Using FastLED library with NeoPixels
arduino
Comments
Post a Comment