On June 21, 2026, the manufacturer of a $70 e-reader posted a public thank-you to the people who replaced its software. "Henry from XTEINK" pinned a note in the r/xteinkereader subreddit that opened: "Yes, we have officially started working with CrossPoint." It cleared 801 upvotes at a 99% ratio. The top reply asked the company not to abandon button-only readers, and the second-most-upvoted just said "Please deliver through amazon eu."
CrossPoint is community-built firmware that overwrites the stock operating system on Xteink's X3 and X4 e-readers. A few months earlier, Xteink had been quietly locking some units to block exactly that. Now the company was setting up an affiliate link so the firmware project earns a referral when you buy an Xteink device. A manufacturer publicly partnering with the open-source project that exists to throw out its own firmware is not a common shape, and it is a good way into a stranger story: how a cheap button e-reader grew a sprawling firmware ecosystem faster than anyone managed to catalogue it.
This is a map of that ecosystem as it stands in late June 2026. It is wider than the lists make it look.
The device, and why its firmware became a scene
The Xteink X4 is a roughly 4.3-inch e-paper reader built on an ESP32-C3 — a RISC-V microcontroller with about 380 KB of RAM and no PSRAM. Seven physical buttons, no touchscreen, USB-C, a MicroSD slot, days of battery life. The X3 is the smaller, credit-card-sized sibling: a 528×792 panel, no frontlight, no touch, and a magnetic pogo-pin charging cable instead of USB-C. Both are cheap, and both are, underneath, a hackable ESP32 dev board with an e-ink panel attached.
The stock firmware is the part nobody defends. It is widely described as format-restrictive, awkward to navigate, and Chinese-localized by default, with no cross-device reading-progress sync. On hardware this open, that combination is an invitation. The community answer arrived as CrossPoint, and the gap between "what the hardware can do" and "what the stock firmware lets it do" is large enough that an entire scene grew in the space between them.
Almost every firmware here is open source — permissive or copyleft — and almost every one is the work of a single maintainer. That combination produces a specific sustainability shape, and it is not the one closed-source apps have.
CrossPoint: the hub
CrossPoint (crosspoint-reader/crosspoint-reader) is the center of gravity. As of June 26, 2026 the repository carries 5,581 stars and 1,026 forks, is MIT-licensed, and shipped version 1.4.0 two days earlier. The reader engine handles EPUB 2/3 with embedded CSS, hyphenation, kerning, footnotes, and bookmarks, plus .xtc/.txt/.bmp; it does KOReader progress sync, OPDS browsing, WebDAV, OTA updates, custom SD-card fonts, and ships in 24 UI languages with right-to-left support. You flash it from a web flasher over USB-C. The project is explicit that it is "not affiliated with Xteink or any device manufacturer."
The stars are a popularity signal, not a sustainability one, so it is worth being precise about what actually backs CrossPoint. It is founder-led: the LICENSE retains the copyright of a single individual, Dave Allie, and the canonical repository now lives under a crosspoint-reader GitHub organization with a surrounding suite of official tools — a web flasher, Calibre plugins, a no-hardware simulator, a community SDK, a font pipeline, and a 400 KB SD-card "escape hatch" flasher. There is also early work supporting non-Xteink hardware (dumps for the Hamgeek M3/M4). That tooling depth, and a release cadence measured in days, is the real maintenance signal. The governance is closer to "benevolent founder with a contributor pool" than to a foundation, which is the standard shape for a project this young.
The license matters more than the star count for one practical reason. CrossPoint is MIT and forkable, so its failure mode is not disappearance — if the maintainer pool evaporated, the code would still be there and someone could pick it up. The realistic risk is a development gap, not a vanishing act, which is exactly what makes the fork sprawl a feature rather than a liability: when one maintainer drifts, the code is still there for the next.
And then there is the new variable: as of the June 21 announcement, CrossPoint has a manufacturer-backed referral revenue stream. Xteink set up an affiliate arrangement where CrossPoint's "Buy X3/X4 Developer Edition" links route to Xteink's official store, with the firmware project earning a referral. For a single-founder "free forever" project, an income source that does not depend on donations is a genuine, if modest, change to the funding picture. The README still hasn't been updated to mention it, and the firmware is not pre-installed on any device, so the accurate description is "affiliate relationship," not "official firmware." (The "not affiliated with Xteink" line above is about corporate ownership and official-firmware status; a marketing referral is a separate thing, and both are true at once.) But it is real, and it is the kind of signal that tells you a project is more likely to still be here in three years.
The lockdown, and the "Developer Edition" split
The collaboration only makes sense against what preceded it. Earlier in 2026, Xteink began shipping some units with USB flashing disabled from the factory. CrossPoint's own documentation is now the clearest primary source on where the line falls: units bought from third-party stores such as AliExpress can ship USB-locked, while units bought directly from xteink.com are not. The June announcement extended the friendly side of that split, stating that devices sold through Xteink's official overseas channels — its website, Amazon, and TikTok Shop — are "Developer Edition and support flashing."
This is a jurisdiction-shaped availability quirk worth flagging neutrally: the locked hardware is concentrated in grey-market and domestic-retail channels, and the deliberately-flashable hardware is the official international product. If you are buying specifically to flash custom firmware, the channel you buy through is now a feature, not a detail.
For locked units there is an unlocker tool, but it ships with a sharp warning: the only firmwares it officially supports are CrossPoint and CrossInk. CrossPoint's README is blunt that flashing other firmware on a USB-locked device can permanently brick it, and it names Papyrix specifically because Papyrix removed OTA update support, and on a locked device with no OTA path, a bad flash has no way back. The practical consequence is that the lockdown quietly narrows the safe-to-flash set on locked hardware down to two firmwares, even though the ecosystem has dozens. Several of the more adventurous forks below explicitly say "unlocked devices only" for exactly this reason.
The fork ecosystem, by what it's for
CrossPoint reports over a thousand forks. Most are personal or CI mirrors with no changes. But a surprising number are real, differentiated firmwares — and CrossPoint's own curated "Community forks" list, at eight entries, badly understates how many. Two of the highest-starred forks of all, Biscuit and CPR-vCodex, are missing from it entirely. The honest way to read this ecosystem is by intent, not by star ranking, so here it is grouped by what each fork is actually trying to do.
Reading, refined
This is the cluster closest to "CrossPoint, but more thoughtful about the act of reading."
CrossInk (uxjulia/CrossInk, MIT, 648 stars as of 2026-06-26) is the most adopted fork and the one Xteink's unlocker blesses alongside CrossPoint. Its author describes it, in the README's first line, as a "personal fork" focused on typography and stats. It adds Bionic Reading and Guide Dots reader modes, three reading fonts (ChareInk, Lexend Deca, Bitter), and lightweight reading statistics — books, time, sessions, pages per minute — that sync between two devices. It is funded through Ko-fi and maintained by one person, which is the typical shape here and worth saying plainly.
Downstream of CrossInk sits CrumBLE (imshentastic/CrumBLE, MIT, 44 stars), a third-generation fork that carries the typography work onto the X4, with X3 support in progress.
CPR-vCodex (franssjz/cpr-vcodex, MIT, 279 stars) takes the stats idea much further: reading streaks, achievements, heatmaps, "Sync Day" tracking, and session history, while keeping the interface clean if you want it to be. It is one of the highest-starred forks anywhere and, like Biscuit below, is absent from the curated list.
Papyrix (bigbag/papyrix-reader, MIT, 394 stars) is the format specialist, adding FB2, Markdown, and Arabic-script support and auto-detecting which panel it is running on at boot. A naming caveat that matters: Papyrix presents in some places as an "independent alternative," but its own README states it is a fork of CrossPoint. GitHub shows it as unaffiliated only because it is a code-level fork rather than a GitHub-linked one. It is a CrossPoint derivative like the rest.
There is also a smaller, sharper interaction mod in this cluster: Enhanced Reading Mod (ztrawhcs/crosspoint-enhanced-reading-mod, MIT, 19 stars) remaps the physical buttons so you can change text size, line spacing, alignment, and orientation mid-page without ever opening a menu — the kind of fix that only an owner who reads on the thing every day would bother to build.
The reader as a small computer
The most interesting divergence in the ecosystem is the set of forks that stop treating the device as an e-reader at all.
Biscuit (yattsu/biscuit, MIT, 360 stars) is the clearest example, and at 360 stars it trails only CrossInk and Papyrix among all the forks, yet unlike those two it is not on CrossPoint's list. Its pitch, verbatim, is that it turns "a $70 e-ink reader into a smart device" with wireless tools, games, and utilities. The home screen is a tile dashboard showing battery, heap, uptime, and Wi-Fi status; reading is one of eight categories, not the main event.
CrossPoint Apps (zakerytclarke/crosspoint-reader-apps, MIT, 21 stars) builds an app suite in the same spirit: a Markdown/HTML parser that renders Wikipedia and Reddit on-device, a calculator, offline weather, Sudoku, and downloadable offline Wikipedia articles. CrossMux (0x1abin/crossmux, MIT, 15 stars, active the day of writing) adds a games-and-tools hub, a WeRead integration for the Chinese reading platform, analytics, cloud-backed standby faces pushed over MQTT, and a polished Simplified Chinese build.
Folio (folio-etc/folio, MIT, 23 stars) deserves a specific note because it looks, from its README, like a simple rebrand. The text is near-identical to CrossPoint's, with the name swapped. The code tells a different story. Diffed against upstream on June 26, Folio is 167 commits ahead with 134 new files: a rebuilt Library/Collections home screen replacing CrossPoint's, and a declarative theming engine where themes are SD-card packages generated from a schema. It is one of the more architecturally ambitious forks in the catalogue, and it is still pre-release with no tagged version, under its own organization. The lesson generalizes: in this ecosystem a copied README tells you nothing about how far the code has moved.
inx (obijuankenobiii/inx, MIT, 218 stars) is the other interface overhaul, and the more adopted one: it rebuilds navigation around tabs, and it is the only UI redesign CrossPoint's own README links. Where Folio reworks the library and the theming engine, inx reworks how you move through the device.
A couple of others round out the cluster. shortbread (deepakvettickal/shortbread, 13 stars) is a deliberate merge of Biscuit's interface and games with CrossInk's reading experience, stripped to its author's preferences — and notably ships with no LICENSE file, which by default means all rights reserved. Marginalia (marginalia-os/marginalia-firmware, MIT, 4 stars) goes the platform route, adding a package ecosystem for modules, themes, and standalone apps.
Content pipelines
A third cluster is defined by where the books come from rather than how they are displayed.
CrossPet (trilwu/crosspet, MIT, 196 stars) is the gamified Vietnamese fork: a Tamagotchi-style virtual chicken that grows with your reading, plus streaks, a Pomodoro timer, SM-2 flashcards, and a handful of games. AvesO3 (SiliconAves/AvesO3, MIT, 7 stars) is built for fanfiction readers, with an Archive of Our Own library browser, direct chapter download from AO3, and per-fic status tracking. Campfire (toddwas/campfire, MIT, 5 stars) wires the reader to a self-hosted Storyteller server so you can pull EPUBs over Wi-Fi and sync progress. Inkpoint (tent4kel/Inkpoint, MIT, 5 stars) adds Anki flashcard study and Instapaper integration. None of these is a daily-driver for everyone; each is precise about a workflow, which is exactly what an open firmware ecosystem is good at producing.
Reading in your language
Localization is its own busy corner, beyond the CJK fork CrossPoint links. There is a dedicated Korean build (crosspoint-reader-ko, 30 stars), a Chinese fork with its own flasher and a different partition table (DaisonChun/crosslink, 28 stars), a Japanese fork with proper vertical writing (zrn-ns/crosspoint-jp, 19 stars, X3 only), a Vietnamese localization distinct from CrossPet (danoooob/crosspoint-reader-vi, 16 stars), and a Thai build. The CJK-adapted base (aBER0724/crosspoint-reader-cjk, 60 stars) is the one several of these build on. If your reading is not in a Latin script, the relevant question is usually not "which firmware is best" but "which firmware handles my script," and the answer is often one of these.
Onto other hardware
Because CrossPoint is just an ESP32 firmware, people have ported it off Xteink entirely: to the M5Stack Paper S3 (juicecultus/crosspoint-reader-papers3), the LilyGo T5 ePaper S3 (ShallowGreen123/t5s3-reader), and the Hamgeek M3/M4 (via the project's own Murphy repo). There is even a dev kit, de-link, for building your own e-paper device around the same chip family. The reader is becoming a software target, not just a product.
The other ecosystem: independent firmware, mostly in Rust
Here is the part that no curated list and no fork graph will show you, because these projects are not forks of CrossPoint at all. A plain keyword search — including the device's Chinese name, 阅星瞳 — surfaces a parallel tier of firmware written from scratch, and a striking amount of it is in Rust.
pulp-os (hansmrtn/pulp-os, MIT, 114 stars) is a bare-metal e-reader OS in Rust: no_std, no framebuffer, async via the Embassy runtime. TernOS (azw413/TernOS, GPL-2.0, 101 stars) is the most unexpected entry in the whole catalogue — a PalmOS-compatible operating system that runs on the Xteink X4, the M5Stack M5Paper, and a desktop simulator, with its own flashing-and-conversion web app. Both are the most-starred firmwares the device has that owe nothing to CrossPoint, and neither appears in any CrossPoint-centric source. They are joined by TrustyReader (GPL-2.0, 17 stars), Rustmix (no license, a "neutral Rust reference firmware" with Hindi/Sanskrit/Gujarati shaping), and ox4 (no license) — all independent Rust firmwares — plus CrossLuaReader (35 stars), a Lua-plugin runtime in C, and xteink-terminal, which turns the X4 into a Wi-Fi e-ink terminal over a tmux bridge.
This tier breaks the tidy generalization that the rest of the ecosystem is "all MIT, all descended from CrossPoint." TernOS and TrustyReader are GPL-2.0; Rustmix and ox4 carry no license, which by default means you have no right to reuse them. None has CrossPoint's adoption. But TernOS's PalmOS ambition and pulp-os's no_std design are the most technically distinct firmwares the device has, and they exist entirely outside the conversation that the listicles and the curated README have about it.
There is a tooling layer underneath all of this that is worth knowing exists, even though it is not firmware: an official Adafruit CircuitPython library for the X4, an ESPHome component that turns the device into a Home Assistant display, a long list of EPUB-to-XTC converters, OPDS and sync servers, and sleep-screen generators. The point is not the individual tools. The point is that the device now has a supply chain.
How to read this ecosystem
A few honest observations, because this is a corner of the internet where the signal-to-noise ratio is low.
The lists lie by omission, and sometimes by commission. No single source is complete. CrossPoint's curated list is roughly a third of the real picture and gets details wrong — it marks PlusPoint "unmaintained" when that fork was still receiving commits in June, and labels it a "JS apps" project when its own README says it is an experiment to build a full OS for fun. To actually map this you need three passes: the curated list, the GitHub fork graph, and a generic keyword search. Each catches what the others miss.
Be especially skeptical of the review blogs. A large share of the "best Xteink firmware" content reads as auto-generated — near-identical articles across throwaway domains, and at least one repository openly named as a research bot for exactly this topic. The clearest tell: several of these sources confidently describe a firmware called "Crossing," with version numbers and feature lists. There is no such repository anywhere on GitHub. When a firmware that supposedly has point releases has no code, you are reading a content farm, not a catalogue. Go to the repositories.
The sustainability story is a single shared shape. Nearly every firmware here is the work of one person. Under the closed-source-app lens that would be an alarming bus factor. Under this one it is softer, because the dominant license is MIT and the code is forkable: when a maintainer drifts away, the failure mode is a development gap, not a disappearance, and the lineage from CrossPoint → CrossInk → CrossInk Carousel → CrumBLE is itself proof that the baton gets passed. The two real exceptions to watch are the no-license independent firmwares — Rustmix and ox4 — where "all rights reserved" means a stalled project genuinely is a dead end for anyone else. And lock-in cuts the friendly way here: your library is EPUB files on a MicroSD card, not a proprietary cloud account, so switching firmware costs you a reflash and your reading position, not your books.
Maintained-only, with a graveyard. PlusPoint belongs in the "developer plaything, not a daily driver" bucket; its author says so himself. CrossPet and Campfire are real but trailing upstream. Everything else in the reading and apps clusters above was actively pushed within the last few weeks as of writing.
What to actually flash
The map is wider than anyone needs at once. In practice the decision collapses to a few profiles.
You just want a better reader. Flash CrossPoint. It is the most maintained, the best supported, the one the manufacturer now backs, and one of only two firmwares the unlocker will safely put on a locked device. If you want sharper typography and a little reading-stats feedback on top, CrossInk is the natural second step and the other unlocker-blessed option.
You want the device to do more than read. Biscuit if you want the smart-device dashboard and games; CrossPoint Apps or CrossMux if you want an app drawer with weather, a calculator, and offline reference; Folio if you care about a richer library and theming and you are comfortable running pre-release software. Check that your device is unlocked first — most of this tier is not on the unlocker's supported list, which means bricking risk on locked hardware.
You have a specific pipeline or language. Match the fork to the need: AvesO3 for AO3, Campfire for a Storyteller server, Inkpoint for Anki and Instapaper, CrossPet for the gamified Vietnamese experience, and the CJK/JP/KO/VI/Chinese builds for non-Latin scripts.
You are a developer who wants to build, not just read. This is where the Rust tier earns its place. pulp-os if you want a clean no_std foundation, TernOS if the PalmOS idea delights you, CrossLuaReader if you want to script behavior in Lua without recompiling. Just read the license before you build on any of them.
The throughline is the one the June 21 announcement accidentally illustrated. A $70 e-reader with an open chip and a bad default firmware turned into a platform — dozens of community firmwares, a parallel from-scratch Rust scene, a tooling supply chain, and finally the manufacturer itself deciding it was better to back the people replacing its software than to fight them. That is an unusually healthy outcome for hardware this cheap, and it is the strongest reason to expect the device, and its firmware, to still be interesting a few years from now.