A Poor Man’s Wispersync

Arguably one of the Kindle’s most loved feature is the Whispersync technology. Whispersync, for those not familiar with the technology, is the ability to synchronize ones Kindle books across all kindle devices, be it an eReader, Tablet, iPad, Smartphone, PC, etc… This is all done on the application layer so the user need not lift a finger to get this great feature. However this technology is not without its limitations. One major limitation is that Whispersync does not work for personal eBooks it only works for eBooks purchased from Amazon.

For those s are completely bought in to to Amazon’s ecosystem it’s not such a big deal, but what happens when we’re not? What about those that require some degree of freedom.

Note: when I refer to a “Kindle device” I am referring to an Android device with the Kindle app installed on it.

 

THE PROBLEM

I read a lot on the go and I often find myself reading books on my phone and on my Android tablet. As a result of my reading habits the Whispersync is an important feature I can’t do without. For books I have purchased through Amazon this is no problem unfortunately for me most of my books are not from Amazon.

Considering a large majority of my books where purchased outside of the Kindle’s ecosystem the vast majority of my books could not take advantage of this excellent feature. To replicate this features I had one of two choices: I could repurchase all of my eBooks from Amazon or manually sync all the notes, last page read, and annotations for each book. While both solutions work, they are both costly.  Repurchasing the books is financially expensive and manually syncing the books is time consuming and prone to errors.  Neither was an option for me.

THE QUEST

Not happy with either option I set out to find a solution that would work for me. I did a little research and found out a neat little trick with the kindle app. It seems all of the annotations are kept in an MBP file that is generated the first time you open a MOBI/AMZ file from your Kindle device. By coping the MBP, file from my kindle device to any other kindle device, I was able to keep my devices synced. (Note the ‘last page’ setting is stored in the MOBI file, but I always used the bookmark feature to track my last page read and that information is stored in the MBP file.)

While this manual process wasn’t so time consuming or difficult, it still had its pitfalls.  I still had to remember to connect to a PC and manually copy the files from one device to the other. If I did not have access to a PC and both kindle devices with me I could not sync my devices.

So while I was one step closer to finding a solution, I still was not satisfied due to the limitations previously mentioned.  The next iteration was to use a cloud solution like Dropbox. This was a huge step in the right direction. I could now sync my device(s) without the need of a PC or having to have both devices with me.  However there was still some major limitations. There was the human element, I often forgot to upload the files to Dropbox or did not have a wireless connection to upload the changes.

So even though I was a step closer the current solution, it was not adequate. The flaws were still large enough to keep me from having a working solution.  …And so my quest, for a better solution, continued.

 

THE SOLUTION

I came to the conclusion that the only real solution is to come up with a fully automated system anything short of that would lead to failure.

The solution would required that my eBooks (MOBI and MBP files) on my Android devices sync automatically to all of my Android devices.  My first step was to see this feature existed within the current cloud apps like Dropbox, Sugarsync, Box. etc…. Could the eBooks on my Android device get pushed up to the cloud automatically and can they get automatically refreshed if the files changed in the cloud. No dice, while their PC apps did offer that feature, their Andoid clients did not.

The next step would be to look for any app that integrated with Dropbox, Sugarsync, Box, etc…. That’s where I struck gold!  An app, called DropSync, did just what I was looking for. This app allowed a user to synchronize all files within a directory on an Android device to one’s Dropbox account.  The app was written by a guy who was just as frustrated with the limitations of the Dropbox app as I was.  In particular, how Dropbox lacked the synchronization feature that existed with the desktop.

Like many apps on the Play market there is a fee version and a paid version.  The free version is a light version and has a few limits imposed by the developer. As of this writing, the limitations are as follows: you can only synchronize one directory, there is a size limit on synchronized files, and you can only use the default periodics to kick of the synchronization process. For the purpose of this article these limits do not affect us. However, I did purchase the license because I read large PDF files that do exceed the limit, also its nice to support the developer who created such a fine product. One thing I will add is this developer is very active and keeps his product up to date, something you don’t always see.

Apps you will need, for this tutorial, are all found in the Play store.  These apps are, Kindle for Android, DropBox, and DropSync.

 

 

HOW TO CONFIGURE:

1. Install the Kindle app to your Android device.
2. Login to your Kindle app and download a book, this will create the kindle directory on your Android device.
3. Install the Dropbox app.
4. Login to the Dropbox app(create an account if it’s your first time–that is a 5min. process.)
5. Download the Dropsync app.
6. Configure the app to sync with Dropbox. (see images).

 

Step 1: Link Dropbox with Dropsync

Step 1: Link Dropbox with Dropsync

Step 2: Accept the authentication, depress the "Allow" button.

Step 2: Accept the authentication, depress the “Allow” button.

Step 3: Read screen and hit the "Next" button

Step 3: Read screen and hit the “Next” button

Step 4: Select the Kindle folder

Step 4: Select the Kindle folder

Step 4-b: After selecting the Kindle directory in step 4, click the"Select" button.

Step 4-b: After selecting the Kindle directory in step 4, click the “Select” button.

Step 5: IMPORTANT this is on the Drop box Account. 1. Create a kindle directory. 2.Select the directory. 3. Depress the "Next" button.

Step 5: IMPORTANT this is on the Drop box Account. 1. Create a kindle directory. 2.Select the directory. 3. Depress the “Next” button.

Step 6: Setup is complete hit the "Done" button.

Step 6: Setup is complete hit the “Done” button.

 

And this is all there is too it. You will have to repeat steps 1-6 for every android device you wish to synchronize with.

7.(Optional)  You don’t need to install the desktop version to sync the devices but having the desktop makes it very easy to deploy files to all devices after you create the MOBI.

 

That’s all there is to it,

    Enjoy and keep reading.

 

3 thoughts on “A Poor Man’s Wispersync

  1. I recently worked through all of this manually, and then, only after finishing, found this post! However, I have an additional problem – I’m trying to sync not only across Android devices, but also with the Kindle desktop app. It appears that the desktop app uses *.mbp files, while the Android app uses *.embp (encrypted mbp?) files…so the sync succeeds, but the two applications refer to different files, so the notes aren’t copied…..any ideas?

    • This is something new back when I wrote this article Kindle 4 Android used mdp files.

      I only use android devices for reading so I haven’t noticed this.

      What I would recommend is try renaming the file once it’s sync and see if the app supports it. E. G. Rename the extension emdp to mdp

Leave a comment