Releases: jbfarias/INKacademic
Release list
INKademic v1.7.2
INKademic v1.7.2
Stable promotion of the 1.7.1 release-candidate work for X3, X4, X4 Pro, and
Sticky, with the academic notes and annotation features enabled in every
device build.
Highlights
- Academic notes, highlights, clippings, bookmarks, and annotation tags across
all supported device builds. - X4 Pro frontlight persistence, side-key navigation, USB recovery, wake
optimization, and the INKademic boot logo. - Quick resume, idle power saving, atomic settings writes, reduced SD-card
writes, watchdog protection, post-failure diagnostics, and bootloader
rollback support. - Notes Connect for opening the current book's academic notes from the device.
- Browser-based firmware staging through the existing file-transfer interface,
with image structure, chip, bounds, checksum, size, and SHA-256 validation. - Nearby EPUB transfers now invalidate derived chapter and image caches after a
replacement, so an existing book with annotations cannot leave incompatible
cached data attached to the received ZIP. - Image decoding keeps the temporary pixel-cache band in X4 Pro PSRAM when
available and writes cache rows in larger batches, reducing low-memory
fallbacks and slow repeated decodes on image-heavy EPUBs. - OTA checks and downloads now use bounded network setup time and service the
task watchdog; EPUB parsing and large file-index builds also yield regularly,
preventing the X4 Pro reset seen while checking updates or indexing dense
books. - The X4 Pro application target now uses the factory-compatible 16 MB A/B
partition map, avoiding the smaller X3/X4 app-slot assumptions. - OTA manifest correction to the canonical repository endpoint:
https://api.github.com/repos/jbfarias/INKademic/releases/latest.
Firmware files
| Device | File | Size | SHA-256 |
|---|---|---|---|
| X3 / X4 | firmware-x3-x4-v1.7.2.bin |
6,221,520 | d5ab22d04fa4d81b5985a170bd521aeb2c691d74a9a4cf54e5026243e0a31609 |
| X4 Pro | firmware-x4-pro-v1.7.2.bin |
6,126,256 | 9b5237f16b51ebca778f2b72663a26987b3e59ea4f0d4410bf1077d432ac6a50 |
| Sticky | firmware-sticky-v1.7.2.bin |
6,018,272 | 1009d39c56b15612f2ecd36207333f74b567477a4e5ad289b4b356b121f0ff96 |
| X4 Pro recovery | firmware-recovery-x4-pro-v1.7.2.bin |
386,384 | b4413945b6376f84b3da51069d08f0ca0f26c61dbe63edcc887f1118e0715edf |
The recovery image is only for the documented X4 Pro factory-compatible
recovery path. Verify the published SHA-256 values before flashing.
Important X4 Pro note
The simulator complements, but does not replace, physical validation. For an
X4 Pro installation, keep the recovery procedure available and do not power
off the reader during an image write. The A/B bootloader rollback remains
responsible for returning to the previous application slot if the new image
does not complete its first boot.
Fork lineage
INKademic remains an independent academic fork based on CrossPoint Reader and
incorporates selected ideas and compatibility work from CrossInk, YACP,
CrossNotes, and BookOrbit. The complete attribution and integration notes are
in Fork lineage and references.
INKademic v1.7.1-rc.2
INKademic v1.7.1-rc.2
This release candidate adds a browser-based firmware update flow to the
existing device web interface. It is intended to make recovery and upgrades
possible through the same local connection used to send books, while retaining
the watchdog-safe A/B flash path introduced in v1.7.1-rc.1.
Browser firmware updates
- Open File Transfer, browse to
/firmware, select the.binmatching the
device, and upload it. - The device stages the image on the SD card and validates its ESP image
structure, segment boundaries, running chip ID, size, XOR checksum, and
appended SHA-256 trailer before exposing the install action. - Installation is a separate explicit action. The HTTP response returns first;
the main application task then flashes the inactive A/B partition using the
sector-sized, watchdog-safe writer and reboots. - The page persists state across reconnects and reports interrupted or failed
installations rather than silently retrying them. POST /uploadremains the book/file endpoint; it does not install firmware.
Security and limitations
The web server has no authentication. Use the page only on a private network
or a device hotspot that you control. This route performs image integrity and
device-compatibility checks, but this build does not enforce Ed25519 signatures
because the private release-signing key is not present in the repository. Do
not treat a browser upload as proof of publisher authenticity.
The feature is present only after this release is installed. It cannot repair a
device that cannot boot far enough to start the web server; use the documented
X4 Pro recovery/bootstrap path for that situation.
Published artifacts
| Variant | File | Size | SHA-256 |
|---|---|---|---|
| X3 / X4 | firmware-x3-x4-v1.7.1-rc.2.bin |
6,220,944 bytes | d7d792bddecc7d8c359da5be8a482585371bc9f3a3234a215aa31c3512bac383 |
| X4 Pro | firmware-x4-pro-v1.7.1-rc.2.bin |
6,125,728 bytes | c682399e2145780229c2ae84122b3828616c86f542c64c641b1673573bd84f03 |
| Sticky | firmware-sticky-v1.7.1-rc.2.bin |
6,017,728 bytes | fc1d2dd13393cf3f692866380ea92bb9050e4942d0f90b7ab4f517d15b7c75ac |
| X4 Pro recovery | firmware-recovery-x4-pro-v1.7.1-rc.2.bin |
386,384 bytes | 7001812f555efc35a080713e1de903e060b68d5a92abe1e6fef2535f122f9c5a |
The recovery loader is not a replacement for the normal X4 Pro application
image. It is intended only for the factory-compatible recovery layout described
in X4 Pro reliability.
INKademic v1.7.0-rc.2
INKademic v1.7.0-rc.2
Release candidate dated 5 September 2026.
Included firmware
| Device | File | Size | SHA-256 |
|---|---|---|---|
| X3 / X4 | firmware-x3-x4-v1.7.0-rc.2.bin |
6,209,968 bytes | 35415ad151d60cde8069a72edd76c479352610c6ab8064d4cfdd25af1d07fe6a |
| X4 Pro | firmware-x4-pro-v1.7.0-rc.2.bin |
6,116,816 bytes | 9fb9bd96f172840216682ff629067ee7e04edc1658239f88415fc8676850f030 |
| Sticky | firmware-sticky-v1.7.0-rc.2.bin |
6,008,048 bytes | f7daca20b3751d6574a4768fbbf0a74b4495e78dfb0439ea865b5fe090d3ee7b |
Included improvements
- Academic notes, highlights, clippings, bookmarks, and annotation tags are enabled in every device build.
- The X4 Pro uses the same INKademic academic workflow as X3/X4 and Sticky, including touch navigation, persistence, frontlight behavior, and the USB identity.
- Added date-aware academic filters and Markdown, JSON, and CSV exports with document identity, chapter, quote, stable layout metadata, and note context.
- Preserved touch navigation for footnotes and academic references, including table clippings and return-to-origin behavior.
- Avoided repeated recent-book and automatic statistics writes when their data is unchanged.
- Kept note writes durable and rejected oversized or newer unreadable note data instead of replacing it with an empty file.
- Added Notes Connect from the reader, with the current book preselected in the academic web workspace.
- Added streaming atomic JSON persistence, no-op write detection, watchdog recovery, reset-cause diagnostics, and bounded JSON handling to reduce SD wear and OOM risk.
- Added OTA signature metadata and X4 Pro Ed25519 verification over the SHA-256 digest, with signed-image enforcement and A/B rollback support.
- Preserved quick resume, sleep power savings, reading-time/WPM indicators, configurable shortcuts, and safe shutdown across all builds.
- Separated pioarduino SDK cache decisions by chip and SDK configuration.
- Stopped the SD backend before deep sleep, preserved the X4 Pro frontlight policy across wake and Quick Lock, and hardened compressed EPUB reads against invalid or oversized storage results.
- Applied the new INKademic logo in the web companion pages and firmware web portal.
- Exposed the X4 Pro “Restore light on wake” setting, persisted the live frontlight state before sleep, and parked/released the PWM driver safely around deep sleep.
- Hardened SD firmware installation on X4 Pro: the installer now uses short 16 KiB erase windows, temporarily allows a 60-second task-watchdog window during the flash transaction, feeds the watchdog between erase/write operations, and limits progress redraws to 5% steps. Persistent log capture remains paused while the OTA partition is being erased and written.
- Corrected the X4 Pro portrait logo bitmap orientation. All RC2 hardware profiles disable serial and persistent SD log capture to keep firmware installation free of auxiliary I/O.
Forks and references
The integration was based on CrossPoint Reader, the CrossInk academic work, and the FreeInk SDK. Compatible ideas were reviewed from CrossXT, CrossInk-Bookorbit, CrossNotes, and YACP. The complete attribution and compatibility notes are in fork lineage and references.
These projects are references for selected features and compatibility decisions; they are not wholesale runtime dependencies of INKademic.
Validation
- X3/X4, Sticky, and X4 Pro production builds completed successfully with OTA-size checks.
- Simulator builds for X3/X4 and X4 Pro completed successfully and reported
INKademic version 1.7.0-rc.2. - The refreshed X4 Pro production image uses 93.3% of the OTA application partition, leaving 436,784 bytes free.
- The default image uses 94.8% of its OTA application partition, leaving 343,632 bytes free; Sticky uses 91.7%, leaving 545,552 bytes free.
- X4 Pro and X3/X4 simulator builds completed successfully; the X4 Pro smoke test passed with three page turns. Sticky production compilation was resumed for this refresh.
- Host-side syntax, signing-script help, and whitespace validation passed for the build and release changes.
The X4 Pro OTA path supports a 64-byte Ed25519 signature over the firmware SHA-256 digest. This refresh intentionally removes the previous .sig asset because it was for the older image and the GitHub Actions secret INKADEMIC_OTA_ED25519_PRIVATE_KEY is not currently configured. Until that secret is configured and the signature is regenerated, use the refreshed image through the SD/recovery installer; do not use the old signature with this binary.
This is a release candidate. Physical X4 Pro validation should be completed using the validation checklist before promoting it to a stable release.
CrossInk Academic v1.7.0-rc
CrossInk Academic v1.7.0-rc
Release candidate dated 23 August 2026.
Included firmware
| Device | File | SHA-256 |
|---|---|---|
| X3 / X4 | firmware-x3-x4-v1.7.0-rc.bin |
d5c74d70ed67812eafd06228f8610eabef2a8c05e189d85b2d1f5faeeeb249ae |
| X4 Pro | firmware-x4-pro-v1.7.0-rc.bin |
a1e349a5e23fdef8ca19218ad29fad1d9d96a67f13ca1c99bdfa56dce76f7fce |
| Sticky | firmware-sticky-v1.7.0-rc.bin |
7ec75e849d057120ce5190df53ee819c2f2652e300acdff730315665d5373ec2 |
What changed
- Academic notes, highlights, clippings, bookmarks, and annotation tags remain enabled in every device build.
- X4 Pro receives the same CrossInk Academic feature set as X3/X4, including touch-aware navigation and annotations.
- Added a physical X4 Pro validation matrix covering touch, page turns, frontlight, menus, notes, highlights, tags, and persistence.
- Added host-side memory-budget regression tests for EPUB image decoding, JPEG buffers, and SD-card font lifecycle handling.
- Kept BookOrbit synchronization out of the firmware core for this release candidate; the existing KOReader Sync path remains unchanged.
Validation
- X3/X4, Sticky, and X4 Pro firmware builds completed successfully with OTA-size checks.
- The release binaries embed the same
1.7.0-rcversion string across all three device profiles. - X4 Pro simulator smoke test passed with touch page turns, frontlight controls, Home, touch-disabled mode, and menu navigation.
- X3/X4 simulator smoke test passed with three page turns.
- Memory-budget test suite passed 5/5 tests.
- A complete legacy CMake test run still has an unrelated pre-existing link failure in
DifferentialRoundingTestfor missingEpdFontFamilysymbols; the new memory-budget suite passes independently.
This is a release candidate. Physical X4 Pro validation should be completed using the validation checklist before promoting it to a stable release.
CrossInk Academic v1.6.1
CrossInk Academic v1.6.1
CrossInk Academic v1.6.1 is the academic firmware release built from the
jbfarias/CrossInk-academic repository. The complete source code is available
in the main branch and at the v1.6.1 tag.
What is included
- Academic notes and highlights backed by the document-safe NoteStore.
- EPUB clippings with bookmarks, full-text preservation, migration support, and
content-derived document identity. - User-defined annotation tags for clippings and pages, with tag-aware
exports and the web/highlightspage for searching, editing, tagging, and
exporting annotations. - The same academic annotation feature set in every device build: X3/X4,
X4 Pro, and Sticky. - CrossInk Academic branding in the UI, translations, startup identity, and
the X4 Pro USB descriptor.
Device builds
| Device | File | SHA-256 |
|---|---|---|
| Xteink X3 / X4 | firmware-x3-x4-v1.6.1.bin |
eb85badbeb02b993ae7c0f658dd781c03a1768c84a44b5f37dae64b71a764d8f |
| Xteink X4 Pro | firmware-x4-pro-v1.6.1.bin |
7e8eb8c1815fea737435bc341324dab906bae08339b3dfe3382766baa8452f0b |
| Seeed Studio Sticky | firmware-sticky-v1.6.1.bin |
b5a44cca34abd42ea2df81427e697e78535c922c3a9b298d0c889387ece83845 |
Select the file that matches the hardware. Do not flash an X3/X4 or Sticky
image to an X4 Pro; the X4 Pro uses a different ESP32-S3 hardware profile.
Improvements reviewed from upstream discussions
The release keeps the compatible improvements already present in the academic
base and incorporates the applicable robustness fixes reviewed from
CrossPoint Reader discussion #3099
and CrossInk discussion #600:
- X4 Pro display, touch, Home-key, USB storage, frontlight, and simulator
compatibility. - Transparent sleep-overlay handling with low-memory font-cache cleanup.
- EPUB ruby-group continuation handling and tolerance for trailing data after
a closing</html>element. - Existing reader improvements including dark mode, dictionaries, quick
actions, XTC/table handling, touch gestures, and clipping reliability.
Installation
- Download the binary for the device from this Release.
- Verify its SHA-256 checksum if transferring over an untrusted connection.
- Flash it using the CrossInk/Inky web installer or the device's documented
USB/SD update workflow. - Keep a backup of the
.crosspointdirectory before upgrading if the device
contains important notes, clippings, or tags.
The source tree, changelog, installation guide, academic integration notes,
and OTA catalog are included in the repository at the v1.6.1 tag.
CrossInk Academic v1.5.2
CrossInk Academic v1.5.2
Official X3/X4 release of CrossInk Academic.
Included
- Academic notes, highlights, annotation tags, and the
/highlightsweb page. - Existing ClippingStore v4, document identity, migrations, and compatibility behavior.
- Project Gutenberg as the bundled open-book OPDS catalog.
- Updated CrossInk Academic documentation site and firmware catalog.
Firmware assets
firmware-x3-x4-v1.5.2.bin— standard firmware for everyday use.firmware-x3-x4-debug-v1.5.2.bin— logger/debug firmware with detailed serial diagnostics and a crash report written to/crash_report.txton the SD card after a panic. Use this variant for troubleshooting.
Anna's Archive is not included. The firmware only includes the open Project Gutenberg catalog.
v1.5.1-rc2-academic.1
Primeira versão experimental do CrossInk Academic, um fork do CrossInk voltado a leitores acadêmicos.
Compatibilidade
- Dispositivos X3/X4
- Firmware:
firmware-x3-x4.bin
Aviso
Esta é uma versão experimental. Faça backup dos seus dados e mantenha uma cópia de um firmware funcional antes da instalação.
Full Changelog: https://github.com/jbfarias/CrossInk-academic/commits/v1.5.1-rc2-academic.1