Add the Elecrow CrowPanel 7.0" as a third board, and take the packages and the add-on from Gitea (0.2.93)
A board file for the Elecrow CrowPanel 7.0" (DIS08070H, ESP32-S3-WROOM-1-N4R8): 800x480 through mipi_rgb, GT911 on the ESP32-S3's USB pins (elecrow_usb_phy.h frees them, behind a flag only this board sets), the Guition's vertical sizes across a wider page, no rotation. Its 4 MB of flash take the CYD's budget: a partition table of the component's (smart_display: partitions: 4mb_wide_slots, 1,984 KB slots), the icon fonts at 2 bits a pixel and the TLS client only bring the firmware to 1,865,440 bytes, 91.8 % of a slot, with camera images kept. docs/ELECROW.md has the numbers and the trade. The add-on reads a large board's name from the type sensor's value, the editor offers the board under New screen and draws the wide preview, tools/check.sh builds it with the budget, render_topbar and capture_ui take the panel's size. Firmware 0.2.79; the CYD image is unchanged (1,633,760 bytes). This fork builds from gittea.trippedonmy.name/Xandrossian/homeassistant_espscreen: the packages, the fonts, the component and the add-on repository point there instead of GitHub.
This commit is contained in:
@@ -3,11 +3,11 @@
|
||||
The preferred route for new users is docs/EASY_SETUP.md: ESP Screen Manager
|
||||
plus remote ESPHome packages. No token or blueprint needed. Tiles live in the
|
||||
persistent add-on data; Wi-Fi/API/OTA stay in the device's own ESPHome YAML. Read
|
||||
docs/RELEASING.md before publishing updates. Main distributes both boards.
|
||||
docs/RELEASING.md before publishing updates. Main distributes every board.
|
||||
Every push to GitHub is a release: always also bump the add-on version in
|
||||
screen_manager/config.yaml (with a CHANGELOG line), otherwise HA won't see an update.
|
||||
A screen's YAML is packages/core.yaml (shared by every board) plus one file under packages/boards/;
|
||||
packages/<board>.yaml and the two profiles in the root only include them. Read docs/PROFILES.md before
|
||||
packages/<board>.yaml and the profiles in the root only include them. Read docs/PROFILES.md before
|
||||
touching them: a board-dependent number is a `${NAME}` in the board file, board-only code inside a shared
|
||||
lambda is a hook substitution there, and `tools/check_packages.py` (run by tools/check.sh) keeps the boards
|
||||
complete.
|
||||
@@ -26,10 +26,18 @@ docs/GUITION.md. Don't carry over the CYD layout or the XPT2046 calibration.
|
||||
Verify touch with tools/verify_gt911.py and keep the CYD regressions green.
|
||||
Don't configure wallbox relays as part of display support.
|
||||
|
||||
## Elecrow board
|
||||
|
||||
The Elecrow CrowPanel 7.0" (DIS08070H, ESP32-S3-WROOM-1-N4R8) has `packages/boards/elecrow-crowpanel7.yaml`:
|
||||
800×480 through `mipi_rgb`, GT911 on the ESP32-S3's USB pins (`elecrow_usb_phy.h` frees them; no interrupt pin, no
|
||||
PCA9557 writes, `scan: false`), the Guition's vertical sizes across a wider page, no rotation. It has 4 MB of flash: the
|
||||
CYD's budget applies (`tools/check.sh --firmware`), and the board file's partition table, icon fonts at 2 bits a pixel
|
||||
and the notes in docs/ELECROW.md are what keep it inside. Read docs/ELECROW.md before touching it.
|
||||
|
||||
# Working instructions for LLMs and developers
|
||||
|
||||
This project drives two boards: the CYD ESP32-2432S028 with ILI9341 + XPT2046 (320×240,
|
||||
LVGL 90°) and the Guition above. Read README.md, README_EXTENDED.md and docs/ before installing. The owner can
|
||||
This project drives three boards: the CYD ESP32-2432S028 with ILI9341 + XPT2046 (320×240,
|
||||
LVGL 90°), the Guition above and the Elecrow above. Read README.md, README_EXTENDED.md and docs/ before installing. The owner can
|
||||
physically tap; an agent cannot replace that with software coordinates.
|
||||
|
||||
## Installing a new screen
|
||||
@@ -44,7 +52,7 @@ physically tap; an agent cannot replace that with software coordinates.
|
||||
crosshairs. `tools/calibrate.py` with docs/CALIBRATING.md is the USB route for a
|
||||
panel that needs measuring; ask for physical taps per target, and wait for
|
||||
confirmation that the measurement screen is visible. A successful build is not a flash.
|
||||
Guition: GT911 reports pixels; verify with tools/verify_gt911.py, no ADC calibration.
|
||||
Guition and Elecrow: GT911 reports pixels; verify with tools/verify_gt911.py, no ADC calibration.
|
||||
3. Pair with the owner's own Home Assistant through the ESPHome integration.
|
||||
Read real entity IDs and supported attributes; don't make up entities.
|
||||
4. Choose the tiles in ESP Screens. Don't test real device actions without the
|
||||
@@ -83,15 +91,15 @@ and screens for lookups and tests. If that file is missing you are not on his ma
|
||||
and LVGL 90°. A changed orientation also requires a new projection/tests.
|
||||
- Run `tools/check.sh` on code changes (the Python tests, every C++ test, the package check, the icon
|
||||
generator's check, the editor's tests, types and build); on a firmware change also `tools/check.sh --firmware`, which
|
||||
compiles both boards and applies the CYD's flash budget (docs/RELEASING.md step 2). CI runs the
|
||||
compiles every board and applies the flash budget to the 4 MB boards, the CYD and the Elecrow (docs/RELEASING.md step 2). CI runs the
|
||||
same script. Firmware tests and hardware acceptance are different checks.
|
||||
- `diagnostics/run_ui_test.py` renders without HA actions; don't touch the screen
|
||||
during that test. Use `--name` for the expected device identity.
|
||||
`diagnostics/send_layout.py` pushes a demo layout with every card type to a
|
||||
screen via the API inbox (no HA actions); the manager restores the real
|
||||
layout within ~25 s. Guition: `capture_ui.py` saves the LVGL render as a PNG.
|
||||
Without a screen: `tools/render_topbar.py` renders the real top-bar code for both
|
||||
boards via the ESPHome host + SDL2 to `.esphome/render-topbar/out/sheet.png`.
|
||||
layout within ~25 s. Guition and Elecrow: `capture_ui.py` saves the LVGL render as a PNG.
|
||||
Without a screen: `tools/render_topbar.py` renders the real top-bar code for every
|
||||
board via the ESPHome host + SDL2 to `.esphome/render-topbar/out/sheet.png`.
|
||||
- Share through Git. Don't stage secrets, measurements, binaries, logs, build
|
||||
caches, or local device profiles.
|
||||
- No automatic firmware upload to an arbitrary connected port.
|
||||
|
||||
Reference in New Issue
Block a user