Example project · Displays & sensors
LED ticker (32×8 matrix bar)
A message scrolls across the 4-in-1 cascaded MAX7219 bar, pushed over bit-banged SPI at cycle accuracy: a 32×8 framebuffer shifted one column per frame, exactly how the real max7219 drivers do it. Edit the message in the Code tab.

What's on the bench
- Battery
- ESP32-C3
- LED Matrix 32×8 (4-in-1)
The code
This MicroPython script runs on the emulated board every boot; edit it in the Code tab.
from machine import Pin, SoftSPI import framebuf, time spi = SoftSPI(baudrate=1000000, sck=Pin(6), mosi=Pin(4), miso=Pin(5)) cs = Pin(3, Pin.OUT, value=1) buf = bytearray(32) fb = framebuf.FrameBuffer(buf, 32, 8, framebuf.MONO_HLSB) def all4(a, d): cs(0); spi.write(bytes([a, d]) * 4); cs(1) for a, d in ((0x0f, 0), (0x0b, 7), (0x09, 0), (0x0a, 3), (0x0c, 1)): all4(a, d) def show(): for y in range(8): cs(0) for m in range(4): spi.write(bytes([y + 1, buf[y * 4 + m]])) cs(1) MSG = 'BREADBOARD LIVE * ' W = len(MSG) * 8 x = 32 print('TICKER') while True: fb.fill(0) fb.text(MSG, x, 0) show() x -= 1 if x < -W: x = 32 time.sleep_ms(60)