Python RGB Matrix games and animations https://www.xythobuz.de/ledmatrix_v2.html
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
Thomas Buck 83f4f5aa7f add NASA astronomy picture of the day loader. and some more pics. 1 gadu atpakaļ
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 gadu atpakaļ
hardware various adjustments 1 gadu atpakaļ
images add NASA astronomy picture of the day loader. and some more pics. 1 gadu atpakaļ
tools systemd unit 1 gadu atpakaļ
.gitignore add NASA astronomy picture of the day loader. and some more pics. 1 gadu atpakaļ
README.md systemd unit 1 gadu atpakaļ
apod.py add NASA astronomy picture of the day loader. and some more pics. 1 gadu atpakaļ
bdf.py split text drawing interface into multiple methods. 1 gadu atpakaļ
breakout.py fix breakout endless loop and modify default colors 1 gadu atpakaļ
camp_pico.py various adjustments 1 gadu atpakaļ
camp_small.py rename images 1 gadu atpakaļ
config.py initial weather page and other small stuff 1 gadu atpakaļ
copy.sh various on-camp adjustments 1 gadu atpakaļ
gamepad.py change brightness with controller. tweak tetris. 1 gadu atpakaļ
games.py various on-camp adjustments 1 gadu atpakaļ
image.py image test runner shows both bilinear and nearest neighbour. add aphex twin logo. 1 gadu atpakaļ
img_tmp.py pre-created images with less whitespace 1 gadu atpakaļ
life.py change brightness with controller. tweak tetris. 1 gadu atpakaļ
livingroom.py add NASA astronomy picture of the day loader. and some more pics. 1 gadu atpakaļ
manager.py randomized manager should not show same screen twice 1 gadu atpakaļ
mapper.py double speed of breakout gameplay. fix bug where breakout paddle appeared in middle of screen on large pi matrix. randomize breakout start angle. 1 gadu atpakaļ
net.py various on-camp adjustments 1 gadu atpakaļ
pi.py various adjustments 1 gadu atpakaļ
pi.sh convenience pi update script 1 gadu atpakaļ
pico.py Add PicoInput to get buttons on Interstate75 W. 1 gadu atpakaļ
pico_ota.py various on-camp adjustments 1 gadu atpakaļ
qr.py initial weather page and other small stuff 1 gadu atpakaļ
qr_tmp.py pre-created images with less whitespace 1 gadu atpakaļ
runner.py tweaks, started work on new game 1 gadu atpakaļ
scroll.py kind of fix manager 1 gadu atpakaļ
snake.py reset snake speed on restart 1 gadu atpakaļ
solid.py change brightness with controller. tweak tetris. 1 gadu atpakaļ
splash.py change brightness with controller. tweak tetris. 1 gadu atpakaļ
telegram.py initial weather page and other small stuff 1 gadu atpakaļ
test.py initial weather page and other small stuff 1 gadu atpakaļ
tetris.py tweak tetris colors 1 gadu atpakaļ
util.py randomized manager should not show same screen twice 1 gadu atpakaļ
weather.py show missing graphics in weather 1 gadu atpakaļ

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 wetterdienst

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

Setup

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.

Use the included systemd unit to auto-start the script on Raspberry Pi:

sudo cp tools/led.service /etc/systemd/system/led.service
sudo systemctl daemon-reload
sudo systemctl enable --now led.service

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.

The included DWD weather API documentation is from their website.