PxMatrix
PxMatrix copied to clipboard
New Panel
Hi, Back with another new panel from Quangli. This is 40x80 panel Q4Y10V6H.
Photograph of the panel is as here.

Initialisation code I tried is
void setup() { int i=0,j=0;
Serial.begin(9600);
display.begin(10); display.setMuxPattern(BINARY);
display.flushDisplay();
display.setPanelsWidth(1);
display.setBrightness(100);
display.clearDisplay();
for(i=0;i<80;i++) for(j=0;j<40;j++) { display.drawPixel(i,j,Red); delay(10); display_updater_enable(true); } }
The result is as shown in video... From the part number, it seems 1/10 scan panel. Could not find its exact data sheet from their site though. On board they have shown D pin as well. So little confused. Can you guide please?
Can you please run the pattern test example and/or this https://github.com/xsrf/HUB75Debug/blob/master/src/hub75debug.cpp ?
I tried making following change
#define MATRIX_WIDTH 80 #define MATRIX_HEIGHT 40
The display remains blank. Then I tried with other panel which works with SHIFT_ABC Mux pattern. Even that panel remains blank. Then I tried with 64x32 dot matrix, of course after changing Width and height, it shows white line.
I guess it may use a shiftregister with different A-D pinout. Can you note down the ICs used on the panel?
It is using SM5266 and 160206 display driver.

You may try https://github.com/xsrf/PxMatrix/tree/shiftreg-binary with SHIFTREG_ABC_BIN_DE which is not yet merged into PxMatrix. It should work with 1/10 scanning if the first 8 rows are connected to the first SM5266 and the remaining two are connected to a second SM5266. But if they use only 5 of the 8 outputs of each SM5266, only 7 of 10 rows will work...
Great !!! Display started to work. It seems need to use different SCAN pattern
for(i=0;i<80;i++) for(j=0;j<40;j++) { display.drawPixel(i,j,Red); delay(10); } }
I tried Line and Zigzag. With Zigzag following is the result video. q80.zip
please use display.displayTestPixel(20); instead of display.display() in your code and post a video to show how the pattern looks like.
vid80.zip Please find attached. Thanks..
not sure if a pattern exists for that... @2dom ?
Nope ... appears to be a byte split pattern. I already implemented another one - should not be a biggie.
Would be ZZIAGG I suppose :)
Hi...by the way I had made a small donation on Monday. Hope you received it. Thanks.
Thanks man ... In this case all the credit goes to XSRF, @xsrf - if you PM me your PayPal very happy to forward you some beer money :)
Thx, but please keep it 😊 However, I wouldn't mind if you could add some visuals of the different patterns to the readme some time 😉
Yeah ... I should probably do that. I'm not entirely sure if the whole naming thing still makes sense - this is getting out of hand ...
@rajeshdoshi I implemented a new pattern ZZIAGG - check out the latest master if it does anything useful.
Oh great. Thanks.. will check and let you know.
Hope it includes SHIFTREG_ABC_BIN_DE as well.
Some thing still missing. Here is video... It is supposed to fill in dots from left corner top to bottom. vid.zip
Ok ... could you try again with the latest master and
for (int y=0; y<40; y++)
{
for (int x=0; x<80; x++)
{
display.drawPixel(x, y, myCYAN);
delay(20);
}
}
Could you try again with the latest master?
Opps. I put my comments in wrong place. I tried with new master. Still some problem..
Uploading vid_1.zip…
The mux pattern is not correct for your panel. Can you please post the complete code?
void setup() { int i=0,j=0;
Serial.begin(115200); Serial.println("Esp Started"); display.begin(10); display.setMuxPattern(SHIFTREG_ABC_BIN_DE); display.setScanPattern(ZZIAGG);
display.flushDisplay();
display.setPanelsWidth(1); // Set the number of panels that make up the display area width (default is 1) can be 2 or more
display.setBrightness(250); // Set the brightness of the panels (default is 255)
display.clearDisplay();
display_updater_enable(true);
for (int y=0; y<40; y++)
{
for (int x=0; x<80; x++)
{
display.drawPixel(x, y, Cyan);
delay(20);
}
}
}
can you please check your wiring of Pin D? You already had all rows working... Now it looks like it is stuck on the 2nd pair of rows.
Problem is not with D pin.
I loaded earlier commit
https://github.com/2dom/PxMatrix/blob/d120e24fd9fdc6cad7c84c8f89084ff9a94e0972/PxMatrix.h
And the result was as per vid1.zip I had shared earlier.
