Dieselbe P4-Firmware läuft jetzt zusätzlich auf einem Waveshare ESP32-P4-Pico mit dem Waveshare 7inch DSI LCD (H) (1280x720). Auswahl über JC_PANEL_TYPE in config.h (neu: WS_PANEL_7H, ab jetzt Vorgabe); die beiden JC-Panels bleiben unverändert.
Bringup ohne Hersteller-Panel-Treiber: DSI-Bus, Kommandokanal und DPI-Panel direkt angelegt (PLL_F20M, 2 Lanes zu 1250 Mbit/s, 80 MHz DPI, Austastlücken 64/64/64, RGB888).
Panel-Freigabe und Helligkeit über die Bridge auf I2C 0x45; Hintergrundbeleuchtung erst nach dem Start der DSI-Ausgabe.
lv_conf.h leitet LV_COLOR_DEPTH aus JC_PANEL_TYPE ab (24 Bit Waveshare / 16 Bit JC), abgesichert per static_assert.
Touch GT9271 (I2C 0x14) über den GT911-Treiber, Achsentausch im process_coordinates-Hook.
README und Changelog ergänzt.
Alle drei Panel-Varianten wurden mit arduino-cli übersetzt.
Offen: Die UART-Pins zum S3 stehen für das Waveshare-Board noch auf den JC-Werten (GPIO33/31) und müssen nach dem Header-Aufdruck gesetzt werden.
Dieselbe P4-Firmware läuft jetzt zusätzlich auf einem Waveshare ESP32-P4-Pico mit dem Waveshare 7inch DSI LCD (H) (1280x720). Auswahl über `JC_PANEL_TYPE` in `config.h` (neu: `WS_PANEL_7H`, ab jetzt Vorgabe); die beiden JC-Panels bleiben unverändert.
- Bringup ohne Hersteller-Panel-Treiber: DSI-Bus, Kommandokanal und DPI-Panel direkt angelegt (PLL_F20M, 2 Lanes zu 1250 Mbit/s, 80 MHz DPI, Austastlücken 64/64/64, RGB888).
- Panel-Freigabe und Helligkeit über die Bridge auf I2C 0x45; Hintergrundbeleuchtung erst nach dem Start der DSI-Ausgabe.
- `lv_conf.h` leitet `LV_COLOR_DEPTH` aus `JC_PANEL_TYPE` ab (24 Bit Waveshare / 16 Bit JC), abgesichert per `static_assert`.
- Touch GT9271 (I2C 0x14) über den GT911-Treiber, Achsentausch im `process_coordinates`-Hook.
- README und Changelog ergänzt.
Alle drei Panel-Varianten wurden mit arduino-cli übersetzt.
Offen: Die UART-Pins zum S3 stehen für das Waveshare-Board noch auf den JC-Werten (GPIO33/31) und müssen nach dem Header-Aufdruck gesetzt werden.
Dieselbe P4-Firmware läuft jetzt zusätzlich auf einem Waveshare ESP32-P4-Pico
mit dem Waveshare 7inch DSI LCD (H) (1280x720). Auswahl über JC_PANEL_TYPE in
config.h (neu: WS_PANEL_7H, ab jetzt Vorgabe); JC_PANEL_43 und JC_PANEL_70
bleiben unverändert.
- board_bringup.c: DSI-Bus, DBI-Kommandokanal und DPI-Panel werden ohne
Hersteller-Panel-Treiber direkt angelegt (PLL_F20M, 2 Lanes zu 1250 Mbit/s,
80 MHz DPI, Austastlücken 64/64/64, RGB888). Panel-Freigabe und Helligkeit
über die Bridge auf I2C 0x45; Licht erst nach dem Start der DSI-Ausgabe.
- lv_conf.h leitet LV_COLOR_DEPTH aus JC_PANEL_TYPE ab (24 Bit für das
Waveshare-Panel, 16 Bit für die JC-Panels) und liest dafür config.h.
display_hal.cpp sichert das mit static_assert ab.
- Touch GT9271 (I2C 0x14) über den GT911-Treiber; Achsentausch und Begrenzung
auf die Bildfläche im process_coordinates-Hook.
- pins_config.h: Auflösung, DSI-Zeitbasis und Touch-Umrechnung als WS7_*-Werte.
- README und Changelog ergänzt.
Die UART-Pins zum S3 stehen für das Waveshare-Board noch auf den JC-Werten
(GPIO33/31) und müssen nach dem Header-Aufdruck gesetzt werden.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DxAvqVnrY6YSoGFrNGeRTi
Der 40-polige Header des ESP32-P4-Pico hat eine andere Belegung als die
Expansion-IO der JC-Panels. Für WS_PANEL_7H gilt jetzt TX = GPIO17,
RX = GPIO18; die JC-Panels bleiben bei GPIO33/GPIO31.
README und Changelog entsprechend ergänzt.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018QoLDQeUh1dCQz7yYZVb4Y
thomas
merged commit 69d35e9a28 into main2026-09-01 03:05:50 +02:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Dieselbe P4-Firmware läuft jetzt zusätzlich auf einem Waveshare ESP32-P4-Pico mit dem Waveshare 7inch DSI LCD (H) (1280x720). Auswahl über
JC_PANEL_TYPEinconfig.h(neu:WS_PANEL_7H, ab jetzt Vorgabe); die beiden JC-Panels bleiben unverändert.lv_conf.hleitetLV_COLOR_DEPTHausJC_PANEL_TYPEab (24 Bit Waveshare / 16 Bit JC), abgesichert perstatic_assert.process_coordinates-Hook.Alle drei Panel-Varianten wurden mit arduino-cli übersetzt.
Offen: Die UART-Pins zum S3 stehen für das Waveshare-Board noch auf den JC-Werten (GPIO33/31) und müssen nach dem Header-Aufdruck gesetzt werden.