adafruit / Adalight

http://ladyada.net/make/adalight/
GNU General Public License v3.0
212 stars 131 forks source link

Can't use Adalight on second screen #7

Open preiter opened 8 years ago

preiter commented 8 years ago

I attempted to use the Adalight code with my second screen, but no matter what I did the colors seemed to be coming from the primary display.

After some debugging, the issue seemed to be coming from this line (line 190 of Adalight.pde)

dispBounds[d].x = dispBounds[d].y = 0;

This line was clearing an x offset of 2560 to 0.

Once I got rid of that line of code, it worked fine.

Also, down around line 250 the code is creating and transmitting data for leds.length - 1. I'm not sure what the reason for the -1 is, but my last LED was not getting programmed. I got rid of the -1 and it worked fine.

As a side note, I adapted this project to work over wifi by using the Processing Networking library in place of Serial. My client is running on an esp8266. It was a really easy change to make and way more convenient for my setup than running an extra cable to the TV. You might consider that as a future feature for this project.

zandegran commented 7 years ago

This is simple. In the processing code change all the preceding 0's in the sub arrays to 1's static final int leds[][] = new int[][] { {0,2,4}, {0,1,4}, ...}

preiter commented 7 years ago

That index selects one of the displays from the array:

static final int displays[][] = new int[][] {

I have 0 in that field, selecting the first entry in the displays array. The first entry in the displays array was selecting screen 1, but that did not work until I fixed the bug that I noted in my first post.

blecchi commented 5 years ago

Wish I read this before I started debugging the code. I found exactly the same bug. Only the primary screen was captured. This line is clearly useless, why go through all that code, if you're going to set it to zero eventually.