When working on the Adafruit_Protomatter Arduino library (aka rgbmatrix in CircuitPython), I’ve started using this little breakout/adapter to quickly interface HUB75-style RGB LED matrices to a Rigol mixed-signal oscilloscope, which helps monitor signals and make timing diagrams like this:
This is quite the esoteric need, no plans to offer this in the shop. But if it looks handy for you, PCBs can be ordered inexpensively through Oshpark! Just add a few header bits to make it pluggable. It’s a completely passive thing, no power requirements, this just makes the connections between matrix and ’scope. Or you can use it when wiring up a different microcontroller for the first time…having the signals arranged and labeled is easier than wiring straight to a ribbon cable. Unlabeled pins are all grounds.
Previously this involved a bunch of manually-placed jumper wires. That’s a mild nuisance even when developing for one microcontroller board. Now we’re up to six in Adafruit_Protomatter, and every board requires a different pinout.
Rather than straddling pins on the microcontroller board, it works as a cable pass-through. Plug the RGB matrix ribbon cable from the MCU (or a Pi with Matrix Bonnet) into the adapter, then a second ribbon cable from the adapter to the matrix:
The two plugs from a Rigol MSO2302A logic analyzer (or others, if they use a similar layout) then plug straight into the outer headers:
Alternately, a female header can go on the underside of the board like so (key should match the silk on the top side of the board):
Which lets the adapter sit right on the back of a matrix:
It usually doesn’t matter which socket gets the female header…it’s just a pass-through and there’s no “in” or “out”…but some matrices may have protruding capacitors or have the connectors close to the plastic frame, so that might make the decision for you.
The female header can also be plugged into the matrix output. In this configuration that the RGB data and the other signals will not be in sync…you’re seeing RGB data from a previous pass alongside current clock, latch and row-select signals…but that may be good enough for establishing some signal timing basics. And you don’t need to disconnect anything or have an extra ribbon cable.
The 6-pin header can be used with a jumper to route either pin 8 or pin 16 from the ribbon cable to the logic analyzer’s “E” row select line. If you don’t need this though, it’s usually OK just to leave these unconnected, or jumper them to GND instead.
Again…you can find the PCB on Oshpark if you need one!