Getting Started
Get SpojBoard up and running in minutes with this quick start guide.
What You'll Need
- Hardware: Either a MatrixPortal S3 (plug & play) or generic ESP32-S3 with manual wiring
- Display: 2ร HUB75 64ร32 LED Matrix panels (128ร32 total)
- Power: 5V 2A+ power supply (3A recommended)
- Data source: Golemio API key (Prague), BVG (Berlin, no key needed), or MQTT broker
Recommended: The Adafruit MatrixPortal S3 is the easiest option โ just plug in your panels, no wiring required.
Quick Start
1. Flash the Firmware
Download the appropriate firmware for your board:
spojboard-matrixportal_s3-r*.binโ for MatrixPortal S3spojboard-esp32_s3_n8r2-r*.binโ for generic ESP32-S3
Flash using PlatformIO or your preferred ESP32 flashing tool:
pio run -t upload 2. Connect to Setup AP
After flashing, the display will show WiFi credentials:
WiFi Setup Mode
SSID: SpojBoard-XXXX
Pass: xxxxxxxx
Go to: 192.168.4.1 Connect your phone or computer to this WiFi network. A captive portal will open automatically.
3. Configure via Web UI
- Enter your home WiFi credentials
- Select your data source (Prague, Berlin, or MQTT)
- Enter your API key and stop ID(s)
- Click "Save & Connect to WiFi"
The device will restart, connect to your WiFi, and start showing departures.
Getting Your Stop ID
Prague (Golemio API)
- Get an API key at api.golemio.cz/api-keys
- Find your stop ID at data.pid.cz/stops
- Look for the
gtfsIdsvalue (e.g.,U693Z2P)
Berlin (BVG API)
- No API key required
- Find your stop at v6.bvg.transport.rest
- Use the numeric stop ID (e.g.,
900013102)
MQTT (Home Assistant / Custom)
No stop IDs needed โ configure your MQTT broker to aggregate departures server-side. See the MQTT Integration Guide for setup.
If WiFi Fails
If the device can't connect to WiFi (wrong password, network down), it will automatically:
- Stop trying after 20 attempts (~10 seconds)
- Create a new AP with a random password
- Display the credentials on the LED matrix
Just connect to the new AP and reconfigure.