VHS RGB Panel Project # 1 (Panel Tester)

We have a fair pile of tested (marked OK on back) and working 16x16 RGB LED panels available for projects… These are in a box in the LED rack (next to Ecycling shelf). The cost for each panel is $5.00
You can either drop cash off in the donation drop box or eTransfer to the Space…

We also have a smaller pile of defective ones (marked BAD on back) in the Ecycling/UpForGrabs area should you want to try resituating them…

In order to make use of them you will need the following:

  • ESP8266 Module (NodeMCU, WeMOS, etc)
  • Female to Female Dupont Jumpers (at least 12)
  • Power supply for ESP8266 (Cell phone charger is fine)
  • 5V 1A power supply for RGB Panel

You also have to have the ESP8266 core support added to your Arduino IDE:

Here are the connections on the back of the panel

First you need to jumper 5 lines from the IN port over the the OUT port. To complicate things the OUT port is not labeled but the pins descriptions are identical to the IN port. Wire them as follows:

P10 Panel IN/OUT Connections
IN Pin OUT Pin
R2 R1
G1 R2
G2 G1
B1 G2
B2 B1

Next you need to connect your ESP8266 module using 7 jumpers. I used a NodeMCU in my example:

ESP8266 Board Header Pinout
NodeMCU Pin Description P10 Pin
D0 Latch ST
D1 A Address A
D2 B Address B
D4 Output Enable OE
D5 Clock CLK
D7 Data R1

You will also need to connect the ESP8266 to power. You can use you PC to power it while programming and then just use a cell phone charger.

You also need a 5V power supply for the panel itself. It connects to the power in (white port) where the picture shows the black and red alligator clips. The panels draw about 1 amp each at white full brightness so make sure your supply is suitable.

Now lets get the code running on your ESP8266. I used this library:

Which also requires FastLED:

You can find a bit more info on using the library here:

Note that these are older 1/4 scan panels and don’t seem to work well when trying to make larger panel matrixes (at least I wasn’t able to but you may have better luck). However there are lots of fun things we can do with one or two panels)

You can install both libraries from within your Arduino IDE using the library manager.

Next you need to grab the code here:
VHS_Pixel_Panel_Tester_V1.2.zip (1.6 KB)
And open it up in your Arduino IDE. The code is reasonably commented but remember I am not a programmer. It is cobbled together with bits I found on the web. Upload it to your ESP8266 and you should get this:

It cycles through the primary (Red, Green, Blue) and secondary (Yellow, Cyan, Magenta) colors and then displays White. This is a good way to ensure all the LEDs in the panel are actually working. I have had some that show all 3 LEDs are working (se each if the R,G & B LEDs works fine) l) but then fails when doing the secondary colors(mixing the various LEDs). Make sure you can get this test app running on your panel before trying any of the other projects.

If you want a matching power connector there are some in a box (also in the furnace room)

I find the power connectors a bit too big so just solder the power to the pins for projects…

Please don’t touch the panels and parts in the box that is labelled for the Video Wall as these are spare parts we need to keep.


Outa curiosity what is the reason for jumpering between the in and the out?
The way these panels work is they are basically glorified shift registers, and are set up so you can clock data into one panel and have other panels downstream that receive the overflow data.
So on the panels in the video walls all the data goes in the in port, and there are a series of short ribbons that carry the out of one panel to the in of the next and so on down the line.

This is the pinout I used for testing: SmartMatrix - Shield

The pinout on the hub75 (that ribbon cable connector) isn’t standardized (yet the connector is…) so you have to go off the labels rather than position.

1 Like

The library I used (https://github.com/2dom/PxMatrix) drives the all 3 colors in the panel with a single line so the various input/output pins need to be connected in a single line…

Certainly other libraries may work but this was the only one I could get to work…
Can’t remember which others I tries but it seems most of the current ones don’t support the 1/4 scan version that these panels are…

But of course I’m no expert on LED panels so there may be a better library…


Ohhh my appologies that makes total sense. That is a clever way to rig that! Thanks for doing all this!