hzeller / rpi-rgb-led-matrix

Controlling up to three chains of 64x64, 32x32, 16x32 or similar RGB LED displays using Raspberry Pi GPIO
GNU General Public License v2.0
3.63k stars 1.15k forks source link

Help with P10 outdoor panel #587

Closed CDR114 closed 6 years ago

CDR114 commented 6 years ago

I have the software working with some indoor P10 panels, but the project I am working on needs the brightness of the P10 16 x 32 outdoor panels. Unfortunately I haven't had any success in getting the ones I have to work. Connecting one panel the best result I get is using the command sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=3

the results are:

img_20180410_2122169

The picture may look strange because the outdoor panel is lying on the indoor panels. I am using the Holiday-Lights interface Pi-Matrix board.

Any suggestions?

Can anyone provide a source for a P10 16 x 32 panel that works?

angelogoncalve commented 6 years ago

Try this options:

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=1 --led-row-addr-type=0

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=4 --led-row-addr-type=0

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=4 --led-row-addr-type=2

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=5 --led-row-addr-type=0

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=5 --led-row-addr-type=2

CDR114 commented 6 years ago

I have already tried all the variations of multiplexing and address types and --led-multiplexing=3 and --led-addr-type=0 is the closest to what it should be. I am going to try individual pixel addressing and see what I get. But after that I am not sure what to do with that information.

angelogoncalve commented 6 years ago

Try the last option:

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=7 --led-row-addr-type=0

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=7 --led-row-addr-type=2

multiplex-mappers.zip

CDR114 commented 6 years ago

That did not work. I ran the Pixel Test program with no multiplexing and default address type and for each pixel addressed I get 4 pixels lite on the panel!

img_20180414_0044518

I am wondering if I have an addressing problem with the Hub75 connector. My panels have:

R1, B1, R2, B2, A, (blank), CLK, OE down one side G1, (blank), G2, (blank), B, (blank), STB, (blank) down the other side

The panel uses ICN2028AP Serial Interfaced LED Driver IC's and SM74HC1381 3 to 1 Line Decoder, Multiplexer, Inverting IC and SM245TS display driver IC

The run section of the class added to Demo (12)

for (int y = 0; y < 16; y++) { for (int x = 0; x < 32; x++) { // Show where we are on screen. Comment out if using fast animation printf("Pixel at (%d, %d)\n", x, y); // Draw a pixel at (x, y) where red = 66%, green = 33% and blue = 100% brightness.
canvas()->SetPixel(x, y, 170, 85, 255);
// Wait a bit... (increase the sleep time if mapping, decrease for testing). usleep(1 100 1000); // 1x100x1000 = 100,000 microseconds or 0.1 seconds. // Blank this pixel before drawing the next one if mapping, comment out if filling screen
canvas()->SetPixel(x, y, 0, 0, 0);
}

I just tried connecting the panels directly, eliminating the Pi Matrix board and I get the same results, 4 LEDs lit per pixel addressed.

CDR114 commented 6 years ago

I just determined from the number of ICN2028AP LED driver IC's that these panels are 1/2 scan versus the 1/4 scan that I ordered.

angelogoncalve commented 6 years ago

See the issue https://github.com/hzeller/rpi-rgb-led-matrix/issues/592.

angelogoncalve commented 6 years ago

Try the option:

sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=7 --led-row-addr-type=0

nictruong commented 6 years ago

@CDR114 I am getting the EXACT same output for sudo ./demo -D3 --led-rows=16 --led-cols=32 --led-multiplexing=3. Have you found a solution to your problem yet?

CDR114 commented 6 years ago

I have tried the solution in #592 and I get 8 rows to display properly but get "Error in PixelMapper" for rows 0 through 3 and 8 through 16. You will notice that 4 rows do not have any error, but at 1/2 scan that equates to 8 displayed rows. Hopefully Alvaro, who developed the solution, can help. I will try to post a picture tomorrow (It is late and need some sleep).

nictruong commented 6 years ago

@CDR114, there has been a new commit to the project, --led-multiplexing=7 that has solved all my problems. Hopefuly it will solve yours.

CDR114 commented 6 years ago

The solution in #592 Understanding Multiplexing solved my problem after identifying a defective P10 display panel