Session 18 — 2026-03-27a
| Field | Value |
|---|---|
| Date | 2026-03-27 |
| Phases | 03a — Custom UEFI ABL, 03b — TWRP |
| Duration | ~1.5 h |
LED Discovery
The LED indicator is a tiny pinhole in the power button bezel — it had been completely blocked by dust. After cleaning with a needle: blue and red LEDs are clearly visible. Green sysfs write succeeds (value 255 confirmed) but produces no visible light — two-color physical LED only. Prior sessions concluded “LEDs useless and 5-press sequence may not work” — both conclusions were wrong.
LED boot-stage scheme (adopted)
| LED state | Meaning |
|---|---|
| Blue | Early-init reached |
| Dark | Init stage (green invisible) |
| Red | Filesystem mounted |
| Red + Blue | ADB ready (FunctionFS BIND) |
| Nothing | Kernel never started |
TWRP v1.4 — First Confirmed Boot
With LED pinhole clean, retested TWRP v1.4. Observed red+blue LED sequence. USB enumerated as 18d1:d001. ADB connected: device ID 6db6dcde recovery. First custom recovery successfully running on this device.
Hardware confirmed initialised in TWRP
- 8 CPUs online, eMMC accessible
- Display pipeline: MDSS DSI → tc358762 → EPDC → MAX17135
- Touch: cyttsp5 | Pen: Wacom EMR | Hall sensor | Frontlight: LM3630A
- USB / ADB operational
recovery Binary Crash-Loop
The recovery binary starts and immediately exits with status 1, restarting every ~5 s. No /tmp/recovery.log written. Root cause: TWRP’s minui opens /dev/fb0 but this kernel only creates /dev/graphics/fb0. Fix applied in v1.5: symlink /dev/graphics/fb0 /dev/fb0 in init.recovery.qcom.rc on early-init.
Even after the symlink fix, EPDC update counters are zero — no framebuffer updates submitted. Display will likely remain blank; explicit EPDC ioctl/sysfs refresh required. Userdata reads as all zeros in crypto footer — unencrypted post factory-reset.
ABL v1.6 — Buffer Reduction
Reduced total UEFI buffer allocations from 256 MB to 34 MB: gRxBuffer 64→32 MB, gTxBuffer 64→1 MB, FastBootBuffer 128→1 MB. Theory: pool exhaustion caused FastbootPublishVar and CmdDownload DATA response failures. Built and signed -v 5. Ready to flash.
New Tools
tools/twrp-build— new script matchingabl-buildstyletools/abl-build— improved:cleansubcommand,-j1auto-retry on parallel build failure, non-interactive mode