Bielefeld devblog@posteo.de

Select your language

RoonMatrix - what is it about?

tl;dr

It is about a maker project, the self-construction of an LED matrix display on which any information can be displayed. The device is connected to the local network via WLAN, and can tap into local sources or sources connected via the Internet, which can then be displayed on the LED matrix display, such as audio sources that are currently played (zone, artist, album, title), weather, any RSS feeds, and time. The whole thing can be controlled comfortably via an app that runs on all important platforms (iPhone, iPad, Android, Macos, Windows, Linux).  

 

The RoonMatrix is ​​an LED display, which is driven by a Raspberry Zero 2W.


This is essentially a CPU board with a quad-core 64-bit ARM Cortex-A53 CPU, which is clocked with 1GHz and has 512 MB LPDDR2 SDRAM.
The board can communicate wirelessly via a 2.4GHz 802.11 B/G/N Wireless LAN and Bluetooth 4.2 incl. Bluetooth low-energy (BLE) with the outside world.
There is also an HDMI port for connecting a display, which is not used in this project.
The operating system including the control software can be written on a micro SD card and pushed into the corresponding micro SD slot of the board.
The board also has a versatile 40pin I/O port. This is used in this project to connect an LED matrix and a board with control buttons. These two additional components are used to display a wide variety of things on the device and to be able to control the process. The Micro-B USB port is also practical. For example, a USB Bluetooth audio adapter can be connected here.
Above all, this board is very compact. It only measures 65 x 30 x 5mm, and can therefore be integrated very well into small devices - as here in the RoonMatrix.

This is what the CPU board looks like:

Raspberry Zero 2W.

 

The LED matrix consists of LED modules, each with 8x8 LEDs, i.e. 8 horizontally arranged LEDs in 8 rows, as well as a control board in which the LED matrix is ​​inserted. These modules are now very cheap. In the standard device, 21 pieces of it are installed in series, which then results in a display resolution of 168x8. In the mini variant there are 9 modules with a total display resolution of 72x8.

Such a module looks like this:

The control board converts the serial data stream of the CPU board into parallel control impulses, which control the LEDs light on or off via parallel output.  
The serial connection reduces the number of connections required by the I/O port of the CPU board to only 3 lines.
Together with the connection to the power supply, you then come to a total of 5 lines, which must be wired from the CPU board to the first module.

Here is a look at the control module, the LED matrix, as well as the 5 -pin strips for connection to the CPU board.:
 

Now you may ask: What does the module have two for?
Well, several modules can be connected to each other in series, because a single module would be kind of boring.
This means you can create module chains of almost any length.
You are basically free to decide how many of the modules you actually want to connect in series. The number can be freely configured in the appropriate software.

The finished display is basically able to show texts of any length on the display. The texts are pushed through horizontally (scrolled).
But it is also possible, to automatically split texts, and then to scroll vertically. The brightness can be regulated as well as the speed adjusts.
So that you can control content flexibly, there is a button board. These are 4 buttons that are arranged in the cross, as well as a button in the middle. The same is known from many remote controls for media consumption.

The button is connected to the I/O ports of the CPU board via a 5 -pin flat ribbon cable:

 

The finished LED matrix display then looks like this:

Detailed view with the buttons:

One more question:  Why is the thing called RoonMatrix?

Well, the suitable software makes it possible to display different things on the LED matrix. And a central feature of this is the support for the perhaps best music control software at the moment: Roon.
RoonMatrix allows the control of what can be heard on the various devices, which are connected via the Roon Server.
This can be Bluetooth headphones, digital amplifiers, or streamers who are ROON-READY, or other output devices of a Mac or PC running the Roon Client software.
The button control allows to jump to the next music title, or jump back in an album to the title before what is currently played, to stop the stream, or to start again.
The control whether you want to play titles in random order or not is also possible via the button cross (Shuffle Mode).

But of course it is not only possible to control the channels.
The matrix display shows the information for all currently played titles: the Roon Zone, Artist, Album, and the Title.

But there is more: In addition to Roon, Apple Music and Spotify is also supported, so that the titles played over there can also be displayed. These can also be controlled via the button cross. But this is not possible out-of-the box, some software in the form of a local web server is required. You can find more information about this here.

The other features (current status of the software):
- Display the weather data for a place.
- any RSS feeds
- Date and time

Which details are to be displayed in which way can be configured in a file using a terminal connection (SSH) via WIFI to the CPU board.

The configuration is much more comfortable with a suitable app, which is available for Apple (Macos, iOS), Android, as well as Windows and Linux (arm and Intel).
The app offers the following advantages:
- Complete configuration via the app.
- Control of the audio streams via a virtual button field.
- Enter any text and display it on the matrix display.
- Live control over scrolling speed and contrast of the display.
- The display of the data as a text scroll bar.
- Monitoring of the current RoonMatrix variables.
- RoonMatrix Log of the last hour(s).

Here are a few screenshots:

 

 

 

 

Log in to comment
Stephan Wilhelm replied the topic:
7 months 2 weeks ago
Das ist ein Test