PIXELBOARD is a Wi-Fi–enabled smart scrolling LED notice board that lets you send messages directly from your phone or laptop to a dot matrix LED display via a built-in web interface.
Using the XIAO ESP32S3 microcontroller, this project combines IoT, web UI design, and real-time display control. Perfect for offices, classrooms, makerspaces, or even as a funky home décor piece, PIXELBOARD turns any message into a glowing animation.
Features💻 Web-based Control: Change the message from any device without installing apps.
- 💻 Web-based Control: Change the message from any device without installing apps.
🔄 Scroll Direction Control: Choose left or right scroll.
- 🔄 Scroll Direction Control: Choose left or right scroll.
⚡ Adjustable Speed: From fast ticker-style to slow billboard mode.
- ⚡ Adjustable Speed: From fast ticker-style to slow billboard mode.
🎭 Invert Colors: White text on black or black text on white.
- 🎭 Invert Colors: White text on black or black text on white.
📶 Auto Wi-Fi Setup: No hardcoded SSID — configure via captive portal.
- 📶 Auto Wi-Fi Setup: No hardcoded SSID — configure via captive portal.
🌐 Portable: Works anywhere with Wi-Fi.
- 🌐 Portable: Works anywhere with Wi-Fi.
Component
Quantity
Notes
Seeed Studio XIAO ESP32S3
1
Ultra-small ESP32 board with Wi-Fi/BLE
MAX7219 Dot Matrix Display (8×32 / 4 modules)
1
FC-16 type recommended
USB-C cable
1
For flashing and powering the ESP32S3
Jumper wires
~8
For SPI connections
Breadboard or custom PCB
1
For neat wiring
Wiring Diagram (XIAO ESP32S3 → MAX7219)MAX7219 Pin
XIAO ESP32S3 Pin
VCC
5V
GND
GND
DIN
D10 (MOSI)
CS
D1
CLK
D8 (SCK)
Note: The XIAO ESP32S3 supports hardware SPI on multiple pins, but in this example, we use the ones above for compatibility with the MD_Parola library.
Note: The XIAO ESP32S3 supports hardware SPI on multiple pins, but in this example, we use the ones above for compatibility with the MD_Parola library.Libraries Needed
Install these via Arduino IDE Library Manager:
MD_Parola
- MD_Parola
MD_MAX72XX
- MD_MAX72XX
ESP32 WiFi
- ESP32 WiFi
WiFiManager (by tzapu)
- WiFiManager (by tzapu)
In your original ESP8266 code:
Change #include <ESP8266WiFi.h> → #include <WiFi.h>
- Change
#include <ESP8266WiFi.h>→#include <WiFi.h>
Use XIAO ESP32S3 pin numbers for CS_PIN, CLK, DIN
- Use XIAO ESP32S3 pin numbers for
CS_PIN,CLK,DIN
Keep HARDWARE_TYPE as MD_MAX72XX::FC16_HW
- Keep
HARDWARE_TYPEasMD_MAX72XX::FC16_HW
Serial port speed can remain 115200
- Serial port speed can remain
115200
#define HARDWARE_TYPE MD_MAX72XX::FC16_HW
#define MAX_DEVICES 4
#define CS_PIN 1 // XIAO ESP32S3 D1 pin
MD_Parola P = MD_Parola(HARDWARE_TYPE, CS_PIN, MAX_DEVICES);Everything else works almost unchanged.
How It WorksStartup: When powered, the XIAO ESP32S3 creates a Wi-Fi hotspot called "SmartNoticeBoard".
- Startup: When powered, the XIAO ESP32S3 creates a Wi-Fi hotspot called "SmartNoticeBoard".
Connect & Configure: Connect to it, and a configuration page lets you select your Wi-Fi network.
- Connect & Configure: Connect to it, and a configuration page lets you select your Wi-Fi network.
IP Display: Once connected, the display shows the device’s IP address.
- IP Display: Once connected, the display shows the device’s IP address.
Web Control: Open that IP in your browser, type your message, adjust settings, and click Send Data.
- Web Control: Open that IP in your browser, type your message, adjust settings, and click Send Data.
Live Update: The dot matrix scrolls your message instantly.
- Live Update: The dot matrix scrolls your message instantly.
Office announcements
- Office announcements
Classroom reminders
- Classroom reminders
Event welcome messages
- Event welcome messages
Cafe menus
- Cafe menus
Motivational quotes wall
- Motivational quotes wall
(Add a YouTube or Hackster video link here)
Future ImprovementsAdd multiple effects from MD_Parola.
- Add multiple effects from MD_Parola.
Support MQTT for IoT home automation integration.
- Support MQTT for IoT home automation integration.
Add RTC module for time/date display.
- Add RTC module for time/date display.
Create multi-user message queue.
- Create multi-user message queue.








Comments