Good day to you all. After 3 days of searching I finally found a website to help get me started with this project
Took a sketch from a different sized panel (8x32) and adapted it to work with my setup which is
2 x 16x16 flex led matrix panels and an Elegoo UNO R3. External power source which is more than sufficient for scrolling text.
What I've managed to do is adjust panel size, create a second line of text below the top line which is centered under the top line quite nicely and adjust scrolling speed
What I haven't figured out yet is
A: Can I scroll the second line of text at a different speed than the first line and/or
B: Have the bottom line of text a different color than the top line
Here is where I'm at with the code It does work except for the above mentioned limitations
If someone could point me in the right direction or provide an appropriate link that would be amazing
#include <Adafruit_NeoMatrix.h>
#include <Adafruit_NeoPixel.h>
#define PIN 3
// MATRIX DECLARATION:
// Parameter 1 = width of NeoPixel matrix
// Parameter 2 = height of matrix
// Parameter 3 = pin number
// Parameter 4 = matrix layout flags, add together as needed:
// Parameter 5 = pixel type flags,
// NEO_KHZ800 800 KHz bitstream (most NeoPixel products w/WS2812 LEDs)
Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(32, 16, PIN,
NEO_MATRIX_BOTTOM + NEO_MATRIX_RIGHT +
NEO_MATRIX_COLUMNS + NEO_MATRIX_ZIGZAG,
NEO_GRB + NEO_KHZ800);
const uint16_t colors[] = {
matrix.Color(255, 0, 0), matrix.Color(0, 255, 0), matrix.Color(255, 255, 0),matrix.Color(0, 0, 255), matrix.Color(255, 0, 255), matrix.Color(0, 255, 255), matrix.Color(255, 255, 255)};
void setup() {
matrix.begin();
matrix.setTextWrap(false);
matrix.setBrightness(9);
matrix.setTextColor(colors[0]);
}
int x = matrix.width();
int y = matrix.height();
int pass = 0;
void loop() {
matrix.fillScreen(0); //Turn off all the LEDs
matrix.setCursor(x, 0);
matrix.print(F("WELCOME TO MY WORLD"));
matrix.setCursor(x, 8);
matrix.print(F(" RS - 3D"));
if( --x < -90 ) {
x = matrix.width();
if(++pass >= 8) pass = 0;
matrix.setTextColor(colors[pass]);
}
matrix.show();
delay(25);
}
type or paste code here