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

Unknown panel don't work correctly #1647

Open xorkrus opened 4 months ago

xorkrus commented 4 months ago

Hello. Unknown panel, resolution 104x52. Chips dp3216+2013ep. Raspberry 1. I just can't configure the image output. The best thing came out in the photo - half the lines at the top, half at the bottom and interlaced. Tell me what am I doing wrong? Command: sudo ./demo -D0 --led-row-addr-type=0 --led-scan-mode=1 --led-brightness=10 --led-slowdown-gpio=2 --led-gpio-mapping=regular-pi1 --led-chain=1 --led-parallel=1 --led-multiplexing=0 --led-pwm-dither-bits=0 --led-rows=52 --led-cols=104 IMG_20240419_001527 (it's a moving cube)

davemaster commented 4 months ago

Greetings,

First, check wiring, twice. Then, change in --led-multiplexing option, from 1 to 14 (I think), ie, --led-multiplexing=1, then --led-multiplexing=2, etc...

Also, if You're using a RPi 1, DON'T use --led-slowdown-gpio=2, this is for fastest RPi's. try this command:

sudo ./demo -D0 --led-gpio-mapping=regular-pi1 --led-chain=1 --led-parallel=1 --led-multiplexing=[1..14] --led-rows=52 --led-cols=104

xorkrus commented 4 months ago

Thank you. Indeed, the main mistake was the lack of contact of the OE wire. This solved part of the problem. Now the image is there, but it doesn't look right. If you specify a resolution of 56x112 (52x104 is the physical size), the image becomes more correct. However, the central 8 points (physically these are the last 4 points on the left side and the first 4 points on the right side) work with an incomprehensible shift. Launch command: sudo ./clock --led-gpio-mapping=regular-pi1 --led-chain=1 --led-multiplexing=1 --led-rows=52 --led-cols=104 --led-brightness=7 -f ../fonts/10x20.bdf -d 'OOOOOOOOOOOOO' 52x104 52x104 56x112 56x112 hello Multiplexing 1 is the best. The remaining options completely break the image.

davemaster commented 4 months ago

Some of those panels are made putting together 2 or more standard (16x32, 16x16, 32x32, etc) panels, take a picture to the back of your panels, closest to try read the ICs

xorkrus commented 4 months ago

The microcircuits correspond to the panel markings. They are filled with varnish and it is impossible to photograph the markings. I was able to read the markings of several microcircuits: CHIPONE ICND2013EP, DP3216, 74HC24x. A general photo of the panel is below. IMG_20240418_220848

CHIPONE ICND2013EP = 16pcs (Exactly) DP3216 = 58pcs (Maybe more) 74HC245C = 6pcs (Exactly) I saw another 5 pieces behind the frame, most likely DP3216. I didn’t see a few more, but the guides go and most likely there are a few more.

Upd: i run pixel-mover and count pixels. Horizontal: On-48 Off-4 On-8 Off-4 On-48 Vertical: On-13 Off-1 On-13 Off-1 On-13 Off-1 On-13 Off-1 if count only ON step, get original resolution 52x104 and 56x112 if with off pixel

xorkrus commented 4 months ago

At least point me in which direction to look for solutions to problems. I'm not good enough at programming to write the code myself, but I can try to google some clever ideas. But I don’t even understand what is needed.

davemaster commented 4 months ago

I think a new pixel mapping is needed... at this time, this panel is not compatible with this library...

board707 commented 2 months ago

I have already dealt with such panels. The driver used on it has 16 outputs, but the width of the panel is not a multiple of 16. Therefore, the 8 outputs of one of the drivers in the middle of the panel are not connected to anything. You need to work with the panel as if it were 112x52, but simply fill the 8 dots in the middle of the line with zeros

xorkrus commented 1 month ago

Thank you. This is useful information. I couldn’t fix the program on my own, now I’m looking for friends to solve this problem and this information will be useful to them.