This is an early checkin of the in-progress work to bring the NightDriver wifi client to the Pi for HUB75 matrices.
It uses the rgb-matrix-rpi library to manage the actual matrix. It then spins up a thread to receive color data packets in standard NightDriver format, which is basically a timestamp and color data, one CRGB object per pixel. As those packets are received they are placed in a circular buffer.
The main thread monitors the buffer, and when a frame is ready to be drawn, pulls it off and sends it to the matrix.
The code in this project uses rpi-rgb-led-matrix
as a dependency, which is included in this repository as a submodule. There are two ways to initialize this library when preparing the build of this repo's code:
-
Include the git clone of
rpi-rgb-led-matrix
in the clone of this repo. For this, use the following command to clone this repo:git clone --recurse-submodules https://github.com/davepl/NightDriver-Pi.git
-
Initialize and update the
rpi-rgb-led-matrix
submodule after cloning NightDriver-Pi itself - for instance because you already cloned the latter before you read this. This can be done by running the following command after cloning this repo:git submodule update --init --recursive
If you use a development environment like VSCode to clone NightDriver-Pi, the cloning of rpi-rgb-led-matrix
may well happen automatically.
Building NightDriver-Pi and its dependency can simply be done by running make
- not that you can do a lot with it!
The build of rpi-rgb-led-matrix
will be included when necessary.