Sam Guyer Yves BAZIN does FastLED on ESP32 support 16 lines of output in

(Marc MERLIN) #1

@Sam_Guyer @Yves_BAZIN does FastLED on ESP32 support 16 lines of output in Sam’s default tree now, or is it still a custom tree for Yves as of now?

(Jeremy Spencer) #2

As I understand it, and I could be wrong…

@Yves_BAZIN 's fork will run 16 strips of LEDs in parallel. But you have to use null pixels of running over 8 strips. I use this fork on my umbrella with 12 strips and null pixels. It works a treat.

@Sam_Guyer 's fork will run 8 strips in parallel, no null pixels needed. I use this fork on my trees and it also works a treat. I understand that it now supports more than 8 strips but sends the data out 8 strips at a time, so not quite parallel. I haven’t tested this new functionality yet.

(Marc MERLIN) #3

Thanks. Sorry, but what are null pixels? If I have 64x64 with 16 strips of 256 LEDs, do I need null pixels?

(Jeremy Spencer) #4

@Marc_MERLIN Yes you’ll need 16, either an extra single pixel that you hide so it can’t be seen or one of these with no led on it. I used these on my brolly.

The mapping on my brolly was a little tricky to set up as each strip covers two ribs, so there’s a null pixel on every other rib, but it works really well now :slight_smile:

(Marc MERLIN) #5

So, @Yves_BAZIN , I should use your ESP32 fork for 16 lines of output instead of @Sam_Guyer 's ESP32 tree (which has more updates and fixes from what I saw)?

(Yves BAZIN) #6

@Marc_MERLIN Hello @Marc_MERLIN I did not work on my fork (I haven’t corrected the first led blinking issue) for a while so I would go for @Sam_Guyer 's one if you don"t need the full speed of 16 output)

(Marc MERLIN) #7

@Yves_BAZIN Ah, bummer… I’m considering a 64x64 array, so that would be 16 strings of 256 LEDs, giving me just around 100fps and dithering.
If I must go down to 8 strings, I can and will, but that would be a bit of a shame :slight_smile:
Is the main problem with your fork that the first LED of each string, blinks?
@Sam_Guyer any chance you can add 16 string support, or it’s kind of hard?

(Sam Guyer) #8

@Marc_MERLIN It can handle 16 strips, but it does 8 at a time. In other words, 16 strips takes the same time as two in series (assuming they are all the same length)

(Marc MERLIN) #9

@Sam_Guyer yeah, got it, thanks. That’s unfortunately equivalent to only supporting 8 in parallel (parallel is what I care about to keep the fps up). Hopefully Yves’ 16 parallel support can be made production eventually?

(Sam Guyer) #10

@Marc_MERLIN We should think about a way to do that. Maybe a compile-time switch. @Yves_BAZIN do you mind if I take your code and try to fold it in?

(Marc MERLIN) #11

That would be sweet, I would indeed prefer using ESP32 over teensy with which I have too many problems, but I’ll take whatever chip will give me more fps :slight_smile:

(Yves BAZIN) #12

@Sam_Guyer I will clean up the code of the new version. But I still have this first led issue. I need to find why. I will certainly start with a clean version of the library and implement my changes step by step and see where it fails.

(Yves BAZIN) #13

@Marc_MERLIN hello Mark I have made good progress the flickering is almost gone. :wink: of course if you do not activate WiFi you have no issue already. Second the answer came because of another project where I noticed ground noise on a speaker plugged to my esp when the WiFi was on. Anyway I keep you posted of my progress

(Marc MERLIN) #14

@Yves_BAZIN cool, thanks. For now, my own project will not be using Wifi, so that will probably make my life a bit easier. Timing critical code, interrupts, and dual core, can yield interesting results.

(Yves BAZIN) #15

@Marc_MERLIN ok so with the current version you can use 16pin without issue of the first led

(Marc MERLIN) #16

@Yves_BAZIN Oh, that’s great news. I’ll probably be building my 64x64 array next week, so that’s great timing. @Sam_Guyer will also be interested in your updated tree so that he can merge your support with whatever extra fixes and changes he’s made since you forked his tree.

(Marc MERLIN) #17

@Yves_BAZIN so, for 16 lines in parallel, is it ok to use 4 cat-5 cables, and connect 4 lines at a time in twisted pairs with ground? Is that enough to avoid crosstalk between the 4 data lines within an ethernet cable?
I’ll have a different cable bringing a thicker ground and Vcc to each set of strips.

(Yves BAZIN) #18

@Marc_MERLIN exactly so you will need 4 Ethernet wires for the 16 data linesmissing/deleted image from Google+

(Marc MERLIN) #19

@Yves_BAZIN yes, that’s the same math I came up with :slight_smile:

(X-WL) #20

@Yves_BAZIN Hello! how do you replace WiFi with esp32? Can I get it to work with ethernet? I have been trying for a long time to solve the problem with the blinking of the diodes, therefore, I missed a lot. (