Christopher Mendez Martinez
Published © GPL3+

DIY SMART LED MATRIX (ESP8266 + WS2812 / NeoPixels )

This is a tutorial that teach you how to show text on a WS2812 LEDs based LED Matrix.

IntermediateFull instructions provided3 hours5,222
DIY SMART LED MATRIX (ESP8266 + WS2812 / NeoPixels )

Things used in this project

Hardware components

ESP8266 ESP-01
Espressif ESP8266 ESP-01
You can buy it here: https://amzn.to/32DlV6r
×1
WS2812 Addressable LED Strip
Digilent WS2812 Addressable LED Strip
×1
DC POWER JACK 2.1MM BARREL-TYPE PCB MOUNT
TaydaElectronics DC POWER JACK 2.1MM BARREL-TYPE PCB MOUNT
×1
JLCPCB Customized PCB
JLCPCB Customized PCB
×1

Software apps and online services

Arduino IDE
Arduino IDE
JLCPCB EasyEDA

Hand tools and fabrication machines

Soldering iron (generic)
Soldering iron (generic)

Story

Read more

Custom parts and enclosures

Grid.stl

Grid2.stl

Schematics

Schematics

Code

MCM-LED-MATRIX_ep1.ino

Processing
Code that let you show text on the Matrix
//Codigo de MCM-LED-MATRIX ep.1//
//Autor: Christopher Mendez
//Tutorial: https://youtu.be/yb7uQbX_M30
//
/////////////////LIBRERAS PARA LOS LED'S/////////////////////////
#include <Adafruit_NeoMatrix.h>
#include <gamma.h>
#include <Adafruit_GFX.h>
#include <gfxfont.h>
#include <Adafruit_NeoPixel.h>
#include <Fonts/TomThumb.h>       //Fuentes de 5 pixels de alto.

#define PIN 0

String texto = "SUSCRIBETE A MCMCHRIS";     //Aqu pones el texto que quieres mostrar
int largo = texto.length();

// Declaracion de la Matriz/ 20x5, Comenzando en la Esquina Superior Izquierda en Zig Zag:

Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(20, 5, PIN,
  NEO_MATRIX_TOP     + NEO_MATRIX_LEFT +
  NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG,
  NEO_GRB            + NEO_KHZ800);

//Arreglo con los datos de los colores Verde, Rojo y Azul (Modificar al gusto).
const uint16_t colors[] = {
  matrix.Color(0,255,0), matrix.Color(255,0,0), matrix.Color(0,0,255) };

void setup() {
  matrix.begin();
  matrix.setTextWrap(false);
  matrix.setBrightness(80);       // Ajustar brillo de los LEDs (0-255)
  matrix.setFont(&TomThumb);      // Aado el tipo de letra que declar arriba
  matrix.setTextColor(colors[0]); // Inicializo con un color x.
  Serial.begin(115200);

}

int x    = matrix.width();
int pass = 0;

void loop() {
  matrix.fillScreen(0);
  matrix.setCursor(x, 5);
  matrix.print(texto);
  if(--x < -(largo*3+18)) {
    x = matrix.width();
    if(++pass >= 3) pass = 0;
    matrix.setTextColor(colors[pass]);
  }
  matrix.show();
  delay(100);
}

Credits

Christopher Mendez Martinez

Christopher Mendez Martinez

35 projects • 74 followers
Electronic Engineer and Tech YouTuber who loves automation, programming and sharing his knowledge with everyone.

Comments