-
-
Notifications
You must be signed in to change notification settings - Fork 22
WIKI_QUICK_START
Get your LEDMatrix system up and running in minutes! This guide covers the essential steps to get your display working.
If this is a brand new install, you can run the all-in-one installer and then use the web UI:
chmod +x first_time_install.sh
sudo ./first_time_install.shThen open the web UI at:
http://your-pi-ip:5001
The steps below document the manual process for advanced users.
- Raspberry Pi 3B+ or 4 (NOT Pi 5)
- Adafruit RGB Matrix Bonnet/HAT
- 2x LED Matrix panels (64x32 each)
- 5V 4A DC Power Supply
- Micro SD card (8GB or larger)
- Internet connection
- SSH access to Raspberry Pi
- Basic command line knowledge
- Download Raspberry Pi Imager
- Choose your Raspberry Pi model
- Select "Raspbian OS Lite (64-bit)"
- Choose your micro SD card
- Click "Next" then "Edit Settings"
-
General Tab:
- Set hostname:
ledpi - Enable SSH
- Set username and password
- Configure WiFi
- Set hostname:
-
Services Tab:
- Enable SSH
- Use password authentication
-
Click "Save" and write the image
- Insert SD card into Raspberry Pi
- Power on and wait for boot
- Connect via SSH:
ssh ledpi@ledpi
sudo apt update && sudo apt upgrade -y
sudo apt install -y git python3-pip cython3 build-essential python3-dev python3-pillow sconsgit clone https://github.com/ChuckBuilds/LEDMatrix.git
cd LEDMatrixchmod +x first_time_install.sh
sudo ./first_time_install.shsudo pip3 install --break-system-packages -r requirements.txtcd rpi-rgb-led-matrix-master
sudo make build-python PYTHON=$(which python3)
cd bindings/python
sudo python3 setup.py installpython3 -c 'from rgbmatrix import RGBMatrix, RGBMatrixOptions; print("Success!")'sudo apt-get remove bluez bluez-firmware pi-bluetooth triggerhappy pigpiocat <<EOF | sudo tee /etc/modprobe.d/blacklist-rgb-matrix.conf
blacklist snd_bcm2835
EOF
sudo update-initramfs -u
sudo reboot# Edit cmdline.txt
sudo nano /boot/firmware/cmdline.txt
# Add "isolcpus=3" at the end
# Edit config.txt
sudo nano /boot/firmware/config.txt
# Change "dtparam=audio=on" to "dtparam=audio=off"
sudo rebootsudo nano config/config.jsonMinimal Configuration:
{
"display": {
"hardware": {
"rows": 32,
"cols": 64,
"chain_length": 2,
"brightness": 90,
"hardware_mapping": "adafruit-hat-pwm"
}
},
"clock": {
"enabled": true
},
"weather": {
"enabled": true
}
}sudo chmod o+x /home/ledpichmod +x setup_cache.sh
./setup_cache.shsudo python3 display_controller.pyExpected Behavior:
- Display should show "Initializing" message
- Clock should display current time
- Weather should show current conditions (if API key configured)
Press Ctrl+C to stop the display
- Get free API key from OpenWeatherMap
- Create secrets file:
cp config/config_secrets.template.json config/config_secrets.json sudo nano config/config_secrets.json
- Add your API key:
{ "weather": { "api_key": "your_api_key_here" } }
sudo python3 display_controller.pychmod +x install_service.sh
sudo ./install_service.sh# Start display
sudo systemctl start ledmatrix.service
# Stop display
sudo systemctl stop ledmatrix.service
# Check status
sudo systemctl status ledmatrix.service
# Enable autostart
sudo systemctl enable ledmatrix.servicechmod +x start_display.sh stop_display.sh
# Start display
sudo ./start_display.sh
# Stop display
sudo ./stop_display.shpython3 start_web_v2.pySet "web_display_autostart": true in config/config.json.
The installed ledmatrix-web.service will call start_web_conditionally.py to start the web UI on boot.
Access the web interface at:
http://your-pi-ip:5001
Edit config/config.json:
{
"stocks": {
"enabled": true,
"symbols": ["AAPL", "MSFT", "GOOGL", "TSLA"]
}
}{
"nhl_scoreboard": {
"enabled": true,
"favorite_teams": ["TB"]
}
}{
"music": {
"enabled": true,
"preferred_source": "ytm"
}
}-
No Display:
- Check hardware connections
- Verify
hardware_mappingsetting - Ensure power supply is adequate
-
Permission Errors:
sudo chmod o+x /home/ledpi
-
Import Errors:
cd rpi-rgb-led-matrix-master/bindings/python sudo python3 setup.py install -
Cache Issues:
chmod +x fix_cache_permissions.sh ./fix_cache_permissions.sh
# Test clock
python3 -c "from src.clock import Clock; from src.display_manager import DisplayManager; c = Clock(DisplayManager({})); c.display()"
# Test weather (requires API key)
python3 -c "from src.weather_manager import WeatherManager; from src.display_manager import DisplayManager; w = WeatherManager({'weather': {'enabled': True}}, DisplayManager({})); w.display_weather()"- Edit
config/config.jsonto enable desired features - Add API keys to
config/config_secrets.json - Customize display durations and settings
- Configure favorite teams for each sport
- Set up odds ticker for betting information
- Customize display modes
- Configure Spotify or YouTube Music
- Set up authentication
- Test music display
- Add custom text messages
- Configure YouTube stats
- Set up "of the day" content
- Access web interface at
http://ledpi:5001 - Control display remotely
- Monitor system status
# Start display manually
sudo python3 display_controller.py
# Start service
sudo systemctl start ledmatrix.service
# Stop service
sudo systemctl stop ledmatrix.service
# Check status
sudo systemctl status ledmatrix.service
# View logs
journalctl -u ledmatrix.service
# Edit configuration
sudo nano config/config.json
# Edit secrets
sudo nano config/config_secrets.json-
config/config.json- Main configuration -
config/config_secrets.json- API keys -
ledmatrix.service- Systemd service
-
/var/cache/ledmatrix/- Cache directory -
assets/- Logos, fonts, icons -
src/- Source code -
config/- Configuration files
Congratulations! Your LEDMatrix system is now running. Check out the other wiki pages for detailed configuration options and advanced features.