Sorry for the late reply but I had to consult with my colleagues that ran this panel under rpi-rgb-led-matrix. It seems like the basic settings are pretty standard (16 rows, 32 cols and led-inverse enabled I think), but the most involved part was using a custom pixel mapper that looks like this:
void MapSinglePanel(int x, int y, int *matrix_x, int *matrix_y) const {
if (y / 4 == 0) {
*matrix_y = y % 4;
if (x / 8 == 0) {
*matrix_x = x + 24;
} else if (x / 8 == 1) {
*matrix_x = x + 48;
} else if (x / 8 == 2) {
*matrix_x = x + 72;
} else if (x / 8 == 3) {
*matrix_x = x + 96;
}
} else if (y / 4 == 1) {
*matrix_y = y % 4;
if (x / 8 == 0) {
*matrix_x = x + 16;
} else if (x / 8 == 1) {
*matrix_x = x + 40;
} else if (x / 8 == 2) {
*matrix_x = x + 64;
} else if (x / 8 == 3) {
*matrix_x = x + 88;
}
} else if (y / 4 == 2) {
*matrix_y = y % 4;
if (x / 8 == 0) {
*matrix_x = x + 8;
} else if (x / 8 == 1) {
*matrix_x = x + 32;
} else if (x / 8 == 2) {
*matrix_x = x + 56;
} else if (x / 8 == 3) {
*matrix_x = x + 80;
}
} else if (y / 4 == 3) {
*matrix_y = y % 4;
if (x / 8 == 0) {
*matrix_x = x;
} else if (x / 8 == 1) {
*matrix_x = x + 24;
} else if (x / 8 == 2) {
*matrix_x = x + 48;
} else if (x / 8 == 3) {
*matrix_x = x + 72;
}
}
}
It is a custom implementation taken from this GitHub issue of the rpi-rgb-led-matrix project, as usually, like the name implies, this library doesn’t drive single-color panels - Meta bug: Support HUB08/HUB12 · Issue #531 · hzeller/rpi-rgb-led-matrix · GitHub
But it works perfectly. Do you know of any way to port this kind of mapper into pixelmatix?
P.S.: regarding wiring and boards, multiple combinations were tried. Plus, the same ESP32 drives a HUB75 RGB without issues.