HUB75 RGB LED matrices with Arduino
Cheap HUB75 RGB matrix working

Cheap HUB75 RGB matrix working

Everyone likes LEDs. I like when I have a bunch of them. So one day I realised that I have about 15 big 32x16 RGB LED matrices in my lab. They are cheaper versions of Adafruit's led matrixes. Both matrices use standard HUB75 pinout. The pinout is same, LED count is the same, but display doesn't work - it is wired differently inside.

Driving matrices

Most simple way to do a led matrix is to drive low side columns with sinking driver chips and rows with high side mosfets. When you have bigger display - let's say 24 driver chips in total, then usually you will make multiple parallel lines of data to clock information faster.


HUB75 is a standard interface to control matrices like that. It has binary inputs for mosfet control: A, B, C and D. So you can have up to 16 rows. Also, you have 6 data buses: R1, G1, B1, R2, G2, B2. Now, to control a matrix you have to know two things: how many virtual rows and columns does your matrix have and how are they mapped with reality.

Backside of my LED matrix, 24 drivers are visible.

Backside of my LED matrix, 24 drivers are visible.

Differences from device to device

The Adafruit matrix has 12 driver chips and 8 rows controlled by mosfets. Mine have 24 driver chips and 4 rows. Also, Adafruit's one seems to be mapped quite straightforward way. Mine in the other hand.. rows are separated to eight banks that are all in different directions. Still - no problem. Mark Laane, a programmer in my lab, sat down with the matrix and soon we had a working library. You can find it from here:

Arduino Micro soldered to HUB75

Arduino Micro soldered to HUB75

Electrical wiring

I soldered my matrices directly to Arduino Micros. Since the pinout is slightly different from Uno, the connection diagram got hurt a bit. This library works with following connections:

HUB75 Connect to On Micro
B1 PB4 8
R2 PB5 9
G2 PB6 10
B2 PB7 11
A A0
B A1
C A2



4 thoughts on “HUB75 RGB LED matrices with Arduino

  1. Good hope're well, I have the same screen for a project in college I have problems to detratar data display out of shape erronera and tried to code adafruit and alternative you present here and still does not show clearly the words

  2. display module is similar as your .it has 24 chips and 8 banks(HUB 75).And for row control the 4 pins A,B,C,D are displayed as A,B,NC,GND on the Display module PCB.So by these details , i infer that it is a 1/4 scan it right?

  3. hallo, i have rbg 32x16 modul with 1/4 scan rate, can you tell me how its work on my arduino uno? thank you

Leave a Reply

Your email address will not be published. Required fields are marked *