Garbled output with P2 128x64 panels using ICND2038S

Hi all,

First up, I am unsure if I need to place this question here or on github. I am a noob with both these panels and this community. So I have a bunch of P2 128x64 panels using the ICND2038S driver which I am trying to use on a rpi3 that has a hat with active level conversion. When I run the demo that comes with rpi-rgb-led-matrix, I get a garbled screen.

For pictures please see https://imgur.com/a/fFPHpf4. I am unable to post more then 1 image or 2 links.

First up, some hardware details. The boards themselves are freshly bought from item ‘32855350927’ on aliexpress.

This panel is connected to an active hat which is built by joy-it; It has a couple of jumpers that allow you to connect pin 4 and/or 8 on the hub75 panels to gnd, which I did. This hat is mounted on top of an rpi3b+ which is running the latest release of archlinux for arm. Power is provided by a meanwell rsp-200-5

For the software part, I use archlinux-arm, with rpi-rgb-led-matrix release 4bc67aadca6bcbb830f64dbeee33afbeebb18bad, master branch. I compiled the software using ‘make’ in the examples-api-use directory, and I am running the demo which gives the above output with the following commandline:

./examples-api-use/demo -D 0 --led-cols=128 --led-rows=64

During my search as to what could be wrong here, I stumbled upon multiple posts on both github and here that mention various degrees of success with these IC’s. I have tried the following:

  • All options for --led-panel-type=, only FM6126A gives output (the corrupted cube)
  • All options for --led-row-addr-type=; Only 0 gives output (as can be seen in the video above)
  • All options for --led-multiplexing=; This gives various different and creative ways to display the above, corrupted, cube.
  • All options for --led-pwm-bits=; No differences apart from seeing less pixels
  • All options for --led-pwm-dither-bits=; No differences
  • All options above with/without --led-panel-type
  • Mixing --led-pwm-bits and --led-pwm-dither-bits
  • All options for --led-gpio-mapping=; Only regular gives output
  • The code mentioned in #823 on github (since I run yesterdays master; tried with --led-row-addr-type=3, black screen)

I have also tried to run the Pulsing color demo, which lights up all pixels on the display apart from the top and bottom row.

Given what I read about it, boards with the ICND2038s might or might not work, and I am unsure how to continue now. Since I see atleast a bit of output, I assume that signals atleast arrive to the board, and given that all pixels light up (apart from top/bottom row) the software can address most/all pixels, I think that this might be as ‘simple’ as some code changes. I can read/write a bit of C and a little bit of (arduino) C++ but I am unsure how to proceed with this, and where to start looking.

Could someone throw me some tips to get these panels to work and/or how I can modify the code to get them to work?

That looks familiar, do you happen to have ABC panels?

Try led-row-addr-type=3 if my memory is correct