I know it’s sort of odd, but one of the main things I do with handheld devices is read ebooks. The games, wifi access, and all the other toys are great, but if I can’t lie in bed with it and read a good book, it’s useless to me.
I recently got an iPod Touch. I love this thing. There’s so much to play around with. At first I ran into some confusion with reading ebooks and went through alot of trial and error trying to find the best method of not only reading ebooks on the Touch, but getting them on there in the right format. I’ve settled on a pretty good system, most of what I’ve picked up here and there via googling, so figured I’d pass it along.
I have alot of ebooks. Most of them are in .LIT format, but there’s PDFs, .TXT, .RTF and a ton of other formats. When I was primarily using a Palm Tungsten E2, I would normally use something like ConvertLIT Gui to extract the .LIT files to HTML and then use Plucker to convert and suck them into the E2. To be honest, it was a pain in the ass.
I’ve tried a few applications from the Apple App Store for the iPod Touch. The 2 I had narrowed it down to were BookShelf or Stanza. BookShelf had a “lite” version that was available for free, but you have to pay for the full version. Stanza, on the other hand, is completely free.
As far as features go, both of them were full featured, with control over how the text looks on the screen. There was one feature in BookShelf that I couldn’t seem to find in Stanza, and that is auto-scroll. When you’re on your back in bed reading, tapping the screen to change pages can get tiring. On the Palm, I used the auto-scroll feature of Plucker most times that I read. Once you found the right speed, it was perfect. I’ve been unable to find something similar in Stanza, and hope they add it in the future. It’s seriously my only complaint.
Initially getting ebooks onto the iPod for both apps was a major pain as well.
For BookShelf, you can download a server from their website which you install on your Windows or Mac desktop. This server is written in Java, and to be honest I found it not to work most of the time. When you go to the Available Shelves screen you see the shelf server listed as a nearby shelf. That part works fine, but much of the time when browsing to a directory the server application would hang, with the Java process consuming alot of CPU. Eventually the iPod app would time out. This seems worse the more files you have in a given directory, but I had hangs and freezes even with 4 or 5 .LIT files in a directory.
For Stanza, there’s a number of ways of getting ebooks into the app on the iPod. You can download a beta version of Stanza Desktop from their website. To be honest, I was not impressed. To get an ebook into the iPod app, you have to open each individual ebook in Stanza Desktop and then enable sharing. Way too time consuming if you want to load a large number of ebooks. Another method is to download and use iPhone Explorer to copy any .EPUB files you may have manually onto the iPod. If all your ebooks are in this format, this is probably the quickest and easiest way to load alot of files. More information about that method can be found in their FAQ HERE. Since I had almost no .EPUB files, that didn’t help me very much.
Finally, also in their FAQ, there’s mention of Calibre. Calibre is a free ebook management application that can also convert between formats. Even better, it includes a content server so that you can browse and download books directly from Calibre in the Get Books section of Stanza on the Touch. Using Calibre is also helping me organize my ebook collection, with the proper meta data and cover art.
I did run into one problem with the Calibre content server. I was never able to start it via the Preferences interface inside of the Calibre application. I always got errors about port 8080 (or any other port I tried) being unavailable. This with firewalling and antivirus turned completely off. I got around this problem by just browsing to c:\Program Files\Calibre and double clicking on the calibre-server.exe application. By default it binds to port 8080, which was fine for my needs.
So, even tho I’m sure it’s documented on a number of blogs out there, let me outline the process I have for organizing ebooks and making them available to Stanza. Calibre is available for Windows, Mac and Linux. I’m going to talk about the Windows version here.
- Stanza installed on your iPod Touch or iPhone – LINK
- Calibre install on a Windows desktop – LINK
- Wifi (both your iPod/iPhone and your Windows desktop need to be on the same network)
Download and install Calibre as you would any Windows application. When you run it for the first time it’s going to ask you to identify a directory to store ebooks in. When you import ebooks into Calibre they are copied into subdirectories under the one you choose. The subdirectories are broken down by author name and book title.
Once you’re in Calibre, click on the Preferences button in the upper right of the window. In the General section, make sure the Preferred output format is set to EPUB. Stanza likes EPUB! I didn’t fiddle with anything else in the Preferences. As I mentioned earlier, I was never able to start the content server from here. Maybe you’ll have better luck, but I’ll assume you won’t. Anyways, click OK and close Preferences.
In the upper left, you can click on the small triangle to show more options for adding books. If you only have a single directory, choose the Add books from a single directory option. If you have a master directory with many subdirectories (ie subdirectories by author), choose one of the Add books from directories options. Wait for it to add all the books to it’s inventory. Don’t worry about incorrectly detected author names or book titles yet.
Once the books are added, you are going to want to edit the meta data for each book. This is a slow process, but when you’re done you’ll have all the correct information for each of your ebooks, including synopsis and book cover art. To do this, right click on each book, click Edit meta information and then Edit metadata individually. The bulk editing feature is good if you need to correct the spelling of an authors name for many books, or something to that effect.
In the edit screen, the first things I do is make sure the correct book title and author name is in place. For the Author field I’ve been doing first name first (ie Terry Brooks). The Author Sort field is last name first, and once you have the authors correct name in the Author field, you can click the little icon next to the Author Sort field and it will put the correct thing in the box for you. Once that’s done, click the Fetch metadata from server button at the bottom.
By default, Calibre uses Google Books to find metadata. It’s also highly recommended to use isbndb.com. Simply go to isbndb.com and sign up for a free account. Once you’re logged into their site, you can create a free access key. Once you have a key, put it in the box provided in Calibre when you fetch metadata. It saves the key after you use it once, so you won’t have to keep putting it in.
From the list, click the result that best describes the book (and edition) and click OK. One thing to point out here is that when you go to fetch cover art it’s going to use the ISBN number from the metadata you chose. So make sure there’s an ISBN number for the result you use. I’ve also noticed that some entries with ISBN but no published date usually has no corresponding cover art, so I usually try to find the result from a publisher I recognize (ie Del Rey) that has a published date.
Back at the metadata screen, it’ll fill in the comments box with a synopsis, the published date, publisher, and various other info. To get the cover art, click the Download cover button on the bottom right. You can also provide your own if the automated search doesn’t work out for you. Once you’re done with cover art, and making sure everything else looks ok, click OK.
Certain ebook formats include all this information already, so you may not even have to do all this for all formats. At any rate, do this for all your imported books. It’s time consuming, but everything will be organized with cover art when you’re done.
Once you’re done, select all your ebooks (shift-click), click on the triangle next to the Convert E-books button, and choose Bulk convert. Depending on how many ebooks you have, this can take a very long time. Out of the 60 ebooks I’ve added so far, I’ve only had 2 return an error when trying to convert. I’m fairly sure the .LIT files are damaged, however. What this is doing is converting the ebooks to .EPUB format. The file will be located in the same directory as the format you imported.
Once the conversion is done (or any time you want to load ebooks into Stanza), navigate to the directory you installed Calibre in (by default it’s C:\Program Files\Calibre2) and double click on calibre-server.exe. This will load up what looks to be a blank command window. At that point, the content server is running on your Windows desktop IP on port 8080. If you get a Windows Firewall notification, make sure to allow the application access to port 8080.
On your iPod Touch or iPhone, go to the App Store. Search and install Stanza. It’s very easy to find.
Once Stanza is installed, go ahead and run it and tap the Get Books icon. Click on the Shared tab. At this point, as long as you have no issues, you should see Books in calibre (on NAME) (where NAME is the name of your Windows computer). Tap on that and you can then view books in the Calibre database by author, or a number of other ways. If you have a number of books by a single author, you can navigate to that sub menu, and then tap the icon in the upper right which will download all the books in the current view. Alternately you can tap on individual books to download them.
When you’re done downloading your books, you can close the calibre-server.exe window on your Windows computer.
There’s alot of things I like about this process. I have alot of ebooks, and using a free app to organize them is something I like. That it makes it easy to get the books onto the iPod is a huge draw as well.