From d66720ade818e8a0b66731b2067be580328e9c2b Mon Sep 17 00:00:00 2001
From: Frank <91616163+softhack007@users.noreply.github.com>
Date: Mon, 14 Oct 2024 13:19:24 +0200
Subject: [PATCH] HUB75 128x64 (untested)
128x64 panels are normally "64x64 with chain length 2". But some newer ones appear to be native "128x64"
---
wled00/bus_manager.cpp | 14 ++++++++++++++
wled00/data/settings_leds.htm | 2 ++
2 files changed, 16 insertions(+)
diff --git a/wled00/bus_manager.cpp b/wled00/bus_manager.cpp
index baf73cfe..79000b0f 100644
--- a/wled00/bus_manager.cpp
+++ b/wled00/bus_manager.cpp
@@ -584,6 +584,10 @@ BusHub75Matrix::BusHub75Matrix(BusConfig &bc) : Bus(bc.type, bc.start, bc.autoWh
mxconfig.mx_width = 64;
mxconfig.mx_height = 64;
break;
+ case 104: // untested
+ mxconfig.mx_width = 128;
+ mxconfig.mx_height = 64;
+ break;
case 105:
mxconfig.mx_width = 32 * 2;
mxconfig.mx_height = 32 / 2;
@@ -596,6 +600,10 @@ BusHub75Matrix::BusHub75Matrix(BusConfig &bc) : Bus(bc.type, bc.start, bc.autoWh
mxconfig.mx_width = 64 * 2;
mxconfig.mx_height = 64 / 2;
break;
+ case 108: // untested
+ mxconfig.mx_width = 128 * 2;
+ mxconfig.mx_height = 64 / 2;
+ break;
}
#if defined(CONFIG_IDF_TARGET_ESP32) || defined(CONFIG_IDF_TARGET_ESP32S2)// classic esp32, or esp32-s2: reduce bitdepth for large panels
@@ -899,6 +907,12 @@ BusHub75Matrix::BusHub75Matrix(BusConfig &bc) : Bus(bc.type, bc.start, bc.autoWh
fourScanPanel->setPhysicalPanelScanRate(FOUR_SCAN_64PX_HIGH);
fourScanPanel->setRotation(0);
break;
+ case 108: // untested
+ USER_PRINTLN("MatrixPanel_I2S_DMA 128x64 FOUR_SCAN_64PX_HIGH");
+ if (!fourScanPanel) fourScanPanel = new VirtualMatrixPanel((*display), 1, 1, 128, 64);
+ fourScanPanel->setPhysicalPanelScanRate(FOUR_SCAN_64PX_HIGH);
+ fourScanPanel->setRotation(0);
+ break;
}
if (_valid) {
diff --git a/wled00/data/settings_leds.htm b/wled00/data/settings_leds.htm
index 1fd0e4ba..ef3671b5 100644
--- a/wled00/data/settings_leds.htm
+++ b/wled00/data/settings_leds.htm
@@ -383,9 +383,11 @@ ${i+1}:
+
+