Adafruit RGB Matrix Triple Bonnet — 64x64 panels show "2 rows lit, 2 rows dark" stripe pattern (E-line issue?)

Hardware:

  • Raspberry Pi 4 Model B
  • Adafruit RGB Matrix Triple Bonnet (Product ID: not sure, has 3 HUB75 outputs and an E-line switch with positions 4/8)
  • Seengreat RGB-Matrix-P3.0-64×64 panels (1/32 scan, 5 address lines A–E, HUB75 connector)
  • 5V 10A power supply for panels

Problem:
When connecting 64×64 panels through the Triple Bonnet, the display shows a repeating pattern of 2 rows lit, 2 rows dark across the entire panel. The pattern shifts when I flip the E-line switch between position 4 and 8, but neither position produces a correct image.

What I tried (none fixed it):

  • --led-multiplexing=0 through 17 (all 18 values)
  • --led-row-addr-type=0 through 5 (all 6 values)
  • All 108 combinations of the above (automated brute-force script)
  • Both E-line switch positions (4 and 8)
  • --led-gpio-mapping=regular (correct for Triple Bonnet / active-3 pinout)
  • --led-gpio-mapping=adafruit-hat (also tried)
  • --led-slowdown-gpio=4
  • Disabled audio (dtparam=audio=off, blacklisted snd_bcm2835)
  • Disabled serial console (GPIO 15 = RXD = E-line conflict)
  • Disabled 1-wire interface

What DOES work:
When I bypass the bonnet entirely and wire the Pi’s GPIO pins directly to the HUB75 connector using jumper wires, everything works perfectly — solid colors, text scrolling, demo patterns all display correctly with default settings:

sudo ./demo -D 0 --led-rows=64 --led-cols=64 --led-chain=2 --led-slowdown-gpio=4

No special multiplexing or row-addr-type flags needed — just --led-rows=64 --led-cols=64.

Direct wiring pinout that works (Pi physical pin → HUB75 pin):

Pi Pin  →  HUB75 Pin
──────────────────────
(23) GPIO11  →  (1)  R1
(13) GPIO27  →  (2)  G1
(26) GPIO7   →  (3)  B1
(6)  GND     →  (4)  GND
(24) GPIO8   →  (5)  R2
(21) GPIO9   →  (6)  G2
(19) GPIO10  →  (7)  B2
(10) GPIO15  →  (8)  E
(15) GPIO22  →  (9)  A
(16) GPIO23  →  (10) B
(18) GPIO24  →  (11) C
(22) GPIO25  →  (12) D
(11) GPIO17  →  (13) CLK
(7)  GPIO4   →  (14) LAT
(12) GPIO18  →  (15) OE
(14) GND     →  (16) GND

This is the standard regular GPIO mapping from rpi-rgb-led-matrix, and it works perfectly when wired directly.

My conclusion:
The Triple Bonnet’s E-line routing appears to be defective or misconfigured on my unit. The E-line (GPIO 15 → HUB75 pin 8) is the 5th address line needed for 64-row panels (1/32 scan). The “2 lit, 2 dark” stripe pattern is exactly what you’d expect if the E-line is stuck or not reaching the panel — the panel can only address 32 rows (A–D) instead of 64 (A–E).

Questions:

  1. Has anyone else experienced E-line issues with the Triple Bonnet and 64×64 panels?
  2. Is there a known hardware mod or solder bridge needed on the Triple Bonnet for the E-line to work with 64×64 panels (beyond the switch)?
  3. Could the level shifter on the bonnet be failing to pass the E signal properly?
  4. Is it possible I have a defective bonnet, or is there a configuration step I’m missing?

Any help appreciated — I need the bonnet working to drive multiple parallel chains for an upcoming event.

The picture on the panel leads to the conclusion that you have an issue with the B-line. Check your wiring and connections again