Skip to content

Releases: jbfarias/INKacademic

INKademic v1.7.2

Choose a tag to compare

@jbfarias jbfarias released this 06 Sep 01:30

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 Pre-release
Pre-release

Choose a tag to compare

@jbfarias jbfarias released this 05 Sep 23:50

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 .bin matching 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 /upload remains 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 Pre-release
Pre-release

Choose a tag to compare

@jbfarias jbfarias released this 05 Sep 06:19

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

Pre-release

Choose a tag to compare

@jbfarias jbfarias released this 23 Aug 20:28

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-rc version 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 DifferentialRoundingTest for missing EpdFontFamily symbols; 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

Choose a tag to compare

@jbfarias jbfarias released this 22 Aug 23:16

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 /highlights page 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

  1. Download the binary for the device from this Release.
  2. Verify its SHA-256 checksum if transferring over an untrusted connection.
  3. Flash it using the CrossInk/Inky web installer or the device's documented
    USB/SD update workflow.
  4. Keep a backup of the .crosspoint directory 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

Choose a tag to compare

@jbfarias jbfarias released this 16 Aug 16:45

CrossInk Academic v1.5.2

Official X3/X4 release of CrossInk Academic.

Included

  • Academic notes, highlights, annotation tags, and the /highlights web 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.txt on 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

Choose a tag to compare

@jbfarias jbfarias released this 15 Aug 12:43

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