Design baseline
Canonical rules, reusable components and the reviewed screen set.
IN PROGRESSPROJECT STATUS · OCT 2026
ENKU has moved beyond product definition and reference-board-only planning. The reader software is becoming memory-aware and device-oriented, while a portrait-first custom ENKU mainboard is now being specified in parallel with the Waveshare bring-up path.
NOW
No percentage bars. These are concrete project states derived from the repository: what is established, what is being integrated now, and what still depends on the physical hardware.
Open-source scope, physical-control interaction model, e-paper UI principles, typography presets, localization architecture and the core Figma design system are defined.
TXT, EPUB and FB2 now share the concrete Book Loader path. EPUB/FB2 parsing uses bounded or ranged reads, semantic positions survive relayout and section transitions, and stale checkpoints recover safely instead of breaking book open.
Checkpoint restore, invalid-section fallback, edge navigation and relayout stability are regression-tested. Back, Sleep and Power Off now share one controlled reader-state flush path instead of duplicating persistence logic.
Region/full refresh escalation now includes anti-ghosting accounting. After five fast or partial updates ENKU forces a clean full refresh before continuing incremental updates.
The firmware now distinguishes board capabilities from board wiring. Waveshare is marked as ReferenceHardware while ENKU R0.1 Base / Pro / Pro Wireless remain explicit DesignTarget profiles until physical validation.
microSD mount/setup failures get dedicated recovery guidance and automatic retry. Noto Sans Regular is now embedded in the firmware image, removing SD font provisioning from normal boot; invalid external overrides fall back to the embedded face and true FreeType initialization failures remain visibly recoverable.
Wi-Fi is no longer a boot-critical subsystem. If the ESP-IDF network stack or policy fails, ENKU keeps Library and Reading available offline while connectivity is exposed as an Error state for diagnostics and settings UI.
Storage, SSD1677 display paths, refresh service integration, physical input/power coordination, Wi-Fi policy and persistent application runtime work now exist in the device target and compile in CI.
A portrait-first ESP32-S3 mainboard is now an active engineering track with Base / Cover / Pro / Pro Wireless variants, Dock pogo charging, BMI270, Hall sensing, power-path architecture and an SSD1677 raw-panel integration baseline.
The remaining work before a real PCB schematic freeze is current-panel FPC verification, Good Display high-voltage reference values, exact EPD power parts, microSD connector mechanics and Pro frontlight/Qi validation.
The English UI review boards still need to be finished and stress-tested with longer localized strings before they become the final implementation baseline.
Board revision, controls, microSD, display orientation, full/fast/partial refresh, ghosting, charging and real power consumption must be measured on the delivered Waveshare hardware.
The remaining MVP work is increasingly hardware-facing: real-device bring-up, board-profile validation, low-power measurements and final refresh tuning must converge around the already working offline reader stack.
MILESTONES
The project deliberately advances through testable milestones rather than feature count. Hardware-dependent claims stay provisional until they have been reproduced on the real device.
Canonical rules, reusable components and the reviewed screen set.
IN PROGRESSReference hardware validated and ENKU R0.1 schematic/PCB brought through the first prototype build.
IN PROGRESSEPUB/FB2/TXT, Library, persistence and physical-first reading working fully offline.
IN PROGRESSWi-Fi, local upload and browser-based library management.
PLANNEDA verified printable enclosure around the final hardware stack.
PLANNEDReproducible build, documentation, case files and the first tagged release.
PLANNEDFOLLOW THE WORK
Detailed implementation decisions, tests and roadmap items remain public on GitHub. The website status page is the readable snapshot.