D
DIY Electronics
— Building circuits, programming microcontrollers, and making things blink49 members Created Jun 2026
Op-amp fundamentals for microcontroller people
ESP32 HUB75 RGB Matrix Panel
Driving a 64x32 HUB75 RGB LED matrix from an ESP32 requires precise timing that is difficult to achieve in software. The SmartMatrix library or the ESP32-HUB75-MatrixPanel-I2S-DMA library uses the I2S peripheral to generate the row-scan and color-clock signals in hardware.
The HUB75 protocol uses binary coded modulation (BCM) for color depth — to get 8-bit color, you multiplex each row 256 times with decreasing pulse widths. The I2S DMA approach handles this in hardware at 20-40MHz pixel clock, giving smooth animation without CPU intervention.
I built a scrolling stock ticker display with a 128x32 panel (two 64x32 panels chained). The display updates at 60fps and the ESP32 CPU is free to fetch data over WiFi every 30 seconds.