ESP8622 and MAX7219 8x8 LED Right side Column Always stays on

Hey guys, new here. Its my first time setting up an LCD matrix. Im trying to display a simple letter or symbol to the LEDs. My code seems to work fine, ill post the article im following below. My main issue is that along with the Letter / symbol i have a single column that stays on all the time while playing / displaying the text. I’m wondering if maybe the part i have here is faulty or I’m doing something wrong. I have followed the guide and realized there was a mistake in the write up with the gpio pins so i adjusted it. The board displays the text but the right side column remains. I ordered this part pre-built. so maybe i just need a replacement ? Thanks much

/*
* Play with DotMarix using NodeMCU
* Created by TheCircuit
*/

#include <LedControl.h>

int DIN = 16; // D0
int CS =  5;  // D1
int CLK = 4;  // D2


LedControl lc=LedControl(DIN,CLK,CS,0);

void setup(){
 lc.shutdown(0,false);       //The MAX72XX is in power-saving mode on startup
 lc.setIntensity(0,1);      // Set the brightness to maximum value
 lc.clearDisplay(0);         // and clear the display
}

void loop(){ 

    byte a[8] = {0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xFF,0xFF}; // L
    byte b[8] = {0xFF,0xFF,0x18,0x18,0x18,0x18,0xFF,0xFF}; // I
    byte c[8] = {0x7F,0xFF,0xC0,0xDF,0xDF,0xC3,0x7F,0x3F}; // G
    byte d[8] = {0xC3,0xC3,0xC3,0xFF,0xFF,0xC3,0xC3,0xC3}; // H
    byte e[8] = {0xFF,0xFF,0x18,0x18,0x18,0x18,0x18,0x18}; // T
    
    byte f[8] = {0xC3,0xC3,0xC3,0xFF,0xFF,0xC3,0xC3,0xC3}; // H
    byte g[8] = {0x3C,0x7E,0xC3,0xC3,0xC3,0xC3,0x7E,0x3C}; // O
    byte h[8] = {0xC3,0xC3,0xC3,0xC3,0xC3,0xC3,0xFF,0xFF}; // U
    byte i[8] = {0x7F,0xFE,0xC0,0xFE,0x7F,0x03,0x7F,0xFE}; // S
    byte j[8] = {0xFF,0xFF,0xC0,0xF8,0xF8,0xC0,0xFF,0xFF}; // E

    printByte(a);
    delay(1000);

    printByte(b);
    delay(1000);

    printByte(c);
    delay(1000);

    printByte(d);
    delay(1000);

    printByte(e);
    delay(1000);

    printByte(f);
    delay(1000);

    printByte(g);
    delay(1000);

    printByte(h);
    delay(1000);


    printByte(i);
    delay(1000);

    printByte(j);
    delay(1000);
}
void printByte(byte character [])
{
  int i = 0;
  for(i=0;i<8;i++)
  {
    lc.setRow(0,i,character[i]);
  }
}

for the MAX7219 with 8x8 Matrix I recommend to use the MD_MAX72xx library.

A first start how to print text will be the example

MD_MAX72xx_PrintText

Just get the #define HARDWARE_TYPE right.

I am hoping you actually have an ESP8266, not an ESP8622. :roll_eyes:

That “instructable” shows in a diagram, the matrix Vcc connected to 3.3 V which is of course, wrong. The text refers instead to “Vin” which is (sort of) appropriate if the NodeMCU is powered through the USB jack.

So we gather that as in the “instructable”, you have a single one of the older “generic” modules. If you intend to use more modules, you really need to use the better designed “FC-16” modules which come conveniently with four modules joined as one unit.

Now please confirm that it is indeed the single right-hand-side column, is it always the same one, is it brighter than the other LEDs and does it only appear when you animate something or actually display text?

How about a picture or two - taken in daylight shade or a bright room so we can see the problem, perfectly focused and no less than four Megapixels. :astonished: