diff --git a/docs/README.md b/docs/README.md index 4ee3d7b..7521e78 100644 --- a/docs/README.md +++ b/docs/README.md @@ -53,3 +53,5 @@ The LILYGO T-Relay-S3 6-way board has been ordered as a future Cargo ESP candida Current development remains on the 2-channel relay board while the API and docs are prepared for output-count-agnostic operation. - `api-v1-audit.md` - Audit of legacy API paths vs `/api/v1` namespace. + +- `waveshare-5b-bringup-checklist.md` - Bench bring-up checklist for the Waveshare ESP32-S3 Touch LCD 5B dashboard. diff --git a/docs/dashboard-esp32s3.md b/docs/dashboard-esp32s3.md index 0eb2990..5a13c83 100644 --- a/docs/dashboard-esp32s3.md +++ b/docs/dashboard-esp32s3.md @@ -203,3 +203,17 @@ For v1, the dashboard should consume: - Alarm/fault state The dashboard may request output changes through the Cargo ESP API, but the Cargo ESP remains the source of truth. + +## Waveshare 5B Bring-Up + +Use `docs/waveshare-5b-bringup-checklist.md` when the Waveshare ESP32-S3 Touch LCD 5B arrives. + +First priority is standalone validation: + +- USB/serial detection +- Display output +- Touch input +- Correct 1024x600 target +- Basic LVGL/demo functionality + +Second priority is Cargo ESP API integration over WiFi using `/api/v1`. diff --git a/docs/project-state.md b/docs/project-state.md index 0df3a98..7da324e 100644 --- a/docs/project-state.md +++ b/docs/project-state.md @@ -277,3 +277,9 @@ Future planned profile: lilygo_t_relay_s3_6ch_wupp Current 2-channel testing should continue until the LilyGO board arrives and is bench tested. + +## Waveshare 5B Bring-Up Pending + +The Waveshare ESP32-S3 Touch LCD 5B is expected next. + +Next dashboard work should follow `docs/waveshare-5b-bringup-checklist.md` and start with standalone display/touch validation before any Cargo ESP or vehicle integration. diff --git a/docs/waveshare-5b-bringup-checklist.md b/docs/waveshare-5b-bringup-checklist.md new file mode 100644 index 0000000..4489d2b --- /dev/null +++ b/docs/waveshare-5b-bringup-checklist.md @@ -0,0 +1,87 @@ +# Waveshare ESP32-S3 Touch LCD 5B Bring-Up Checklist + +Use this checklist when the Waveshare ESP32-S3 Touch LCD 5B arrives. + +## Hardware Target + +Selected dashboard hardware: + +- Waveshare ESP32-S3 Touch LCD 5B +- 5-inch touchscreen +- 1024x600 display +- ESP32-S3 +- USB-C +- Capacitive touch +- Integrated CAN transceiver available for future vehicle work + +## Bring-Up Goal + +Confirm the display works as a standalone dashboard platform before integrating it with the Cargo ESP. + +Do not connect it to vehicle CAN, WUPP, Cargo ESP wiring, or external sensors during first bring-up. + +## First Bench Test + +- [ ] Inspect board for shipping damage +- [ ] Confirm exact board variant is 5B / 1024x600 +- [ ] Connect by USB-C only +- [ ] Confirm Mac detects the serial/USB device +- [ ] Flash or run a known-good Waveshare demo first +- [ ] Confirm display backlight turns on +- [ ] Confirm 1024x600 display output +- [ ] Confirm touch input works +- [ ] Confirm reset button works +- [ ] Confirm bootloader mode works if needed + +Bootloader reminder: + +- Hold BOOT +- Connect USB-C +- Release BOOT +- Flash firmware +- Press RESET after flashing + +## Arduino Settings To Verify + +When using Arduino examples, verify settings match the 5B hardware: + +- Flash: 16MB +- PSRAM: 8MB OPI / enabled +- Board package supports ESP32-S3 +- Correct USB/serial port selected + +## ESP-IDF / LVGL Notes + +The 5B is large enough that UI performance matters. + +Early dashboard work should favor: + +- Simple LVGL screens +- Large readable labels +- Low redraw areas +- Static layout before animation +- API polling before complex live graphs + +## First Project-Specific Test + +Before building the full dashboard, create a simple local screen that shows: + +- Dashboard boot status +- WiFi status placeholder +- Cargo API base: `/api/v1` +- Hardware: Waveshare 5B 1024x600 +- Touch test button + +## First Cargo ESP Integration Test + +After standalone display and touch are confirmed: + +- [ ] Connect dashboard to Cargo ESP WiFi AP +- [ ] Request `/api/v1/status` +- [ ] Request `/api/v1/config` +- [ ] Display hardware profile +- [ ] Display output count +- [ ] Display relay/output list dynamically +- [ ] Display DS18B20 temperature telemetry from Cargo ESP API + +The dashboard should consume Cargo ESP data. It should not directly own cargo/fridge DS18B20 sensors or relay authority. diff --git a/firmware/esp32-s3-dashboard/README.md b/firmware/esp32-s3-dashboard/README.md index 9146710..a175979 100644 --- a/firmware/esp32-s3-dashboard/README.md +++ b/firmware/esp32-s3-dashboard/README.md @@ -62,3 +62,20 @@ Display details: - Integrated CAN transceiver available for future vehicle integration This is the current active dashboard target. The archived Pico dashboard is not active firmware. + +## Bring-Up Plan + +Initial Waveshare ESP32-S3 Touch LCD 5B work should start with standalone bench testing. + +Bring-up order: + +1. Confirm USB/serial detection. +2. Flash a known-good Waveshare demo. +3. Confirm 1024x600 display output. +4. Confirm capacitive touch input. +5. Build a minimal project dashboard boot screen. +6. Connect to Cargo ESP WiFi AP. +7. Read `/api/v1/status` and `/api/v1/config`. +8. Render outputs dynamically from the Cargo ESP API. + +Do not start with CAN, OBD-II, tilt sensors, or vehicle wiring.