mrcodetastic / ESP32-HUB75-MatrixPanel-DMA

An Adafruit GFX Compatible Library for the ESP32, ESP32-S2, ESP32-S3 to drive HUB75 LED matrix panels using DMA for high refresh rates. Supports panel chaining.
MIT License
963 stars 212 forks source link

128 X 64px LED Matrix issue: SM5366 chipset? #429

Open Jiwno opened 1 year ago

Jiwno commented 1 year ago

Hi, I'm using 128 X 64 resolution LED Matrix and I have some displaying issue with it. I've been trying all the examples in the library but it all displays split like the image. The image is the result of "2_PatternPlasma.ino" file. I changed panel_height, panel_width, panel_number, and also defined pin_e to 32. Down below is the code that I used and I just changed the values I mentioned right above.

I doubled checked the wiring and I had N on the position of both E and D but I just wired based on the position. Could it be the reason of this problem?

IMG_1912

board707 commented 1 year ago

Please show the clear photo of the panel reverse side with readable text near HUB75 connector and panel ID

Jiwno commented 1 year ago

IMG_1913

Here!

board707 commented 1 year ago

What the ending of the panel ID text in the lower part of the photo: "SOFT-1.875-..." ? I think your panel use shift register for multiplexing the rows... this would explain why only three channels are used - A B C. I don't know is your panel supported by this library. It is question to maintainer - @mrfaptastic

Jiwno commented 1 year ago

You mean that use "3_FM6126Panel" example? right? I've already tried it but it just displays like the image below. 4 split change to 2 split.

IMG_1914

DarrylStrong commented 1 year ago

Do you have photographs of the ICs on the pcb?

Jiwno commented 1 year ago

Do you have photographs of the ICs on the pcb? It's written 'RUL5158C OAC52883' and 'CHIPONE ICN2037BP D10194NA" IMG_1915

mrcodetastic commented 1 year ago

What does the simple test shapes look like? Only so I can understand how the panel does the row addressing better.

Jiwno commented 1 year ago

What does the simple test shapes look like? Only so I can understand how the panel does the row addressing better.

It looks like this, and I only changed the resolution part to res_x 128, res_y 64.

IMG_1916

DarrylStrong commented 1 year ago

Those ICs are shift register type drivers not 3 to 8 line demultiplexers.

DarrylStrong commented 1 year ago

Those ICs should work in the same way as the SM5266 so set that type in mxconfig.

https://github.com/mrfaptastic/ESP32-HUB75-MatrixPanel-DMA/issues/164

That is where I sorted that issue...

Jiwno commented 1 year ago

Those ICs should work in the same way as the SM5266 so set that type in mxconfig.

164

That is where I sorted that issue...

Thanks. But I have some compile error after I replaced the cpp file.

Could you tell me what version are you using?

tsctrl commented 1 year ago

IMG_1913

Here!

i have outdoor P4 80x40 icn 2037bp 1/10s panel. has this one merge to master? i could test once

board707 commented 1 year ago

@Jiwno and @tsctrl - are you the one same person? The matrix on your photos looks very similar

tsctrl commented 1 year ago

sorry to interrupt. i take back what i said. this panel has different scale, non standard than the standard 32x64px which require all display graphic to be remap to this resolution. hope this 80x40px board panel to be supported by @board707 library, but sadly it will run on stm arduino or rpi only, wish stmarduino could run on stmcubemx too, long discussion regarding this from me on the stm libs repo. maybe i will take a visit later for an update..

commented due to i have old 80x40px panels too and there is few repeated issue raised regarding 80x40px panels support, and this issue has been referred to 80x40px panels support from the past. the same icn 2037bp ic but different resolution. few panels with icn 2037bp is know to be super bright led panels.

sorry for the inconvenience caused!

tsctrl commented 1 year ago

@mrfaptastic ,

platform_detect.hpp:58:19: note: #pragma message: Compiling for original ESP32 (released 2016)
#pragma message "Compiling for original ESP32 (released 2016)"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

this message keep showing during compiling the codes, on my end around at least 3 times. it will be more on clean build. on every class that callling the virtual matrix class. could this message to be display once? probably issue on my compiler linker. not sure anyone else have this problem, not an issue i just complaining..

tsctrl commented 1 year ago

@Jiwno

https://github.com/mrfaptastic/ESP32-HUB75-MatrixPanel-DMA/blob/58610563ee7a7084db1a58fd715faea35904cf17/src/ESP32-HUB75-MatrixPanel-I2S-DMA.h#L246

as per @DarrylStrong suggested, SM5266 IC changes was already in the latest library. you dont have to modify the library or replace .cpp files. only need to specify SM5266 type in mxconfig and retest.

mxconfig.driver = HUB75_I2S_CFG::SM5366;

mrcodetastic commented 1 year ago

@mrfaptastic ,

platform_detect.hpp:58:19: note: #pragma message: Compiling for original ESP32 (released 2016)
#pragma message "Compiling for original ESP32 (released 2016)"
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

this message keep showing during compiling the codes, on my end around at least 3 times. it will be more on clean build. on every class that callling the virtual matrix class. could this message to be display once? probably issue on my compiler linker. not sure anyone else have this problem, not an issue i just complaining..

I have it there to let me know if I'm compiling for the right hardware target. I'll comment out the compile time message for the esp32 only.

Also, will delete your message and this response after you've read it as well as I'm trying to keep this git issue readable for future readers. Hopefully the SM5366 mxconfig parameter suggestion is the fix @Jiwno

Jiwno commented 1 year ago

nd @tsctrl - are you the one same person? The matrix on your photos looks very similar

No, but it seems similar though

Jiwno commented 1 year ago

@Jiwno

https://github.com/mrfaptastic/ESP32-HUB75-MatrixPanel-DMA/blob/58610563ee7a7084db1a58fd715faea35904cf17/src/ESP32-HUB75-MatrixPanel-I2S-DMA.h#L246

as per @DarrylStrong suggested, SM5266 IC changes was already in the latest library. you dont have to modify the library or replace .cpp files. only need to specify SM5266 type in mxconfig and retest.

mxconfig.driver = HUB75_I2S_CFG::SM5366;

It doesn't work, unfortunately. LED displays nothing... But thank you for helping. I really appreciate.

DarrylStrong commented 1 year ago

If you have an ocilloscope then armed with the datasheet I would look to see what signals are going where on the drive chips. If not I would swap the pin definitions for A,B,C and see what happens.