diff --git a/hardware_test/.pio/build/rp2040_usb/.sconsign314.dblite b/hardware_test/.pio/build/rp2040_usb/.sconsign314.dblite index 835b81c..5919574 100644 Binary files a/hardware_test/.pio/build/rp2040_usb/.sconsign314.dblite and b/hardware_test/.pio/build/rp2040_usb/.sconsign314.dblite differ diff --git a/hardware_test/.pio/build/rp2040_usb/firmware.bin b/hardware_test/.pio/build/rp2040_usb/firmware.bin new file mode 100755 index 0000000..0d7590e Binary files /dev/null and b/hardware_test/.pio/build/rp2040_usb/firmware.bin differ diff --git a/hardware_test/.pio/build/rp2040_usb/firmware.elf b/hardware_test/.pio/build/rp2040_usb/firmware.elf index a9ec1f6..0adc2b6 100755 Binary files a/hardware_test/.pio/build/rp2040_usb/firmware.elf and b/hardware_test/.pio/build/rp2040_usb/firmware.elf differ diff --git a/hardware_test/.pio/build/rp2040_usb/firmware.uf2 b/hardware_test/.pio/build/rp2040_usb/firmware.uf2 index 4aba058..063be0f 100644 Binary files a/hardware_test/.pio/build/rp2040_usb/firmware.uf2 and b/hardware_test/.pio/build/rp2040_usb/firmware.uf2 differ diff --git a/hardware_test/.pio/build/rp2040_usb/src/main.cpp.o b/hardware_test/.pio/build/rp2040_usb/src/main.cpp.o index 170a638..2bfc396 100644 Binary files a/hardware_test/.pio/build/rp2040_usb/src/main.cpp.o and b/hardware_test/.pio/build/rp2040_usb/src/main.cpp.o differ diff --git a/hardware_test/src/main.cpp b/hardware_test/src/main.cpp index 02d6887..b0bbe7a 100644 --- a/hardware_test/src/main.cpp +++ b/hardware_test/src/main.cpp @@ -3,6 +3,7 @@ #include #include +#include #include // --- Buttons (active LOW, internal pull-ups) --- @@ -148,10 +149,10 @@ void setup() { pinMode(pin, OUTPUT); Serial.println(" -> HIGH (lights active-high wiring)"); digitalWrite(pin, HIGH); - delay(600); + delay(50); Serial.println(" -> LOW (lights active-low wiring)"); digitalWrite(pin, LOW); - delay(600); + delay(50); // Release the pin between LEDs so a wrong-polarity LED can't stay lit pinMode(pin, INPUT); @@ -243,10 +244,9 @@ void setup() { {1,0,1,0,0,0,0,0,0}, {0,1,0,0,0,0,0,0,0}, }; - for (int y = 0; y < MATRIX_H; y++) + for (int y = 0; y < 9; y++) for (int x = 0; x < MATRIX_W; x++) - //matrixSetPixel(x, y, chevron[y][x] ? 200 : 0); - matrixSetPixel(x,y,200); + matrixSetPixel(x, y, chevron[y][x] ? 200 : 0); delay(1500); matrix.clear(); @@ -288,7 +288,37 @@ void setup() { matrix.clear(); Serial.println(" [diag] Sweep done."); + Serial.println(" [test] Individual LED test - all pixels"); + for (int y = 0; y < MATRIX_H; y++) { + for (int x = 0; x < MATRIX_W; x++) { + if (matrixPixelIsDead(x, y)) continue; + matrix.clear(); + matrixSetPixel(x, y, 255); + delay(30); + } + } + matrix.clear(); + Serial.println(" Matrix test done."); + + Serial.println("\n[Test] Scrolling text: 'Welcome to Securityfest 2026'"); + matrix.setTextSize(1); + matrix.setTextColor(255); + + const char* scrollText = "Welcome to Securityfest 2026 "; + int textLen = strlen(scrollText); + int charWidth = 6; + int totalWidth = textLen * charWidth; + + for (int scroll = 0; scroll < totalWidth + 16; scroll++) { + matrix.clear(); + matrix.setCursor(16 - scroll, 1); + matrix.print(scrollText); + delay(80); + } + matrix.clear(); + + Serial.println(" Text scroll done."); } // --- Main / SAO I2C bus (on Wire1 / I2C1, GP2 = SDA, GP3 = SCL) ---