ArduinoMatrixScroller is a lightweight Arduino library developed to display smooth, readable scrolling text on the built-in 12×8 LED matrix of the Arduino UNO R4 WiFi and UNO R4 Minima.
The Arduino UNO R4 includes native support for driving the LED matrix, but practical features such as scrolling text, character rendering, and correct orientation handling are left to the developer. Implementing these repeatedly across projects leads to duplicated low-level code, timing issues, and display mirroring problems.
This library was created to solve that gap with a focused and reusable solution.
What the library provides
ArduinoMatrixScroller abstracts the LED matrix handling into a simple API with only three methods:
begin()to initialize the displaysetText()to define t…
ArduinoMatrixScroller is a lightweight Arduino library developed to display smooth, readable scrolling text on the built-in 12×8 LED matrix of the Arduino UNO R4 WiFi and UNO R4 Minima.
The Arduino UNO R4 includes native support for driving the LED matrix, but practical features such as scrolling text, character rendering, and correct orientation handling are left to the developer. Implementing these repeatedly across projects leads to duplicated low-level code, timing issues, and display mirroring problems.
This library was created to solve that gap with a focused and reusable solution.
What the library provides
ArduinoMatrixScroller abstracts the LED matrix handling into a simple API with only three methods:
begin()to initialize the displaysetText()to define the scrolling messageupdate()to drive the scrolling animation
The library supports ASCII characters (A–Z, a–z, 0–9, and spaces) and ensures the text is displayed with the correct orientation, avoiding the common mirroring issue seen in raw implementations.
How it works
Internally, the library uses a custom 5×7 pixel font. Each character is rendered column by column and shifted horizontally across the 12-column display buffer. A fixed scroll delay of 80 ms per frame is used to achieve smooth and readable motion.
All frame updates, spacing between characters, and orientation mapping are handled internally, allowing the user to focus only on the text content.
Real-time text updates
In addition to static messages, the library supports updating the scrolling text at runtime using the Serial Monitor. This makes it useful for debugging output, status messages, and interactive demos without recompiling the sketch.
Design goals
- Minimal API surface
- Predictable timing and smooth scrolling
- Low memory usage
- Correct LED orientation by default
- Easy integration with existing UNO R4 projects
The intent was not to build a full animation engine, but a reliable utility for a very common requirement on the UNO R4 platform.
Availability
The full source code, examples, and documentation are available on GitHub and can be installed directly into the Arduino IDE as a standard library.