Add portal web simulator, SPI bridges, and Pico firmware updates.

Bring the five-panel hex portal online with a browser 3D/schematic preview, Pi SPI backends, and renamed multi-panel Pico UDP firmware.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-07-30 14:54:51 +12:00
parent d5cab2efdf
commit 5094c7bcee
78 changed files with 62251 additions and 832 deletions

View File

@@ -61,6 +61,10 @@ class LedMatrix:
brightness=config0.brightness,
spi_bus=config0.spi_bus,
spi_device=config0.spi_device,
spi_max_speed_hz=config0.spi_max_speed_hz,
wire_order=config0.wire_order,
passthrough=config0.passthrough,
swap_rg=config0.swap_rg,
)
else:
total_rows = sum(rows_per_strip)
@@ -148,6 +152,12 @@ class LedMatrix:
assert self._strips is not None
self._strips.show()
def show_rgb_bytes(self, rgb: bytes) -> None:
"""Push a linear RGB frame (row-major) straight to the strip."""
if self._strip is None:
raise RuntimeError("show_rgb_bytes requires a single-strip matrix")
self._strip.show_rgb_bytes(rgb)
def clear(self) -> None:
if self._strip is not None:
self._strip.clear()