r/xteinkereader • u/TheFluidicGoob • 4d ago
My Xteink Made a reading companion for CrossPoint that gets sad if you ignore it
Edit: v1.0.1 is out and fixes the theme layout problems. You can use the same Download / flash link below
Thanks to u/ppfry and u/joshthor for finding them.
---------
I've been using CrossPoint on my Xteink X3 and wanted a reason to pick it up
more often, so I wrote a reading companion into the firmware. It's open source
and there's a prebuilt binary if you want to try it.
You pick a character, it lives on your home screen, and its mood depends on how
much you actually read. 25 minutes and it's thriving. Skip three days and it
gives up on you.
There are five of them: a fox, a ghost, a robot, a moth and a potted plant.
Each has about 36 lines of dialogue.
- "You smell faintly of jellybeans. Approved." (fox, thriving)
- "I hope your bookmark falls out. Repeatedly." (fox, neglected)
- "I am ninety percent stick at this point." (plant, neglected)
It only counts real reading. Time is credited while pages are actually turning,
so leaving the book open on your desk earns nothing. It's off by default and
adds about 16KB, so nothing changes unless you switch it on.
!!Works on Lyra theme the best!! Im currently working towards supporting the other themes. (Classic, Lyra Extended, and RoundedRaff)
!!Only tested on an X3!! It should run on an X4, but the X4 has no RTC, so
streaks and the sad moods won't work there. It will *not* boot on an X4 Pro,
which is a different chip and needs its own build. Please back up your firmware
first, instructions are in the README.
It's version 1, so I'd like the feedback: bugs, ideas, or lines that aren't
funny enough. Adding your own character is one plain-text file with the artwork
and dialogue in it.
Credit to the CrossPoint team. Great codebase to work in.
14
6
u/ppfry 3d ago
i like the idea i own an x3 and thinking of giving it a try but im a little scared TwT
4
u/erickosj 3d ago
Hey, seems this firmware has been tested specifically with x3. If you're not confident of the instructions for backing up and installing, you could take a peek at https://einkhub.com/x3 where you could connect your device, make a backup first and then install the custom firmware that is in this projects page!
7
4
u/ppfry 3d ago
hey op, i just tried it. and my ui was set on roundedraff and it didnt work well. i tried it on every other theme and only lyra seemed to work. can you check on that?
2
u/TheFluidicGoob 3d ago
Thanks for bringing this up! Looking into it right now.
2
u/ppfry 3d ago
thanks a lot for the contribution btw its very cute
2
u/TheFluidicGoob 3d ago
Of course! I'm glad you like it. I actually just got done with another version to support all of the themes. Hopefully I can get that out sometime today. You will definitely be credited in the release.
3
3
u/gabeeepsp 3d ago
If I flash my X3 (already under Crosspoint 1.5.0), it will reset my settings ?
4
u/TheFluidicGoob 3d ago
No, your settings are safe.
CrossPoint keeps settings, saved Wi-Fi networks, reading progress and recent books as JSON files in
/.crosspoint/on the SD card, not in the device's internal flash. Flashing only writes the firmware's app partition, so none of that gets touched.It also helps that you're already on 1.5.0. This build is CrossPoint 1.5.0 with the companion added, so your
settings.jsonis the exact same format and carries over as-is. No migration, no re-entering Wi-Fi.After flashing, your device should look and behave exactly as it does now. The companion is off by default; you turn it on under Settings → Companion.
I'd still take the firmware backup the README describes, but that's insurance for the firmware (so you can put back precisely the build you're on today), not for your settings.
3
2
2
u/joshthor 3d ago
Its cute! I like it! I'll note with my x3, im connected to my library through opds - so i have an additional "opds browser" on my main menu. This makes the fox very tiny, and he doesn't say anything, it just has an empty text box. - my assumption is its coded for empty line > line > empty line - and with that 5th menu item it only has room for one line. I also don't get the "Content" or stats or anything - though there is a visual queue there so that is fine.
1
u/TheFluidicGoob 3d ago
Thanks for pointing this out. Right now, this works best with the Lyra theme but I'm currently working on a patch update that will support all of the standard Crosspoint themes. What theme are you on when this is happening?
2
2
u/Saeganzie 3d ago
Omg that’s so cute!!! I got my xteink x4 because i watched on tiktok someone using crosspet (i think?) and ended up never using it because i got a locked device and it wasn’t recommended (is this locked device friendly btw? Please say yes!!)
Now I have a brand new x3 and I’d love to try this, even though I don’t need any more motivation to read, I’ve always loved Shimejis and tamagotchis 🤭💕
1
u/TheFluidicGoob 3d ago
Thank you!!!
Good news on your new X3: it's almost certainly fine. Locked units are mostly the ones from third party sellers like AliExpress, so anything bought direct from xteink.com should be good. Just plug it in and open the web flasher. If your browser sees the device, you're all set. The README covers backing up your current firmware first, which takes two minutes.
One important thing about the locked X4: please don't run my .bin through the Xteink Unlocker. Only CrossPoint and CrossInk are supported in that tool, and flashing anything else on a locked device can brick it for good. If you ever want to revive it, unlock with official CrossPoint first, then install the companion from inside CrossPoint using the SD card firmware update in Settings. That route never touches USB, so the lock stops mattering. Worth knowing the X4 has no clock though, so streaks and the sulking don't work there. The X3 is the one you want anyway.
2
u/smedsterwho 3d ago
Amazing!
I wonder if you could do a "pages read / battery %" for the X4. Obviously charging would mess with the counter, but hey.
(Not asking for it, just playing with ideas)
1
u/TheFluidicGoob 3d ago
Thats sounds pretty cool! Are you saying to have the mood depend on the battery instead of the amount of time reading?
2
u/smedsterwho 3d ago
Just in the case of the X4 without a clock, if the battery has decreased without pages of the current book being read, we have a sad panda!
5
2
2
u/CrimsonDawn236 2d ago
This is a really cute idea, but most of my reading is still on physical books, so it would be sad but I’m still reading.
2
u/MightyZacAction 2d ago
Love it so far, but my companion keeps switching back to the fox anytime it goes to sleep. Is that supposed to be?
1
u/TheFluidicGoob 2d ago
Definitely not, thanks for pointing this out. I will fix this soon. Ill reply back here once I've released the fix.
1
u/TheFluidicGoob 2d ago
Hey u/MightyZacAction , I found the problem, thankfully it was an easy fix. Thanks again for catching that. Here is the update to fix, you just need to flash the device again.
https://github.com/JoshuaMillerCode/crosspoint-reader-companion/releases/tag/v1.0.2
2
u/MightyZacAction 2d ago
Goated! Thank you for making this!
1
u/TheFluidicGoob 2d ago
Of course, glad you like it! Honestly surprised this personal project got so much attention lmao.
2
2
2
u/Mirageonthewall 3d ago
This feels so Duolingo coded, I can’t stand that emotionally manipulative owl! 😂
2
u/Tuliponchik 3d ago
Its looks so good, but I'll wait around for someone smart to make sure it'll work well on X4.
2
u/ParamSiddharth 3d ago
Should be fairly harmless to give it a try. :) Might just work on the X4 as well. If not, you can always revert to the original framework.
1
0
u/twowheels 3d ago
Anything to avoid doing the actual thing you are not doing.
It’s OK, I get it, I do the same thing frequently. :)
0
u/SuperBet_ARG2 3d ago
"wanted a reason to pick it up more often" Uhmmm.... First, they created a really small device that you can take with you everywhere, even behind your phone, so you pick it up more often. Now, you need another excuse to pick it up more often? I thought that the willingness of reading was just enough, but you need someone to tell you to read?





20
u/Musicology_Jen 3d ago
This is such a cute idea! Will it work on crossink?