docs(user): koreader-setup — document the actual plugin menu from source
The guide documented setup and stopped. Everything after 'approved' was undocumented: the real menu tree from bookhoard.koplugin main.lua is now in the guide — one-tap actions (Push progress / Pull progress / Sync rating, review & time now / Setup OPDS catalog / Device info / Disconnect / Register device), Automatically push progress (DEFAULTS OFF — the likely cause of 'sync not working after approval' reports), Periodically sync every # pages (default 50), Sync mode (Immediate/Checkpoint), Sync behavior (Sync to a newer state default Prompt / to an older state default Never — the device-side side of conflict handling), and the seven What to sync toggles (progress, bookmarks, highlights, notes, ratings, review, reading time — all on by default; the ratings/review/reading-time sync was entirely missing from docs despite the six server endpoints). Also fixed: Android 'coming later' line now points at the real app, OPDS auto-registration verified in the approval poll (setupOPDS on approved), expiry wording, and a troubleshooting entry for the wifi-toggle permission message auto-sync can raise. Ground truth noted in a source comment; verify against plugin source on plugin changes.
This commit is contained in:
1 parent
788e9463cf
commit
9b2d3da7e2
1 file changed
+122
-25
@@ -1,16 +1,24 @@
|
|||||||
|
<!-- Ground truth: bookhoard.koplugin main.lua (menu tree, defaults, approval
|
||||||
|
flow) + the server-side koreader endpoints. Re-verify against the plugin
|
||||||
|
source when the plugin changes. -->
|
||||||
|
|
||||||
# KOReader Device Setup Guide
|
# KOReader Device Setup Guide
|
||||||
|
|
||||||
This guide will help you set up KOReader on your e-reader device to sync with Bookhoard.
|
This guide will help you set up KOReader on your e-reader device to sync with
|
||||||
|
Bookhoard — reading position, bookmarks, highlights, notes, and even your
|
||||||
|
ratings, reviews, and reading time.
|
||||||
|
|
||||||
## What is KOReader?
|
## What is KOReader?
|
||||||
|
|
||||||
KOReader is an open-source e-reader application that supports a wide range of e-reader devices including:
|
KOReader is an open-source e-reader application that supports a wide range of
|
||||||
|
e-reader devices including:
|
||||||
|
|
||||||
- Kindle devices (Paperwhite, Oasis, Voyage, etc.)
|
- Kindle devices (Paperwhite, Oasis, Voyage, etc.)
|
||||||
- Kobo devices (Clara, Aura, Nia, etc.)
|
- Kobo devices (Clara, Aura, Nia, etc.)
|
||||||
- PocketBook devices
|
- PocketBook devices
|
||||||
|
|
||||||
It also runs on Android tablets and phones, although Bookhoard's dedicated mobile apps (coming later) will be the better option there.
|
It also runs on Android tablets and phones — though on Android the dedicated
|
||||||
|
[Bookhoard app](android-app.md) is the better option.
|
||||||
|
|
||||||
## Prerequisites
|
## Prerequisites
|
||||||
|
|
||||||
@@ -67,7 +75,8 @@ Before you begin, make sure you have:
|
|||||||
|
|
||||||
## Connecting KOReader to Bookhoard
|
## Connecting KOReader to Bookhoard
|
||||||
|
|
||||||
Setup is done **on the server**: you approve the device from the Bookhoard web interface — no usernames, passwords, or tokens to type on the device.
|
Setup is done **on the server**: you approve the device from the Bookhoard
|
||||||
|
web interface — no usernames, passwords, or tokens to type on the device.
|
||||||
|
|
||||||
### Step 1: Install the Bookhoard Plugin
|
### Step 1: Install the Bookhoard Plugin
|
||||||
|
|
||||||
@@ -77,7 +86,7 @@ Setup is done **on the server**: you approve the device from the Bookhoard web i
|
|||||||
|
|
||||||
### Step 2: Point the Plugin at Your Server
|
### Step 2: Point the Plugin at Your Server
|
||||||
|
|
||||||
1. Open KOReader, tap the **wrench icon** at the top
|
1. Open KOReader, tap the **wrench icon** at the top (the tools menu)
|
||||||
2. Find and tap **Bookhoard sync**
|
2. Find and tap **Bookhoard sync**
|
||||||
3. Tap **Server URL**, enter your server address, then tap **OK**:
|
3. Tap **Server URL**, enter your server address, then tap **OK**:
|
||||||
|
|
||||||
@@ -87,34 +96,116 @@ Setup is done **on the server**: you approve the device from the Bookhoard web i
|
|||||||
|
|
||||||
Use your server's LAN IP (or domain if you have one configured).
|
Use your server's LAN IP (or domain if you have one configured).
|
||||||
|
|
||||||
### Step 3: Approve the Device in Bookhoard
|
### Step 3: Register the Device
|
||||||
|
|
||||||
1. On your computer or phone, open Bookhoard and go to the **Devices** page (sidebar navigation)
|
1. In the same **Bookhoard sync** menu, tap **Register device**
|
||||||
2. Refresh the page — your device appears under **Pending Device Registrations**
|
2. On your computer or phone, open Bookhoard and go to the **Devices** page
|
||||||
3. Click **Approve** to connect the device
|
(sidebar navigation)
|
||||||
|
3. Your device appears under **Pending Device Registrations** — click
|
||||||
|
**Approve** to connect it
|
||||||
|
|
||||||
Once approved, the plugin picks up its credentials automatically — reading progress sync and OPDS catalog access are set up automatically. No further configuration is needed.
|
The plugin waits on the device and finishes by itself the moment you
|
||||||
|
approve. Once approved, its credentials are stored automatically, sync
|
||||||
|
events are armed, and Bookhoard's OPDS catalog is added to your KOReader —
|
||||||
|
no further configuration is needed.
|
||||||
|
|
||||||
> **Note:** Pending registrations expire after 5 minutes. If yours expires, just re-run the sync from the plugin menu and approve again.
|
> **Note:** Pending registrations expire after 5 minutes. If yours expires
|
||||||
|
> ("Registration expired"), just tap **Register device** again and approve.
|
||||||
|
|
||||||
### Auth Token (Advanced)
|
### Auth Token (Advanced)
|
||||||
|
|
||||||
The Devices page shows each KOReader device's **Auth Token**. You normally never need it (the plugin receives it automatically during approval), but it can be re-entered manually in the plugin settings if you're moving a setup between devices or debugging.
|
The Devices page shows each KOReader device's **Auth Token**. You normally
|
||||||
|
never need it (the plugin receives it automatically during approval), but it
|
||||||
|
can be re-entered manually in the plugin settings if you're moving a setup
|
||||||
|
between devices or debugging.
|
||||||
|
|
||||||
|
## The Bookhoard sync menu
|
||||||
|
|
||||||
|
Everything the plugin can do lives in one place: **wrench icon → Bookhoard
|
||||||
|
sync**. The menu changes shape depending on whether you are connected.
|
||||||
|
|
||||||
|
### Before you're connected
|
||||||
|
|
||||||
|
- **Server URL** — your server's address
|
||||||
|
- **Register device** — starts the approval flow above
|
||||||
|
|
||||||
|
### Once connected — one-tap actions
|
||||||
|
|
||||||
|
| Menu item | What it does |
|
||||||
|
| --- | --- |
|
||||||
|
| **Push progress from this device** | Force-push this device's position to the server |
|
||||||
|
| **Pull progress from server** | Force-pull the server's position onto this device |
|
||||||
|
| **Sync rating, review & time now** | Push your rating, review, and accumulated reading time for the current book immediately |
|
||||||
|
| **Setup OPDS catalog** | (Re-)adds Bookhoard's catalog to KOReader's OPDS list — normally done for you at approval |
|
||||||
|
| **Device info** | Shows this device's ID and the server it talks to |
|
||||||
|
| **Disconnect** | Forgets the device's credentials (after a confirmation) |
|
||||||
|
|
||||||
|
### Automatically push progress
|
||||||
|
|
||||||
|
This toggle is the on/off switch for background sync — **it starts off**, so
|
||||||
|
after approval, turn it on to get automatic syncing. With it on, progress
|
||||||
|
pushes as you read and on close/suspend; the plugin may prompt about turning
|
||||||
|
Wi-Fi on at those moments depending on your device.
|
||||||
|
|
||||||
|
Two related settings sit under it:
|
||||||
|
|
||||||
|
- **Periodically sync every # pages** — how many page turns between updates
|
||||||
|
(default 50; set 0 to disable periodic updates)
|
||||||
|
- **Sync mode** — **Immediate** pushes right away, **Checkpoint** batches
|
||||||
|
changes for slower connections or battery saving
|
||||||
|
|
||||||
|
### Sync behavior — who wins when states differ
|
||||||
|
|
||||||
|
These two settings decide what the device does when its progress and the
|
||||||
|
server's disagree, without you opening the Conflicts page:
|
||||||
|
|
||||||
|
- **Sync to a newer state** — the server has *newer* progress than this
|
||||||
|
device (default **Prompt**: the device asks before adopting it; alternatives
|
||||||
|
are **Silently** or **Never**)
|
||||||
|
- **Sync to an older state** — this device has *newer* progress than the
|
||||||
|
server (default **Never**: the device never rolls itself back)
|
||||||
|
|
||||||
|
Set both to **Silently** for hands-off syncing, or leave the defaults if you
|
||||||
|
want a say whenever progress would move.
|
||||||
|
|
||||||
|
### What to sync
|
||||||
|
|
||||||
|
Seven toggles, all on by default, each controlling one kind of data:
|
||||||
|
|
||||||
|
- **Reading progress**
|
||||||
|
- **Bookmarks**
|
||||||
|
- **Highlights**
|
||||||
|
- **Notes**
|
||||||
|
- **Ratings** — your book ratings made in KOReader
|
||||||
|
- **Book review** — your review text
|
||||||
|
- **Reading time** — time-spent statistics
|
||||||
|
|
||||||
|
Turn off anything you'd rather keep local; the rest keeps flowing both ways.
|
||||||
|
|
||||||
## What Syncs
|
## What Syncs
|
||||||
|
|
||||||
Once connected, the following sync automatically in both directions between KOReader and Bookhoard (web and other devices):
|
Once connected and enabled, the following sync in both directions between
|
||||||
|
KOReader and Bookhoard (web, Android, and other devices), each governed by
|
||||||
|
its toggle above:
|
||||||
|
|
||||||
- **Reading position** — percentage, chapter, and EPUB CFI where available
|
- **Reading position** — percentage, chapter, and EPUB CFI where available
|
||||||
- **Bookmarks**
|
- **Bookmarks**
|
||||||
- **Highlights** — including highlight colors, mapped between the web and KOReader palettes
|
- **Highlights** — including highlight colors, mapped between the web and
|
||||||
|
KOReader palettes
|
||||||
- **Notes** — standalone and attached to highlights
|
- **Notes** — standalone and attached to highlights
|
||||||
|
- **Ratings, review, and reading time** — pushed to the server (push any
|
||||||
|
time from the menu with **Sync rating, review & time now**)
|
||||||
|
|
||||||
Books are matched automatically using UUIDs, file hashes (SHA-256, format-aware so converted files still match), file aliases, and title/author fallback. If a book can't be matched, it shows up under the device's **Unlinked Books** in Bookhoard, where you can link it manually.
|
Books are matched automatically using UUIDs, file hashes (SHA-256,
|
||||||
|
format-aware so converted files still match), file aliases, and
|
||||||
|
title/author fallback. If a book can't be matched, it shows up under the
|
||||||
|
device's **Unlinked Books** in Bookhoard, where you can link it manually.
|
||||||
|
|
||||||
## OPDS Wireless Book Delivery
|
## OPDS Wireless Book Delivery
|
||||||
|
|
||||||
Once your device is approved, the plugin also registers Bookhoard's OPDS catalog, so you can browse and download books wirelessly — no USB cable needed.
|
At approval the plugin adds Bookhoard's OPDS catalog to KOReader (and
|
||||||
|
**Setup OPDS catalog** re-adds it any time), so you can browse and download
|
||||||
|
books wirelessly — no USB cable needed.
|
||||||
|
|
||||||
### Browse and Download Books
|
### Browse and Download Books
|
||||||
|
|
||||||
@@ -129,7 +220,8 @@ Once your device is approved, the plugin also registers Bookhoard's OPDS catalog
|
|||||||
- **PDF**: Fixed-layout documents
|
- **PDF**: Fixed-layout documents
|
||||||
- **CBZ**: Comic book archives
|
- **CBZ**: Comic book archives
|
||||||
|
|
||||||
Books downloaded via OPDS are automatically matched to your library, so their progress syncs from the first page.
|
Books downloaded via OPDS are automatically matched to your library, so
|
||||||
|
their progress syncs from the first page.
|
||||||
|
|
||||||
## Troubleshooting
|
## Troubleshooting
|
||||||
|
|
||||||
@@ -142,7 +234,7 @@ Books downloaded via OPDS are automatically matched to your library, so their pr
|
|||||||
1. Verify the Server URL is correct (no trailing path — just the base address)
|
1. Verify the Server URL is correct (no trailing path — just the base address)
|
||||||
2. Make sure KOReader is connected to Wi-Fi
|
2. Make sure KOReader is connected to Wi-Fi
|
||||||
3. Check the Bookhoard server is reachable from the device's network
|
3. Check the Bookhoard server is reachable from the device's network
|
||||||
4. Registrations expire after 5 minutes — re-run the sync and approve quickly
|
4. Registrations expire after 5 minutes — tap **Register device** again and approve quickly
|
||||||
|
|
||||||
### Connection Refused
|
### Connection Refused
|
||||||
|
|
||||||
@@ -161,11 +253,18 @@ Books downloaded via OPDS are automatically matched to your library, so their pr
|
|||||||
|
|
||||||
**Solutions**:
|
**Solutions**:
|
||||||
|
|
||||||
- Trigger a manual sync from the plugin menu
|
- **Automatically push progress** defaults to off — turn it on in the menu, or push once with **Push progress from this device**
|
||||||
- Check the device shows as enabled on the **Devices** page (open its settings from the icon next to the device)
|
- Check the device shows as enabled on the **Devices** page (open its settings from the icon next to the device)
|
||||||
- Verify the book appears as an unlinked book for the device and link it if needed
|
- Verify the book appears as an unlinked book for the device and link it if needed
|
||||||
- Check Bookhoard server logs for errors
|
- Check Bookhoard server logs for errors
|
||||||
|
|
||||||
|
### Turning on auto-sync asks about Wi-Fi
|
||||||
|
|
||||||
|
If enabling **Automatically push progress** shows a message about
|
||||||
|
**"Action when Wi-Fi is off"**, open KOReader's Network settings and set
|
||||||
|
that action to **turn on** — auto-sync needs permission to bring Wi-Fi up by
|
||||||
|
itself.
|
||||||
|
|
||||||
### Conflicts Detected
|
### Conflicts Detected
|
||||||
|
|
||||||
**Problem**: Sync conflicts when reading the same book on multiple devices
|
**Problem**: Sync conflicts when reading the same book on multiple devices
|
||||||
@@ -174,7 +273,10 @@ Books downloaded via OPDS are automatically matched to your library, so their pr
|
|||||||
|
|
||||||
1. Open the book's detail page and click **Sync Progress**, or open the Conflicts page (`/conflicts`)
|
1. Open the book's detail page and click **Sync Progress**, or open the Conflicts page (`/conflicts`)
|
||||||
2. Review the progress reported by each device
|
2. Review the progress reported by each device
|
||||||
3. Choose which device's progress to keep
|
3. Choose a resolution: keep one side's progress, keep the server's, or let the furthest progress win
|
||||||
|
|
||||||
|
For day-to-day control of the same question on the device itself, use the
|
||||||
|
**Sync behavior** settings (newer state / older state).
|
||||||
|
|
||||||
## Security Best Practices
|
## Security Best Practices
|
||||||
|
|
||||||
@@ -189,8 +291,3 @@ Books downloaded via OPDS are automatically matched to your library, so their pr
|
|||||||
- [KOReader Forum](https://www.mobileread.com/forums/forumdisplay.php?f=271)
|
- [KOReader Forum](https://www.mobileread.com/forums/forumdisplay.php?f=271)
|
||||||
- [Bookhoard Universal Sync Guide](../sync-guide.md)
|
- [Bookhoard Universal Sync Guide](../sync-guide.md)
|
||||||
- [Bookhoard KOReader Plugin](https://git.linuxhg.com/Bookhoard/bookhoard.koplugin)
|
- [Bookhoard KOReader Plugin](https://git.linuxhg.com/Bookhoard/bookhoard.koplugin)
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
**Last Updated**: August 2026
|
|
||||||
**Bookhoard Version**: 1.0
|
|
||||||
Reference in new issue
Block a user