Python RGB Matrix games and animations https://www.xythobuz.de/ledmatrix_v2.html
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Thomas Buck d82f47d27b exception printing was broken on normal python 1 rok temu
fonts more fonts. more instructions. added images and colors from cccamp23 style guide. text rendering now possible with colors. custom font spacing. images automatically scaled and cropped. fixed qr text and colors. allow exiting test gui with q or esc. better target check. 1 rok temu
images more fonts. more instructions. added images and colors from cccamp23 style guide. text rendering now possible with colors. custom font spacing. images automatically scaled and cropped. fixed qr text and colors. allow exiting test gui with q or esc. better target check. 1 rok temu
.gitignore pre-gen image for pico 1 rok temu
README.md support multiple chained panels. color remapping for differing panel brightness. 1 rok temu
bdf.py implement simple text drawing on pico 1 rok temu
camp_pico.py pre-gen image for pico 1 rok temu
camp_small.py implement simple text drawing on pico 1 rok temu
config.py add wifi support for Pico 1 rok temu
copy.sh missing image dump modifications 1 rok temu
gamepad.py add gamepad/keyboard handler and simple snake game 1 rok temu
image.py missing image dump modifications 1 rok temu
img_tmp.py pre-gen image for pico 1 rok temu
life.py get ntp time and adjust brightness accordingly 1 rok temu
manager.py get ntp time and adjust brightness accordingly 1 rok temu
mapper.py exception printing was broken on normal python 1 rok temu
net.py exception printing was broken on normal python 1 rok temu
pi.py pico interstate75 support 1 rok temu
pico.py use FM6126A panel init 1 rok temu
qr.py missing image dump modifications 1 rok temu
qr_tmp.py pre-gen image for pico 1 rok temu
scroll.py get ntp time and adjust brightness accordingly 1 rok temu
snake.py get ntp time and adjust brightness accordingly 1 rok temu
solid.py get ntp time and adjust brightness accordingly 1 rok temu
splash.py implement simple text drawing on pico 1 rok temu
test.py rename debug_loop to loop 1 rok temu
tetris.py get ntp time and adjust brightness accordingly 1 rok temu
util.py exception printing was broken on normal python 1 rok temu

README.md

RGB Matrix Visualizer

Render various content to various output devices.

Quick Start

Just run:

./manager.py

and go from there.

Dependencies

You always need:

pip install Pillow bdfparser "qrcode[pil]" evdev

For evdev to find all devices you may need to add your user to the input group or run the scripts as root.

The rest depends on the output device chosen. For debugging on your host PC you can use the TestGUI interface with pygame:

pip install pygame

The other currently supported option is using a Raspberry Pi with the Adafruit RGB Matrix Bonnet and a matching LED Matrix. The tutorial suggests using the Adafruit Raspberry Pi Installer Script for the RGB matrix. This will give you the hzeller/rpi-rgb-led-matrix project which includes the Python bindings used in this project.

Adding your own visualizations

Take a look how others are implemented. You can chain the different screens together using Manager and also check for conditions, as seen in CheckHTTP. This should enable you to quickly create something usable.

One goal is to run this project on public events. If this is the case, and you want your own message to appear, simply open up a PR or send an email with a patch. Because of different versions between host PCs and the Raspbian OS, things may look slightly different, especially regarding stuff like animated GIF viewing.

Licensing

This project is licensed as beer-ware:

----------------------------------------------------------------------------
"THE BEER-WARE LICENSE" (Revision 42):
<xythobuz@xythobuz.de> wrote this file.  As long as you retain this notice
you can do whatever you want with this stuff. If we meet some day, and you
think this stuff is worth it, you can buy me a beer in return.   Thomas Buck
----------------------------------------------------------------------------

The included fonts from farsil/ibmfonts are licensed as CC-BY-SA-4.0.

The fonts from cmvnd/fonts are licensed as GPLv3.

The tiny font is from robey and licensed as CC0.

The included GIFs are from GifCities.