calibre - koreader/koreader GitHub Wiki

The calibre plugin supports sending documents from your calibre library using a wireless connection. It also supports searching across the calibre metadata available on the device.

1. Metadata search

TODO

2. Wireless client

To use this plugin you need to keep your PC that runs Calibre and your KOReader device in one local network usually in one router. Then start your Calibre wireless device connection as the following screenshot shows: Start calibre wireless connection

Use the default option in the popup window should be OK as for Calibre version 4.19.

After the calibre wireless device connection is established (the red indicator of the connection button changes into green), go to the plugin tab of KOReader and select "Connect" option in the "Calibre" plugin. If all things go right Koreader should say "Connected to Calibre Server at somehost:someport" and your Calibre should recognize KOReader as a wireless device like this: Connected calibre server

You can send one or more documents to your KOreader device from your Calibre Library now: Send documents to KOReader

Note that if it's the first time you run Calibre plugin, you may be prompted to choose the "Inbox" directory in which the received documents will be saved.

If your device doesn't show up but you can connect to Calibre on your ereader, your wifi is probably disabled after being inactive.


2.1 Faster sync

If you're trying to copy many files wirelessly onto your device and the process seems to be taking a long time, try navigating one directory "up" in KOReader (if you're viewing the directory into which the files are being imported). Sync will continue, but will now be significantly faster since KOReader will no longer be trying to update your list of files with every new book that's received.

This is particularly noticeable on Android.


2.2 Changing filename template

The usual way of changing filename templates doesn't work with the SmartDevice driver used for calibre wireless connection. Instead you need to customize the SmartDevice App Interface plugin directly by following these instructions.

Select "Preferences" in the Calibre toolbar, then select "Plugins" under the advanced row. calibre1

Then search for "SmartDevice", selecting SmartDevice App Interface. calibre1

Select Customize Plugin, here you can change your filename template and click ok to save your template.

calibre1

To understand how calibre's template language works see the instructions in the calibre manual: https://manual.calibre-ebook.com/template_lang.html

2.3 Compatibility between wireless and wired libraries.

None.

By default the wireless transfers will store documents on your "calibre inbox dir" (configurable from plugin settings). USB transfers rely on calibre and the way calibre interacts with your particular device's brand.

OPTION 1: Changing filename templates

  1. Change the generic template
  2. Change the smart device app template
  3. Make sure both are exactly the same
  4. Change "calibre inbox dir" to the folder where calibre put books on your platform
  5. Accept the "I know what I'm doing" warning.

OPTION 2: Disable calibre driver

  1. Disable the calibre driver for your device's brand (within calibre itself, drivers are implemented as plugins)
  2. Use "connect to folder" instead.
  3. Change "calibre inbox dir" to the folder where you put books

Both options should give you the same feature set. If you rely heavily on calibre you might want to try 1 since it preserves the calibre driver for your platform.

2.4 Ports (Firewall)

In order for the wireless connection to work, certain ports need to be opened in the firewall of the computer hosting Calibre.

By default, the port used for the wireless connection is 9090, though this may be changed by the user. It is a TCP connection.

The automated discovery protocol (Calibre's "smart device app" protocol) probes ports 54982, 48123, 39001, 44044, and 59678 over UDP to discover the Calibre wireless server. At least one of these ports needs to be opened on the firewall. Note that these ports may conflict with mDNS and as such Calibre may not be able to bind to all of them.