Skip to content

Multi Panel > 3 x P10(16x32) #32

Description

@CTWF

I use RGB matrix led panel from China with specifications:

  • Port: hub 75
  • Scan: 1/8
    Hardware : Nodemcu ESP8266 Lolin
    The result is normal for multi panel = 2. the rest (panel_width> 2) the result is the text / pixel shifts approximately 2 pixels for each color.

the code that I use:

#include <PxMatrix.h>
#include <Ticker.h>

#define P_LAT D0  //D0
#define P_A D1     //D1
#define P_B D2     //D2
#define P_C D8    //D8
#define P_OE D4    //D4

#define PxMATRIX_MAX_WIDTH 96
#define PxMATRIX_MAX_HEIGHT 16
#define panel_width  3

PxMATRIX display(96, 16, P_LAT, P_OE, P_A, P_B, P_C);

//#define double_buffer 0

uint16_t myRED = display.color565(255, 0, 0);
uint16_t myGREEN = display.color565(0, 255, 0);
uint16_t myBLUE = display.color565(0, 0, 255);
uint16_t myWHITE = display.color565(255, 255, 255);
uint16_t myYELLOW = display.color565(255, 255, 0);
uint16_t myCYAN = display.color565(0, 255, 255);
uint16_t myMAGENTA = display.color565(255, 0, 255);
uint16_t myBLACK = display.color565(0, 0, 0);


uint16_t myCOLORS[8] = {myRED, myGREEN, myBLUE, myWHITE, myYELLOW, myCYAN, myMAGENTA, myBLACK  }; 
Ticker display_ticker;

void display_updater() {
  display.display(70);
}

void setup() {
  Serial.begin(9600);
  display.begin(8);
  display.setPanelsWidth(panel_width);
  display_ticker.attach(0.002, display_updater);
  display.setFastUpdate(true);
  display.clearDisplay();
  display.setTextWrap(false);
  display.fillScreen(myBLACK);
}
void loop() {
  for (byte x = 0; x < 8; ++x) {
    display.setTextColor(myCOLORS[x], myBLACK);
    display.setFont();
    display.setCursor(0, 0);
    display.setTextSize(1);
    display.print("3 x P10 RGB");
    delay(1000);
  }
  yield();
}

image :
3xp10rgb

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions