Sync books and metadata from Calibre to KyBook 2
The script enables the bulk syncing of books and metadata from Calibre to KyBook 2 using Calibre's Wireless Device Connection facility.
KyBook 2 was supposed to have been superseded by KyBook 3. However, KyBook 3 proved unsuitable for reading PDFs (the bulk of my library) because of a lack of double-page view and in-app rotation lock.
KyBook 2 already supports downloading from Calibre using OPDS, but this script allows more flexibility in mapping Calibre's tags to KyBook 2 subjects and the use of custom cover pages (Calibre's thumbnails).
- Currently, syncing from KyBook 2 to Calibre is not supported. This may be added in the future, but it is hoped that KyBook 3 will fully support PDF reading before that happens.
- Syncing is not entirely automatic and some user input is required. (Please follow the instructions below.)
- The script does not support KyBook 3. Support for KyBook 3 will be added when full PDF reading has been added (unless support for Calibre Wireless Device Connections is added to KyBook 3 itself).
- Start Calibre
- Select
Connect/share
- Select
Start wireless device connection
- Select
OK
. - In a terminal, run calibre_to_kybook2.py
- Wait for Calibre to connect to KyBook 2
- Select the books you wish to sync and select
Send to device
- Books will be downloaded to
~/KyBook2/Books
- Covers will be downloaded to
~/KyBook2/App/Images
- A
.json
file will be downloaded to~/KyBook2/App/Backups
- The location
~/KyBook2/
can be changed by editingBASE_DIR
in calibre_to_kybook2.py
- Connect the device to iTunes
- Select the device that KyBook 2 is installed on
- Select
File Sharing
- Select
KyBook
in theApps
column - Drag and drop the
App
folder on to theDocuments
column - Select
Replace
if prompted
- Select menu (three horizontal lines at top left)
- Select Settings
- Select Database
- Select Restore Database
- Select the
.json
file - Close KyBook 2
- Drag and drop the
Books
folder on to KyBook's Documents - Select
Replace
if prompted
The order of the steps is important, so if it appears not to work, just repeat.