900 LED Infinity Mirror Programming Issue

Hi all,

So I finally got around to building my setup documented in my original post here.

Long story short, I am now waiting for my glass to arrive and wanted to ensure the lights are running smooth. They are not. I intended to start with the some rainbow code credited to reddit user, /u/Procupine. You can see the intended final product from Procupine's build here. Imgur: The magic of the Internet

In the DropBox link below you will see my wiring setup, by flawed rainbow video results and the rainbow.ino file. Any help would be suggested to help clean this up to work work as designed.

Specs:
Lights: WS2815 (3 rows, 287 per row, 861 total)
Power supply: 12V to LED strips, 5V to board
Board: Elegoo MEGA 2560 R3 Board ATmega2560 ATMEGA16U2
FastLED Version: 3.4.0

I have properly grounded the board to the power supply. I have also tried running with a 470 Ohm resistor on the data line with even worse results. When the resistor was installed, only about 25% of my top row of lights would light up. I have also confirmed I am running the data line to Din on the strips.

Thank you all in advance.

Pastebin link

Please follow the advice given in the link below when posting code, in particular the section entitled 'Posting code and common code problems'

Use code tags (the </> icon above the compose window) to make it easier to read and copy for examination

I think that the main problem is VIH; that would be 0.7 * 12 = 8.4V; the Mega's output voltage is 5V maximum.
From the WS2815 datasheet

Do you have capacitors (something 1000 microFarad) at the beginning of each strip?

Same strips (WS2815)?

I ran your code on a Mega with 420 pixels (seven times one meter WS2812B strips with 60 leds each) and it looked quite OK; it went through all motions as far as I could see.

I really appreciate you looking into this to the depth that you did. The Arduino is being powered by it's own 5V supply and the WS2815 strips by their own 12V supply.

I have since solved my issue. First I neglected to use any power injection. Really just an ametuer mistake thinking that I didn't need it with the 12V strips. I was only measuring around 5V at the end of the last strip. Now I am injecting 12V power at the beginning and end of each strip. Lowest voltage measuring is now 11.8V mid strip. This also drastically reduces the current draw through the first strand as it's now shared equally.

My main issue was that I was incorrectly grounding my Arduino to the earth ground from the 12V supply and not the common 12 V- ground that is shared with the light strips.

Long story short, it is all good now!
https://photos.app.goo.gl/djTKqLtbvCwmhwH67

I am pretty sure that is a total foul-up in the datasheet and they actually mean proportions of "VCC"! :astonished:

VCC is the 5 V logic supply, derived from an internal shunt regulator. The obligatory capacitor is connected to it.
Selection_045
"100NF"? :roll_eyes:

And that is only a couple of blunders.

12V DC power supply, can effectively reduce the operating current of the pixel LED, and decrease the voltage-drop

So just how does having a 12 V power supply "reduce the operating current of the pixel LED" if there are only single LEDs, not three in series, and the excess voltage is simply wasted as heat? :cold_sweat:

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.