Monochrome 32*16 P10 HUB12 LED matrix control with ESP32

I finally had a chance to hook up the panel @BodoMinea was kind enough to send me (it’s been a busy year…) and MultiRowRefreshMapping in testing mode works for me with these changed settings, and an ESP32 with level shifting buffers:

#define SKETCH_MODE   MODE_MAP_TESTING
const uint16_t kMatrixHeight = 32;
const uint8_t kPanelType = SM_PANELTYPE_HUB12_16ROW_32COL_MOD4SCAN;
const uint32_t kMatrixOptions = (SM_HUB75_OPTIONS_HUB12_MODE);

If I use the same sketch on an ESP32 without level shifting buffers, the pixels jump around quite a bit instead of going from left to right across one row.

Hi everyone, I am trying to achieve same thing. I got esp 32 and P10 display. Currently nothing is visible on my display. Can you guys please help me . Thanks in advance.

If using ESP32 is not mandatory for you, I can suggest to test my library DMD_STM32 that supports HUB12 monochrome and HUB75 RGB panels on STM32 and RP2040 boards.

Hi, currently i am working with P10 single color. and i try the library you try, and i facing a noise with the showing text. not stable. can you gimme any advice? how your result is good like the video you share.

i use esp-32S espressif wroom, p10 module single color. and the power for led module is from 5v adaptor. while the esp32 got the power from USB laptop.


hey everyone ,
i am trying to acheive the same thing in this discussion ,i.e to drive a P10 led hub12 led module with an esp32 .even with using dmd32 library , i was not able to light up the panel. but the panel works fine with an arduino uno . Is it a problem of voltage level shifter ,becuase i didnt use any …Any inputs would be appreciated ! thanks …

yes, it could indeed be a problem with level shifters missing depending on what minimal voltage that panel expects. You are supposed to give it 5V logic, not 3.3V logic

For anyone reading this, problem was not voltage level, but this:

, hope this saves you some headache.