Add OLED and button diagnostics
This commit is contained in:
+32
-1
@@ -100,9 +100,40 @@ The USB-to-UART bridge's DTR/RTS controls serve automatic boot/reset and do not
|
||||
|
||||
Native USB CDC DTR controls the lifetime of the `usb-cdc` broker client but is not forwarded to physical DE-9 DTR. Physical DTR follows the `serial` configuration. CDC RTS is status information only; GPIO15/DE-9 RTS remains UART1 receive flow control when `flow=rts-cts` is enabled.
|
||||
|
||||
## Phase 7A OLED and button wiring
|
||||
|
||||
Phase 7A hardware validation used the following connections for the 128×64 I²C OLED and three local buttons. The selected module acknowledges at 7-bit I²C address `0x3c` (8-bit `0x78` write / `0x79` read) and has separate yellow rows 0–15 and blue rows 16–63, divided by a narrow physical black separator:
|
||||
|
||||
| Device connection | ESP32-S3 connection | Electrical behavior | Purpose |
|
||||
|---|---:|---|---|
|
||||
| OLED `VCC` | `3V3` | 3.3 V power only | OLED power and I²C pull-up rail |
|
||||
| OLED `GND` | `GND` | Common ground | OLED return and I²C reference |
|
||||
| OLED `SDA` | GPIO11 | I²C data | Display data |
|
||||
| OLED `SCL` | GPIO12 | I²C clock | Display clock |
|
||||
| Previous/back button | GPIO10 to `GND` | Active-low input with internal pull-up | Previous item or back |
|
||||
| Select/confirm button | GPIO13 to `GND` | Active-low input with internal pull-up | Select or confirm |
|
||||
| Next button | GPIO14 to `GND` | Active-low input with internal pull-up | Next item |
|
||||
|
||||
```text
|
||||
ESP32-S3-DevKitC-1 N16R8 128×64 I²C OLED
|
||||
──────────────────────── ────────────────
|
||||
3V3 ────────────> VCC
|
||||
GND ────────────> GND
|
||||
GPIO11 / SDA <───────────> SDA
|
||||
GPIO12 / SCL ────────────> SCL
|
||||
|
||||
GPIO10 ───── previous/back button ───── GND
|
||||
GPIO13 ───── select/confirm button ──── GND
|
||||
GPIO14 ───── next button ────────────── GND
|
||||
```
|
||||
|
||||
> **OLED voltage warning:** Power OLED `VCC` from `3V3`, not 5 V. Many OLED modules connect their SDA/SCL pull-up resistors directly to `VCC`; powering such a module from 5 V could expose the ESP32-S3 GPIOs to unsafe I²C levels.
|
||||
|
||||
Before applying power, verify whether the module already includes SDA and SCL pull-ups and where they terminate. Any module-mounted or external I²C pull-ups must go to 3.3 V. If pull-ups are absent, add suitable external pull-ups from SDA and SCL to `3V3`; if they are present, account for their parallel resistance before adding more. The buttons normally need no external pull-ups because firmware enables the ESP32 internal pull-ups.
|
||||
|
||||
## Electrical verification
|
||||
|
||||
See [Electrical tests](electrical_tests.md) for safe loopback wiring, polarity checks, UART flow-control verification, and session-broker loopback testing.
|
||||
See [Electrical tests](electrical_tests.md) for Phase 7A OLED/button bring-up, safe loopback wiring, polarity checks, UART flow-control verification, and session-broker loopback testing.
|
||||
|
||||
## Future hardware profiles
|
||||
|
||||
|
||||
Reference in New Issue
Block a user