Repository navigation
docs(knowledge): ESP32-S3 1.8″ AMOLED CO5300 / rounded-corner notes - #105
Conversation
Capture field lessons from first metal on the Waveshare/Amazon 1.8″ QSPI AMOLED class so the next agent does not re-discover black panels, PSRAM aborts, or clipped banner labels on rounded glass.
|
Bugbot is not enabled for your account, so this pull request was not reviewed. Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 4fb44f401b
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| | Revision signal | How to detect | Driver / notes | | ||
| |-----------------|---------------|----------------| | ||
| | **V2** (newer) | I2C probe **0x15** (CST816) responds | Use **CO5300** + optional `x_gap = 0x10` | | ||
| | **Original** | 0x15 absent; touch often **FT3168** at other addr | Still **CO5300** init sequence from Waveshare colorbar in practice | |
There was a problem hiding this comment.
Keep the original panel revision on SH8601
On original Waveshare units identified here by the absent 0x15 response and FT3168 touch controller, the panel revision uses SH8601; CO5300 applies to the newer V2/CST816 hardware. Directing the original branch to the CO5300 sequence can leave those panels black, while the anti-pattern below discourages the correct driver fallback. Split driver selection by hardware revision rather than applying the current V2 demo to both.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Resolved in 0c86103.
Original revision (0x15 absent / FT3168) now selects the SH8601 path. V2 (CST816 at 0x15) keeps CO5300. Controllers table, init reference, field lesson, and anti-patterns all split by hardware revision so original units are not steered onto the V2 colorbar sequence.
|
|
||
| ## Units hard key | ||
|
|
||
| Module **BOOT** is often **GPIO0** (active low, internal pull-up). Map product “right key / LAMBDA|AFR toggle” to that for host demos when physical product keys are not yet wired in firmware. |
There was a problem hiding this comment.
Remove product-specific controls from the board guide
This public board-capability topic embeds one GCU's vertical behavior—the Aether name, LAMBDA/AFR key mapping, and mixture/RPM/TPS acceptance UI—rather than reusable AMOLED or host facts. That exposes product-domain details in the Silico spine and encourages unrelated GCUs to copy an application-specific control mapping; keep those details in the originating GCU and leave only the generic GPIO0/button capability here.
AGENTS.md reference: AGENTS.md:L86-L88
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Resolved in 0c86103.
Removed product-domain material from this board topic: Aether name, LAMBDA/AFR key mapping, and mixture/RPM/TPS acceptance UI. BOOT/GPIO0 is documented only as a generic user button with product meaning left to the GCU. “What good looks like” is board-generic (non-black product face, upright landscape present, banner inset, identity match).
|
|
||
| ### Rotation | ||
|
|
||
| If the face is **upside-down**, flip the blit (CW vs CCW), do not re-layout the product UI. |
There was a problem hiding this comment.
Use the canonical “product face” term throughout
This agent-facing guide repeatedly shortens the defined term to bare “face” (GCU face, the face, landscape face, and black face), so agents following it will propagate the expressly forbidden ambiguous nickname into operator instructions. Replace these occurrences with the canonical “product face” phrase.
AGENTS.md reference: AGENTS.md:L219-L223
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Resolved in 0c86103.
Replaced bare “face” / “GCU face” / “landscape face” / “black face” with the canonical product face throughout. FACE_W / FACE_H left as code identifiers for the rotation formulas.
…own) Document operator-confirmed CCW 90° present formulas for ESP32-S3 Touch AMOLED 1.8 class. CW left the Aether LVGL face upside-down; agents must flip present only, not re-layout UI. Closes #107
Follow-up on this branch (rotation field lesson)Latest commit on this head documents CCW 90° as the upright default for this board class after Aether metal reported upside-down with CW (custom face + LVGL Closes #107 when this PR merges (commit message already has Closes #107). Operator-confirmed map
Agents: if upside-down, flip CW↔CCW in present only — do not re-layout UI. |
|
@copilot resolve the merge conflicts on this branch. |
Split SH8601 vs CO5300 by revision, drop product-domain controls from the board guide, and use the canonical product face term.
Summary
Knowledge for ESP32-S3 Touch AMOLED 1.8 (CO5300, corners, boot, PSRAM) plus operator-confirmed upright rotation (CCW default; CW upside-down on Aether).
Closes #107
Test plan