Duet v0.1.0-alpha.7

Duet Alpha.7 is a focused statistics, font-management, and public-documentation update for the Xteink X3 and X4. It keeps the Alpha.6 storage, sync, reader, library, and recovery foundation while making the statistics section more responsive and replacing the remaining screen-page pace labels with estimated words per minute where the library has enough information.

Downloads

  • Xteink X3: Duet-X3-v0.1.0-alpha.7.bin
  • Xteink X4: Duet-X4-v0.1.0-alpha.7.bin
  • Complete package: Duet-v0.1.0-alpha.7-firmware.zip
  • Optional 123-family font pack: Duet-Open-Font-Pack-v1.zip
  • Optional WordNet 3.0 dictionary: Duet-WordNet-3.0-StarDict.zip
  • Checksums: SHA256SUMS.txt

Verify the checksum, back up the complete SD card, keep a known-good recovery BIN, and flash only the artifact that names your device.

Statistics

  • Current Book and Home can show estimated WPM instead of Xteink screen pages per minute. Pace Trend, Reader DNA details, and Reading Signature can include qualifying attributable entries for the current enriched book.
  • WPM is derived from EPUB word-location metadata, saved progress, and attributable reading time. Plain EPUBs still read normally, but true WPM and reference-page statistics require compatible META-INF/x-locations.json metadata generated by Duet’s one-time desktop EPUB enrichment step or already present in the book. A dash or omitted historical entry appears when Duet cannot calculate a defensible value; Duet does not relabel screen pages per minute as WPM.
  • Run python3 scripts/enrich_epub_locations.py --dry-run "/path/to/epub-or-folder" first, then apply with python3 scripts/enrich_epub_locations.py --backup --backup-dir "/path/to/backup-folder" "/path/to/epub-or-folder". The tool skips already enriched books unless --force is intentionally supplied. Keep the backup folder outside Ready to Load and outside the SD-card book folder.
  • Book, Device, Synced, and Devices now sit together at the beginning of the horizontal statistics strip.
  • Fastest Reads, Start/Finish, and Device Split paint their page shell first, then load and cache derived data during the activity loop. Button navigation no longer performs those scans before the next screen can appear.
  • Derived summaries are reused until statistics change, then invalidated and rebuilt.
  • The Streaks page chooses the next milestone above the personal longest streak and reports how many consecutive days the current streak still needs to reach it.

Font management

  • Backing out of the WiFi picker from Manage Fonts no longer unloads and rebuilds the complete SD font registry or restarts the reader.
  • The complete font registry is released only after WiFi connects and the manifest download is actually about to begin, preserving the low-memory download path.
  • The optional Duet-Open-Font-Pack-v1.zip contains 123 reviewed open-source families, six sizes per family, 738 validated .cpfont files, per-file checksums, upstream source links, pinned revisions, and bundled license notices.
  • Testers who want only selected fonts can use the 24-family on-device catalog or follow the upstream source link for a family in FONT_PACK_SOURCES.tsv and convert it with Duet’s checked-in desktop tool.

Public documentation and media

  • The Desktop Cover Prefill page now contains the complete copy-ready prompt for Codex, Claude CoWork, Perplexity Computer, or another local computer assistant. The standalone prompt remains available as a direct file.
  • A new Dictionary Setup guide covers the ready-to-copy WordNet 3.0 release asset, third-party StarDict files, first index preparation, in-book lookup, and common failures.
  • The public gallery publishes each shared X3/X4 interface screen once at representative X4 resolution instead of duplicating the same UI twice.
  • The complete gallery contains 69 reviewed PNGs: 43 statistics screens, 22 feature and app images, and four font comparisons.
  • Search, results, and More Info now form one accurate sequence: the highlighted Love Theoretically result opens the matching cover, metadata, and description.
  • The statistics gallery was regenerated from the Alpha.7 source with the new tab order and WPM labels.

Verification

  • All 117 host tests pass.
  • X3 and X4 simulator smoke tests pass.
  • X3 public firmware: 5,941,904 bytes, with 611,696 bytes free in the OTA app partition.
  • X4 public firmware: 5,804,864 bytes, with 748,736 bytes free in the OTA app partition.
  • Public screenshot count and decoding, repository links, privacy rules, package contents, and release-version consistency are checked before publication.

Build and simulator success do not prove physical e-ink refresh, SD-card timing, radio sync, sleep/wake, or long-session stability. Follow the Alpha.7 Device Acceptance route on the actual reader and keep the previous known-good BIN until the new build passes.

Installation and recovery

For a first Duet installation or recovery, use the CrossPoint web installer’s Custom .bin option. For a Duet-to-Duet update, place exactly one device-matched BIN at the SD-card root and choose Settings > System > SD Firmware Update. After flashing, confirm Settings > System reports Duet 0.1.0-alpha.7.

Read Alpha Testing, Installation, and Troubleshooting before flashing.

Credits

Duet descends from CrossPoint Reader through CrossInk and directly credits CrossInk Carousel, CrumBLE, CPR-vCodex, CrossPet, Biscuit, SEEK Reader, aalu’s reading-statistics work, CrossPoint Flow, and the bundled font projects. Exact revisions, direct adaptations, design lineage, transitive credit, and licenses are recorded in THIRD_PARTY_NOTICES.md and FONT_SOURCES.md.

Duet is released under the MIT License. Copyright in Duet’s original modifications and additions is held by Lauren Landau; upstream copyrights remain with their respective authors.


This site uses Just the Docs, a documentation theme for Jekyll.