Video game console operating system that displays on a 16*9 RGB LED matrix.
Name | Description | ||
---|---|---|---|
Demo | A demo software that uses all drivers from the SDK. | ||
Yumyum | Eat all the candies with your monster to win the game. | ||
Clock | What time is it? | ||
Zigzag | Turn left then right, eat candies but not yourself. | ||
Draw | For those who like pixel art. | ||
Device | The Device software allows you to change the luminosity of the LEDs. | ||
Blocks | A puzzle game, score a maximum of points by clearing complete lines. | ||
Getout | A labyrinth game, try to get out if you can. | ||
Rollup dice | Random dice generator (https://github.com/gwenker/matrix-rollup-dice). | ||
Animate | Player for animations generated with Glediator (http://www.solderlab.de/index.php/software/glediator). | ||
Light | Simple software to generate mood light. |
There are 3 main types that exists in Matrix's sdk:
- A display receives a live stream of frames from core.
- A player sends actions for a slot to core, an action is a button press/release event.
- A software receives player's actions from core and use sdk's rendering features to generate frames in Matrix core.
Name | Description |
---|---|
Core | The heart of the Matrix system that managed software's lifecycle. All softwares, players and displays are connected to core. |
Device | The component that interacts with usb controllers and Arduino. |
Gamepad | A web application that contains a virtual controller with display. |
Emulator | A web application built for development purpose. It displays Matrix main screen and player's screens. |
Matrix is designed to run on a Raspberry Pi (at least model 3), it is composed by multiple softwares (core, device, gamepad...). All softwares can run on the Raspberry Pi but you can also start a software on your desk that will communicate remotely with the Matrix's core (with flag --core-uri).
Here are the few steps to install your own Matrix:
-
Download Matrix latest release here. If you want to install it on Raspbian or Debian there is a .deb file available that will create a service to start Matrix automatically at boot.
-
Extract/install and run Matrix package.
$ dpkg -i matrix.deb # for Raspbian/Debian users
$ service matrix status
$ unzip matrix.zip # for others
$ cd matrix-package && ./matrix-[REPLACE_DEPENDING_OS] start --log-level info --gamepad-port 80 core device gamepad emulator demo zigzag yumyum clock draw blocks getout # select the right executable depending on your os
- Install firmware on the Arduino from file in Matrix source code (inside folder at ./device/firmware/firmware.ino). Source code can be downloaded from release.
- Requirements.
- Install JS projects dependencies.
$ make install-all
- Run it.
$ go run main.go start --log-level info core gamepad emulator demo # you can start all other softwares by adding their names
$ (cd emulator && npm start)
$ (cd gamepad && npm start)
- Open emulator at http://localhost:3001 and/or gamepad at http://localhost:4002.