mirror of
https://github.com/ChuckBuilds/LEDMatrix.git
synced 2026-04-13 05:53:00 +00:00
update readme
This commit is contained in:
73
README.md
73
README.md
@@ -1,15 +1,73 @@
|
|||||||
# LEDMatrix
|
# LEDMatrix
|
||||||
|
A sophisticated LED matrix display system that provides real-time information display capabilities for various data sources. The system is highly configurable and supports multiple display modes that can be enabled or disabled based on user preferences.
|
||||||
|
|
||||||
A modular LED matrix display system for sports information using Raspberry Pi and RGB LED matrices.
|
## Core Features
|
||||||
|
|
||||||
|
### Time and Weather
|
||||||
|
- Real-time clock display
|
||||||
|
- Weather information with custom icons
|
||||||
|
- Google Calendar event display
|
||||||
|
|
||||||
|
### Sports Information
|
||||||
|
The system supports live, recent, and upcoming game information for multiple sports leagues:
|
||||||
|
- NHL (Hockey)
|
||||||
|
- NBA (Basketball)
|
||||||
|
- MLB (Baseball)
|
||||||
|
- NFL (Football)
|
||||||
|
- NCAA Football
|
||||||
|
- NCAA Men's Basketball
|
||||||
|
- NCAA Men's Baseball
|
||||||
|
- Soccer
|
||||||
|
(Note, some of these sports seasons were not active during development and might need fine tuning when games are active)
|
||||||
|
|
||||||
|
### Financial Information
|
||||||
|
- Near real-time stock & crypto price updates
|
||||||
|
- Stock news headlines
|
||||||
|
- Customizable stock & crypto watchlists
|
||||||
|
|
||||||
|
### Entertainment
|
||||||
|
- Music playback information from multiple sources:
|
||||||
|
- Spotify integration
|
||||||
|
- YouTube Music integration
|
||||||
|
- Album art display
|
||||||
|
- Now playing information with scrolling text
|
||||||
|
|
||||||
|
### Custom Display Features
|
||||||
|
- Text display capabilities
|
||||||
|
- Font testing and customization
|
||||||
|
- Configurable display modes
|
||||||
|
- Cache management for improved performance
|
||||||
|
|
||||||
|
|
||||||
|
## System Architecture
|
||||||
|
|
||||||
|
The system is built with a modular architecture that allows for easy extension and maintenance:
|
||||||
|
- `DisplayController`: Main orchestrator managing all display modes
|
||||||
|
- Individual managers for each feature (sports, weather, music, etc.)
|
||||||
|
- Separate authentication handlers for different services
|
||||||
|
- Configurable display modes and rotation patterns
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
The system can be configured through a JSON configuration file that allows users to:
|
||||||
|
- Enable/disable specific features
|
||||||
|
- Set display durations
|
||||||
|
- Configure API keys and endpoints
|
||||||
|
- Customize display modes and rotation patterns
|
||||||
|
- Set preferred music sources
|
||||||
|
- Configure sports team preferences
|
||||||
|
|
||||||
# Work in Progress, things may break. I'll try to keep the main branch as stable as I can but this is absolutely in a pre-release state. There are also a ton of commits as it's an easy way to get the changes to the rpi for testing.
|
|
||||||
|
|
||||||
## Hardware Requirements
|
## Hardware Requirements
|
||||||
- Raspberry Pi 4 or older
|
- Raspberry Pi 3b or 4
|
||||||
|
- Amazon Affiliate Links:
|
||||||
- Adafruit RGB Matrix Bonnet/HAT
|
- Adafruit RGB Matrix Bonnet/HAT
|
||||||
- 2x LED Matrix panels (64x32)
|
- 2x LED Matrix panels (64x32)
|
||||||
- DC Power Supply for Adafruit RGB HAT
|
- DC Power Supply for Adafruit RGB HAT
|
||||||
|
|
||||||
|
|
||||||
|
-----------------------------------------------------------------------------------
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
1. Clone this repository:
|
1. Clone this repository:
|
||||||
@@ -27,12 +85,7 @@ pip3 install --break-system-packages -r requirements.txt
|
|||||||
|
|
||||||
## Configuration
|
## Configuration
|
||||||
|
|
||||||
1. Copy the example configuration:
|
1.Edit `config/config.json` with your preferences via `sudo nano config/config.json`
|
||||||
```bash
|
|
||||||
cp config/config.example.json config/config.json
|
|
||||||
```
|
|
||||||
|
|
||||||
2. Edit `config/config.json` with your preferences
|
|
||||||
|
|
||||||
|
|
||||||
## Important: Sound Module Configuration
|
## Important: Sound Module Configuration
|
||||||
@@ -370,7 +423,6 @@ The Music Display module shows information about the currently playing track fro
|
|||||||
2. **YouTube Music (YTM):**
|
2. **YouTube Music (YTM):**
|
||||||
* Requires the [YouTube Music Desktop App](https://ytmdesktop.app/) (YTMD) to be installed and running on a computer on the *same network* as the Raspberry Pi.
|
* Requires the [YouTube Music Desktop App](https://ytmdesktop.app/) (YTMD) to be installed and running on a computer on the *same network* as the Raspberry Pi.
|
||||||
* In YTMD settings, enable the "Companion Server" under Integration options. Note the URL it provides (usually `http://localhost:9863` if running on the same machine, or `http://<YTMD-Computer-IP>:9863` if running on a different computer).
|
* In YTMD settings, enable the "Companion Server" under Integration options. Note the URL it provides (usually `http://localhost:9863` if running on the same machine, or `http://<YTMD-Computer-IP>:9863` if running on a different computer).
|
||||||
* Note, The YTM Display seems to most reliably update on the display switch INTO the MusicManager Display. Song changes after this are less reliable in updating on time. I am trying to figure this quirk out but shouldn't be too disruptive. Spotify doesn't have this issue.
|
|
||||||
|
|
||||||
**Configuration:**
|
**Configuration:**
|
||||||
|
|
||||||
@@ -414,6 +466,7 @@ The Music Display module shows information about the currently playing track fro
|
|||||||
|
|
||||||
**`preferred_source` Options:**
|
**`preferred_source` Options:**
|
||||||
|
|
||||||
|
* `"auto"`: (Default) Checks Spotify first. If Spotify is playing, shows its track. If not, checks YTM.
|
||||||
* `"spotify"`: Only uses Spotify. Ignores YTM.
|
* `"spotify"`: Only uses Spotify. Ignores YTM.
|
||||||
* `"ytm"`: Only uses the YTM Companion Server. Ignores Spotify.
|
* `"ytm"`: Only uses the YTM Companion Server. Ignores Spotify.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user