I apologise but I really dont know where to start with these displays.. this ISNT an adafruit display, but a HUB75 AliExpress model (im not made of money..) which should be to all intents and purposes compatible. However, I am getting a weird ghosting on the display and I am not sure where to start debugging this..
I have attached a picture of the display. The code shown below is set for a single pixel to be turned on and yet i have two lit brightly on the display and 1 dimly (but definitely lit, maybe not clear on camera..).
I have played around with different pins to see if that fixes (no luck there).
I have noted on multiple pages on adafruit that the pins are recommended/must be on the same port, but i have no idea how to tell if its the same port on the ESP32 as its literally "GPIO25" etc.
I have checked the wiring, but am definitely going to re-check it.. I also have a spare board I havent checked yet (to rule out hardware issues) but it seems confusing to me.
See the additional "Image(5).png", where i spotted the issue first trying to draw just a single rectangle!
Any suggestions and debugging ideas are very much welcomed and needed!
Code: Select all
#include <Arduino.h>
#include <SPI.h>
#include <Wire.h>
#include <Adafruit_Protomatter.h>
// R1,G1,B1,R2,G2,B2
uint8_t rgbPins[] = {23,22,21,18,19,5};
// A, B, C, D
uint8_t addrPins[] = {16,4,0,2};
uint8_t clockPin = 25;
uint8_t latchPin = 26;
uint8_t oePin = 15;
Adafruit_Protomatter matrix(
64, 4, 1, rgbPins, 4, addrPins, clockPin, latchPin, oePin, false);
void print(void);
void setup(void) {
Serial.begin(9600);
// Initialize matrix...
ProtomatterStatus status = matrix.begin();
Serial.print("Protomatter begin() status: ");
Serial.println((int)status);
if(status != PROTOMATTER_OK) {
Serial.print("Protomatter begin() not happy");
for(;;);
}
print();
}
void loop(void) {
Serial.print("Refresh FPS = ~");
Serial.println(matrix.getFrameCount());
delay(1000);
}
void print (void){
matrix.drawPixel(1,1,matrix.color565(0, 255, 0));
matrix.show();
delay(1000);
}