Skip to content

Add support for kindles after fw 5.16.3#11986

Merged
pazos merged 7 commits into
koreader:masterfrom
notmarek:master
Jun 11, 2024
Merged

Add support for kindles after fw 5.16.3#11986
pazos merged 7 commits into
koreader:masterfrom
notmarek:master

Conversation

@notmarek

@notmarek notmarek commented Jun 6, 2024

Copy link
Copy Markdown
Contributor

CC: koreader/koreader-base#1814


This change is Reviewable

@benoit-pierre

Copy link
Copy Markdown
Member

kodev needs to be updated too.

@notmarek

notmarek commented Jun 6, 2024 via email

Copy link
Copy Markdown
Contributor Author

@notmarek notmarek requested a review from Frenzie as a code owner June 6, 2024 19:11
@Frenzie Frenzie added the Kindle label Jun 6, 2024
@hius07

hius07 commented Jun 6, 2024

Copy link
Copy Markdown
Member

How to launch? KUAL or KOL?

@notmarek

notmarek commented Jun 6, 2024

Copy link
Copy Markdown
Contributor Author

How to launch? KUAL or KOL?

Currently the easiest way to use this is to create a RUNME.sh file with
/mnt/us/koreader/koreader.sh --kual --framework_stop
and then start it with ;log runme
Since none of the other needed components for kindle jailbreak (namely the hotfix and mrpi) havent been updated to support >= 5.16.3

@pazos pazos left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Awesome, thanks for your time!

I've just noticed that a bunch of code in the ota manager could go in https://github.com/koreader/koreader/blob/master/frontend/device/kindle/device.lua.

But that's another topic :), LGTM

@notmarek

notmarek commented Jun 9, 2024

Copy link
Copy Markdown
Contributor Author

How to launch? KUAL or KOL?

If you or anyone else wants to try this, here are some binaries (try it at your own risk)

@pazos

pazos commented Jun 11, 2024

Copy link
Copy Markdown
Member

@notmarek: could you update the base submodule as part of this PR?

@notmarek

Copy link
Copy Markdown
Contributor Author

@notmarek: could you update the base submodule as part of this PR?

Will do asap (like in 40 minutes or so)

@pazos pazos merged commit ab2f545 into koreader:master Jun 11, 2024
@Frenzie Frenzie added this to the 2024.06 milestone Jun 11, 2024
@mergen3107

Copy link
Copy Markdown
Contributor

Do I understand it correctly that there is no hf package in the nightly builds yet?

So I will have to keep rebuilding it myself for now if I go hf way?

@Frenzie

Frenzie commented Jun 13, 2024

Copy link
Copy Markdown
Member

There won't be until after there's a proper toolchain.

@notmarek

notmarek commented Jun 13, 2024

Copy link
Copy Markdown
Contributor Author

Do I understand it correctly that there is no hf package in the nightly builds yet?

So I will have to keep rebuilding it myself for now if I go hf way?

if you are interested i setup a temp nightly server here, this build should be from latest master and default to my ota server
https://fw.notmarek.com/khf/koreader/koreader-kindlehf-v2024.04-173-ge4232078a_2024-06-13.targz

@mergen3107

Copy link
Copy Markdown
Contributor

@notmarek
Thanks! That's cool :)
Do you wanna add this information to the description on your website?

@mergen3107

mergen3107 commented Jun 13, 2024

Copy link
Copy Markdown
Contributor

So I tried release kindlehf with this one-liner:

export PATH=/home/mergen3107/x-tools/arm-kindlehf-linux-gnueabihf/bin:$PATH; ./kodev release kindlehf

It says, wrong target:

base/Makefile.defs:233: *** Invalid TARGET: "kindlehf".  Stop.

Although, ./kodev release --help says it is there:

usage: release <OPTIONS> <TARGET>

OPTIONS:

    -d, --debug               debug-enabled release (for remote gdb)
    -i, --ignore-translation  do not fetch translation for release
    -v, --verbose             make the buildsystem more verbose

TARGET:

    kindle          Compatible with all Kindle models >= Kindle4
    kindlehf        Compatible with all Kindles with FW >= 5.16.3
    kindlepw2       With compiler optimizations for Kindle models >= Paperwhite 2
    kindle-legacy   Needed only for Kindle2/3/DXG
    kobo
    cervantes
    remarkable
    sony-prstux
    android         Supports ANDROID_ARCH arm, arm64, x86 & x86_64
    pocketbook
    ubuntu-touch
    appimage
    linux
    macos           MacOS app bundle. You need a mac to build this package

What am I doing wrong?
On git in command line, I am up-to-date with my master, which I just synced (with 174 commits after 2024.04), so this PR is there for sure.

@benoit-pierre

Copy link
Copy Markdown
Member

[…] I am up-to-date with my master, which I just synced (with 174 commits after 2024.04), so this PR is there for sure.

But I'd wager your base submodule is not updated.

@mergen3107

Copy link
Copy Markdown
Contributor

Thanks! I'll try.
I did git submodule update --recursive, but I probably need make fetchthirdparty as mentioned before

@mergen3107

Copy link
Copy Markdown
Contributor

Thank you very much again @benoit-pierre !
It were indeed submodules. I did both git and make updates above. First one updated base and l18n, second did something too :D

(I also had a spelling error in the x-tools path, forgot to include hf after gnueabi - I fixed it in the comment above).

@mergen3107

Copy link
Copy Markdown
Contributor

Another question. What is more preferred:

  1. copy over koreader-hf build on top of my current koreader-sf build; or
  2. make a copy of old build just in case and copy over settings only.

Second option is just tedious because I will need to keep moving settings if I move back and forth from hf (in case it doesn't work properly).

@mergen3107

Copy link
Copy Markdown
Contributor

After starting the compilation, it gave me an error into 2 minutes (out of 5 maybe):

arm-kindlehf-linux-gnueabihf-ar: creating apps/libapps.a
arm-kindlehf-linux-gnueabihf-ar: creating libcrypto.a
arm-kindlehf-linux-gnueabihf-ar: creating libssl.a
make[2]: *** [Makefile:91: all] Error 2
make[1]: *** [Makefile:71: all] Error 2
make[1]: Leaving directory '/home/mergen3107/koreader/base'
make: *** [Makefile:121: base] Error 2

@benoit-pierre

Copy link
Copy Markdown
Member

Can you provide a little more context?

@notmarek

notmarek commented Sep 10, 2024 via email

Copy link
Copy Markdown
Contributor Author

@mergen3107

Copy link
Copy Markdown
Contributor

@notmarek
Did you have your storage wiped when upgrading to hf firmware?

Do you guys know if I can try to recover data on Kindle?

@notmarek

notmarek commented Sep 10, 2024 via email

Copy link
Copy Markdown
Contributor Author

@mergen3107

Copy link
Copy Markdown
Contributor

you can try turning on the old usbms gadget

Thanks! What is this please?

@mergen3107

Copy link
Copy Markdown
Contributor

Guys, sorry for an off-topic, but can you please provide a generic example of how to compile stuff for hf?

For example, can I recompile kterm?

https://github.com/bfabiszewski/kterm

@NiLuJe

NiLuJe commented Sep 11, 2024

Copy link
Copy Markdown
Member

kterm is going to be a real bitch, I wouldn't recommend even trying ;).

@notmarek

notmarek commented Sep 11, 2024 via email

Copy link
Copy Markdown
Contributor Author

@mergen3107

Copy link
Copy Markdown
Contributor

Got it :D
Thanks!

@mergen3107

mergen3107 commented Sep 25, 2024

Copy link
Copy Markdown
Contributor

@notmarek

My Scribe update to 5.16.21 although I blocked OTA :D (see below, PEBCAK)

hf hotfix worked, KUAL and KOReader work.

However, installing usbnet lite with mrpi gives me "package script failed (139)".

Can you please have a look if you get a chance?

Thank you!

@notmarek

notmarek commented Sep 25, 2024 via email

Copy link
Copy Markdown
Contributor Author

@mergen3107

mergen3107 commented Sep 25, 2024

Copy link
Copy Markdown
Contributor

(as for OTA update despite blocking (see below, PEBCAK), I have suspicion about this new watchdog called minerva: https://www.mobileread.com/forums/showpost.php?p=4432946&postcount=73

Although it is possible they added other sneaky ways to meep updating, after all they might also be knowing about our OTA blocking :D)

@mergen3107

Copy link
Copy Markdown
Contributor

Thank you Marek!

@NiLuJe

NiLuJe commented Sep 25, 2024

Copy link
Copy Markdown
Member

However, installing usbnet lite with mrpi gives me "package script failed (139)".

What's the actual install log?

@mergen3107

Copy link
Copy Markdown
Contributor

Will look later 👀

@mergen3107

Copy link
Copy Markdown
Contributor

@notmarek @NiLuJe
image

Context: I already had usblite installed and working. Files are all still there.

It had "Enable on boot" checked, but it doesn't work. No messages during startup neither.

Trying to enable it from KUAL says unable (will look if it has log too).

But the toggle reports well (usbnet enabled/disabled)

Maybe they changed in the FW that usbnet relied on?

@NiLuJe

NiLuJe commented Sep 25, 2024

Copy link
Copy Markdown
Member

Well, that segfault doesn't sound good.

(Then again, I have vague and traumatic memories of random stock unix tools segfaulting for no good reason on some FW releases...).

@mergen3107

Copy link
Copy Markdown
Contributor

So, I just renamed existing usbnetlite folder in /mnt/us/ and tried mrpi again.
It worked!

I don't know if it is related to the SEGFAULT.

Here is the full log when it worked:

**** **** **** ****

[2024-09-25 @ 20:12:45 -0400] :: [MRPI r19303] - Beginning the processing of package 'Update_usbnetlite_1.0.M_install_khf.bin' (usbnetlite 1.0.M I khf) . . .

Extracting update package 'Update_usbnetlite_1.0.M_install_khf.bin' to '/var/tmp/mrpi/staging'.
Bundle         SP01 (Signing Envelope)
Cert number    0
Cert file      pubdevkey01.pem (Developer)
Bundle         FD04 (Versionless [vls])
Bundle Type    OTA V2
Minimum OTA    0
Target OTA     18446744073709551615
Devices        34
Device         Kindle PaperWhite 4 (2018) WiFi (8GB) (0PP -> 0x2F7)
Device         Kindle PaperWhite 4 (2018) WiFi (32GB) (0T6 -> 0x366)
Device         Kindle PaperWhite 4 (2018) WiFi+4G (32GB) (0T1 -> 0x361)
Device         Kindle PaperWhite 4 (2018) WiFi+4G (32GB) Europe (0T2 -> 0x362)
Device         Kindle PaperWhite 4 (2018) WiFi (8GB) India (102 -> 0x402)
Device         Kindle PaperWhite 4 (2018) WiFi+4G (32GB) Japan (0T3 -> 0x363)
Device         Twilight Blue Kindle PaperWhite 4 (2018) WiFi (8GB) (16T -> 0x4DB)
Device         Twilight Blue Kindle PaperWhite 4 (2018) WiFi (32GB) (16Q -> 0x4D8)
Device         Plum Kindle PaperWhite 4 (2018) WiFi (8GB) (16U -> 0x4DC)
Device         Sage Kindle PaperWhite 4 (2018) WiFi (8GB) (16V -> 0x4DD)
Device         Kindle PaperWhite 4 (2018) WiFi (32GB) India (103 -> 0x403)
Device         Plum Kindle PaperWhite 4 (2018) WiFi (32GB) (16R -> 0x4D9)
Device         Sage Kindle PaperWhite 4 (2018) WiFi (32GB) (16S -> 0x4DA)
Device         Kindle Basic 3 (2019) (10L -> 0x414)
Device         White Kindle Basic 3 (2019) (0WH -> 0x3D1)
Device         Kindle Basic 3 (2019) Kids Edition (0VB -> 0x3AB)
Device         White Kindle Basic 3 (2019) (8GB) (0WF -> 0x3CF)
Device         Champagne Kindle Oasis 3 (2019) WiFi (32GB) (11L -> 0x434)
Device         Kindle Oasis 3 (2019) WiFi+4G (32GB) Japan (0WQ -> 0x3D8)
Device         Kindle Oasis 3 (2019) WiFi+4G (32GB) (0WN -> 0x3D6)
Device         Kindle Oasis 3 (2019) WiFi (32GB) (0WM -> 0x3D5)
Device         Kindle Oasis 3 (2019) WiFi (8GB) (0WL -> 0x3D4)
Device         Kindle Oasis 3 (2019) WiFi+4G (32GB) India (0WP -> 0x3D7)
Device         Kindle PaperWhite 5 Signature Edition (2021) (1LG -> 0x690)
Device         Kindle PaperWhite 5 (2021) (1PX -> 0x6FF)
Device         Kindle PaperWhite 5 Signature Edition (2021) (Variant 2BH) (2BH -> 0x971)
Device         Kindle PaperWhite 5 (2021) (Variant 2DK) (2DK -> 0x9B3)
Device         Kindle PaperWhite 5 (2021) (Variant 21A) (21A -> 0x82A)
Device         Kindle PaperWhite 5 Signature Edition (2021) (Variant 219) (219 -> 0x829)
Device         Kindle Basic 4 (2022) (Variant 2AQ) (2AQ -> 0x958)
Device         Kindle Basic 4 (2022) (Variant 2AP) (2AP -> 0x957)
Device         Kindle Scribe (16GB) (Variant 227) (227 -> 0x847)
Device         Kindle Scribe (64GB) (Variant 23M) (23M -> 0x875)
Device         Kindle Scribe (Variant 23L) (23L -> 0x874)
Critical       0
Padding Byte   0 (0x00)
MD5 Hash       bd5e2f184004f8e410bfc7c67ee241c4
Metadata       7
Metastring     PackageName=usbnetlite
Metastring     PackageVersion=1.0.M-r5b188ff
Metastring     PackageAuthor=Marek
Metastring     PackageMaintainer=Marek
Metastring     PackagedWith=KindleTool v1.6.5.314-g6df9cc9 built by bob@builder on Linux
Metastring     PackagedBy=bob@builder
Metastring     PackagedOn=2024-06-08 @ 10:15:10 UTC
x libotautils5
x install.sh
x usbnetlite.tar.xz
x xzdec
x usbnetlite-preinit.conf
x usbnetlite.conf
x libotautils5.sig
x install.sh.sig
x usbnetlite.tar.xz.sig
x xzdec.sig
x usbnetlite-preinit.conf.sig
x usbnetlite.conf.sig
x update-filelist.dat.sig
x update-filelist.dat
--
Running 'install.sh' for 'usbnetlite 1.0.M I khf' (Update_usbnetlite_1.0.M_install_khf.bin) @ Wed, 25 Sep 2024 20:12:45 -0400

system: I usbnetlite:install::installing custom directory
./build/mntus_package/usbnetlite/
./build/mntus_package/usbnetlite/run/
./build/mntus_package/usbnetlite/etc/
./build/mntus_package/usbnetlite/etc/dropbear/
./build/mntus_package/usbnetlite/etc/dropbear/authorized_keys
./build/mntus_package/usbnetlite/etc/VERSION
./build/mntus_package/usbnetlite/etc/config
./build/mntus_package/usbnetlite/bin/
./build/mntus_package/usbnetlite/bin/usbnetwork.sh
./build/mntus_package/usbnetlite/bin/xzdec
./build/mntus_package/usbnetlite/bin/usbnetwork
./build/mntus_package/usbnetlite/bin/dropbearmulti
./build/mntus_package/usbnetlite/bin/usbnet-link
./build/mntus_package/usbnetlite/bin/libkh5
./build/mntus_package/usbnetlite/bin/sftp-server
./build/mntus_package/extensions/
./build/mntus_package/extensions/usbnetlite/
./build/mntus_package/extensions/usbnetlite/config.xml
./build/mntus_package/extensions/usbnetlite/menu.json
./build/mntus_package/extensions/usbnetlite/bin/
./build/mntus_package/extensions/usbnetlite/bin/usbnetlite.sh
system: I usbnetlite:install::creating the /usr/local/bin directory if need be
system: I usbnetlite:install::installing SSH server
system: I usbnetlite:install::setting up usbnetwork command script
system: I usbnetlite:install::installing preinit upstart job
system: I usbnetlite:install::installing upstart job
system: I usbnetlite:install::cleaning up
system: I usbnetlite:install::done

Success! :)

@mergen3107

Copy link
Copy Markdown
Contributor

And this is the full log when it didn't:

**** **** **** ****

[2024-09-25 @ 12:19:00 -0400] :: [MRPI r19303] - Beginning the processing of package 'Update_usbnetlite_1.0.M_install_khf.bin' (usbnetlite 1.0.M I khf) . . .

Extracting update package 'Update_usbnetlite_1.0.M_install_khf.bin' to '/var/tmp/mrpi/staging'.
Bundle         SP01 (Signing Envelope)
Cert number    0
Cert file      pubdevkey01.pem (Developer)
Bundle         FD04 (Versionless [vls])
Bundle Type    OTA V2
Minimum OTA    0
Target OTA     18446744073709551615
Devices        34
Device         Kindle PaperWhite 4 (2018) WiFi (8GB) (0PP -> 0x2F7)
Device         Kindle PaperWhite 4 (2018) WiFi (32GB) (0T6 -> 0x366)
Device         Kindle PaperWhite 4 (2018) WiFi+4G (32GB) (0T1 -> 0x361)
Device         Kindle PaperWhite 4 (2018) WiFi+4G (32GB) Europe (0T2 -> 0x362)
Device         Kindle PaperWhite 4 (2018) WiFi (8GB) India (102 -> 0x402)
Device         Kindle PaperWhite 4 (2018) WiFi+4G (32GB) Japan (0T3 -> 0x363)
Device         Twilight Blue Kindle PaperWhite 4 (2018) WiFi (8GB) (16T -> 0x4DB)
Device         Twilight Blue Kindle PaperWhite 4 (2018) WiFi (32GB) (16Q -> 0x4D8)
Device         Plum Kindle PaperWhite 4 (2018) WiFi (8GB) (16U -> 0x4DC)
Device         Sage Kindle PaperWhite 4 (2018) WiFi (8GB) (16V -> 0x4DD)
Device         Kindle PaperWhite 4 (2018) WiFi (32GB) India (103 -> 0x403)
Device         Plum Kindle PaperWhite 4 (2018) WiFi (32GB) (16R -> 0x4D9)
Device         Sage Kindle PaperWhite 4 (2018) WiFi (32GB) (16S -> 0x4DA)
Device         Kindle Basic 3 (2019) (10L -> 0x414)
Device         White Kindle Basic 3 (2019) (0WH -> 0x3D1)
Device         Kindle Basic 3 (2019) Kids Edition (0VB -> 0x3AB)
Device         White Kindle Basic 3 (2019) (8GB) (0WF -> 0x3CF)
Device         Champagne Kindle Oasis 3 (2019) WiFi (32GB) (11L -> 0x434)
Device         Kindle Oasis 3 (2019) WiFi+4G (32GB) Japan (0WQ -> 0x3D8)
Device         Kindle Oasis 3 (2019) WiFi+4G (32GB) (0WN -> 0x3D6)
Device         Kindle Oasis 3 (2019) WiFi (32GB) (0WM -> 0x3D5)
Device         Kindle Oasis 3 (2019) WiFi (8GB) (0WL -> 0x3D4)
Device         Kindle Oasis 3 (2019) WiFi+4G (32GB) India (0WP -> 0x3D7)
Device         Kindle PaperWhite 5 Signature Edition (2021) (1LG -> 0x690)
Device         Kindle PaperWhite 5 (2021) (1PX -> 0x6FF)
Device         Kindle PaperWhite 5 Signature Edition (2021) (Variant 2BH) (2BH -> 0x971)
Device         Kindle PaperWhite 5 (2021) (Variant 2DK) (2DK -> 0x9B3)
Device         Kindle PaperWhite 5 (2021) (Variant 21A) (21A -> 0x82A)
Device         Kindle PaperWhite 5 Signature Edition (2021) (Variant 219) (219 -> 0x829)
Device         Kindle Basic 4 (2022) (Variant 2AQ) (2AQ -> 0x958)
Device         Kindle Basic 4 (2022) (Variant 2AP) (2AP -> 0x957)
Device         Kindle Scribe (16GB) (Variant 227) (227 -> 0x847)
Device         Kindle Scribe (64GB) (Variant 23M) (23M -> 0x875)
Device         Kindle Scribe (Variant 23L) (23L -> 0x874)
Critical       0
Padding Byte   0 (0x00)
MD5 Hash       bd5e2f184004f8e410bfc7c67ee241c4
Metadata       7
Metastring     PackageName=usbnetlite
Metastring     PackageVersion=1.0.M-r5b188ff
Metastring     PackageAuthor=Marek
Metastring     PackageMaintainer=Marek
Metastring     PackagedWith=KindleTool v1.6.5.314-g6df9cc9 built by bob@builder on Linux
Metastring     PackagedBy=bob@builder
Metastring     PackagedOn=2024-06-08 @ 10:15:10 UTC
x libotautils5
x install.sh
x usbnetlite.tar.xz
x xzdec
x usbnetlite-preinit.conf
x usbnetlite.conf
x libotautils5.sig
x install.sh.sig
x usbnetlite.tar.xz.sig
x xzdec.sig
x usbnetlite-preinit.conf.sig
x usbnetlite.conf.sig
x update-filelist.dat.sig
x update-filelist.dat
--
Running 'install.sh' for 'usbnetlite 1.0.M I khf' (Update_usbnetlite_1.0.M_install_khf.bin) @ Wed, 25 Sep 2024 12:19:00 -0400

system: I usbnetlite:install::our custom directory already exists, checking if we have custom content to preserve
Segmentation fault

Hu oh... Got return code 139 . . . :(

@mergen3107

Copy link
Copy Markdown
Contributor

The culprit lays somewhere here in the install.sh (L36-55):

# Install our hack's custom content
# But keep the user's custom content...
if [ -d /mnt/us/${HACKNAME} ] ; then
    logmsg "I" "install" "" "our custom directory already exists, checking if we have custom content to preserve"
    # Custom IP config
    if [ -f /mnt/us/${HACKNAME}/etc/config ] ; then
        cfg_expected_md5="ea5d57ffaa30e34c9232a54523f95163"
        cfg_current_md5=$( md5sum /mnt/us/${HACKNAME}/etc/config | awk '{ print $1; }' )
        cfg_md5_match="false"
        for cur_exp_md5 in ${cfg_expected_md5} ; do
            if [ "${cfg_current_md5}" == "${cur_exp_md5}" ] ; then
                cfg_md5_match="true"
            fi
        done
        if [ "${cfg_md5_match}" != "true" ] ; then
            HACK_EXCLUDE="${HACKNAME}/etc/config"
            logmsg "I" "install" "" "found custom ip config, excluding from archive"
        fi
   fi
fi

@mergen3107

Copy link
Copy Markdown
Contributor

md5sum command works fine on the backup etc/config file:

[root@kindle etc]# md5sum config | awk '{print $1; }'
af10fb1aaf3e75c164752c9dc5528c84

What else might go wrong?

@benoit-pierre

Copy link
Copy Markdown
Member

The shell itself might be crashing? I would add a set -x at the top.

@mergen3107

mergen3107 commented Sep 26, 2024

Copy link
Copy Markdown
Contributor

Update: it was totally my fault that OTA update worked. After moving to 5.16.9 I just blindly copied blocking commands, but I didn't check that these are just logging commands, not OTA.
Hence PEBCAK :D

P.S. Although, there is now another ota binary script /usr/sbin/otaup...

@NiLuJe

NiLuJe commented Sep 26, 2024

Copy link
Copy Markdown
Member

awk might be the culprit in whatever conditions OTA runs it.

There was a weird issue like that at some point, but I don't quite recall all the details...

@benoit-pierre

Copy link
Copy Markdown
Member

Everything is in place: base, frontend, docker images. So do we want to add kindlehf to the base build matrix and add it to the nightlies?

@hius07

hius07 commented Nov 23, 2024

Copy link
Copy Markdown
Member

Recently introduced PaperWhite 6 and Colorsoft are shipped with 5.17.0 (no jailbreak yet though).

@notmarek

notmarek commented Nov 23, 2024 via email

Copy link
Copy Markdown
Contributor Author

@mergen3107

Copy link
Copy Markdown
Contributor

New JB called MountSus is expected to be released around Christmas last time I heard.

@Frenzie

Frenzie commented Nov 23, 2024

Copy link
Copy Markdown
Member

So do we want to add kindlehf to the base build matrix and add it to the nightlies?

Sure. ^_^ (Assuming @NiLuJe agrees it's all ready.)

@NiLuJe

NiLuJe commented Nov 23, 2024

Copy link
Copy Markdown
Member

Sure, yeah, stuff works from our side of things ;).

0xstillb pushed a commit to 0xstillb/koreader-thai that referenced this pull request May 9, 2026
for kindles after fw 5.16.3

* Add kindlehf mk file
* Update kodev to support kindlehf
* Update OTAManager logic to support kindlehf
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants