kobo

koboが来た



早速裏蓋を外しました。
素手で簡単に開きました。
Li-ion電池がかなり体積を食っています。


CPUはfreescaleのMCIMX508CVM8B ARM A9 coreです。


RAMはSAMSUNG K4X2G323PC 256MBです。


内蔵不揮発メモリーとしてSandiskの2GB microSDカードが入っています。


上を覆っているカバーをSanDiskの文字のS->kの方向にずらすとロックが外れて開きます。
後ほど、内容をコピーして32GBに増量します。


Wi-fi moduleです。


シリアル通信用の端子が見えます。なんて親切なのでしょうw

その上にはTIのMSP430G2333 MCUが見えます。


E-Ink表示器のコネクターを抜いてみました。
表示は通電時と変わらず最後に表示していたものが映ったままです。


コネクターを戻し電源を入れると、何事もながったように動きます。


では、32GBにメモリーを増設しましょう。
microSDにはTranscend 32GB class 4を使いました。Windowsにkoboから外した2GBのμSDを挿すと「formatが必要」の旨表示が出ますが無視してDD for Windowsを立ち上げます。
ディスク選択、ファイル指定をして読み取り、照合を行います。
次いで、32GB μSDを挿し書込・照合をします。
この作業が終われば基本的に作業ファイルは不要ですが念のためzipして保存しておきましょう。


DDでコピーしただけではパーテーション情報が2GBのままなので32GBにはなりません。
MiniTool Partition Wizard Home Editionで最後のパーテーションをdiskいっぱいにResizeします。
完了には少々時間がかかります。

ここまで出来れば、koboに戻して使って良いのですが、ちょっと寄り道します。

koboはLinuxで動いているのでこれが表に出るようにします。
今度はWindowsではなくDebian Linuxにmountし幾つかファイルを弄ります。
rootfsの中のetc/init.d/rcSの末尾に

hostname kobo
mkdir -p /dev/pts
mount -t devpts devpts /dev/pts

etc/servicesのftp, telnetのコメントアウトを外す
ftp             21/tcp
telnet        23/tcp
etc/inetd.confの末尾に

ftp stream tcp nowait root /bin/busybox ftpd -w -S  /
telnet stream tcp nowait root /bin/busybox    telnetd -i

etc/inittabの末尾に

::respawn:/usr/sbin/inetd -f /etc/inetd.conff


以上です。
koboを元通り組み立てWi-fiを有効にしてブラウザを立てると、外部からtelnet/ftpでlongin可能になります。
root でno passwdですから、localの限られたLANだけで使ってください。



次はコンテンツです。青空文庫の蔵書11,000冊を自動取得します。
Linuxで
wget -k -r  http://www.aozora.gr.jp/
コンテンツは
www.aozora.gr.jp/cards/作家id/files/作品id.html
と整理されているので
% mkdir /tmp/aozora
% find www.aozora.gr.jp/ -name files -print |awk '{ print "ls " $1 "/*.html" }' | sh | awk '{print "cp " $0 " /tmp/aozora/" }' | sh
で/tmp/aozora/に集めることができます。

集まってもepubのように作品名、作家名が明示的に出るわけではないので検索できません。

そこで
for i in [0-9_]*.html
do
nkf -w $i |
awk '/<[Ti][Ii][Tt][Ll][Ee]>/ {
sub(".*<[Ti][Ii][Tt][Ll][Ee]>","")
sub("</[Ti][Ii][Tt][Ll][Ee]>.*","")
print "mv '$i' \"" $0 ".html\""
end
}'
done | sh
とやってtitle tagの内容をファイル名にしました。
約11,000冊で460MBです。起動時間は56秒。これくらいが限界でしょう。
これなら32GBに増設することなく収まった結果です。
まあ、実用性より興味本位でやっているので、結果はどうでもよいのですが…

Linuxの使い勝手ですが、15分ぐらいでtelnetが切れてしまうので、イマイチ使いがったが悪いのとgcc tool chainがないので、開発はできません。
ntpd -q -p ntp.server
として時計合わせしたりdu, dfぐらいしか有効なコマンドがありません。

ぜひdevelop tool kitをリリースしていただきたいところです。




databaseの再構築
koboはdatabaseにSQLite3を使っていますが、手動で「本」を追加していくとかなりの頻度でdatabaseが壊れます。
追加した書籍が検索で出て来なくなって読めない場合などは次の手順でdatabaseを再構築しましょう。
  1. PCとusb接続する。
  2. .kobo\KoboReader.sqlite を削除する。
  3. setupを再実行する。
setupはusb経由で行うとライブラリー同期中に無限ループに落ち込み、終了しないことがあったのでWi-Fi経由で行なっております。


最後に重大なQ&Aをお届けします。

Q:楽天を退会すると購入したコンテンツを読めなくなると人から聞い たのですが事実でしょうか?
また、再入会した場合、 読めなくなったコンテンツは再び読めるようになるのでしょうか?
あるいは再度購入しなければならないのでしょうか?

A:このたびはご利用いただきまして、誠にありがとうございます。
電子ブック楽天<kobo>カスタマーケアでございます。

kobo Touch をお使いいただくには楽天会員IDを利用してログインしていただ く必要がございます。
初期設定がお済みでご登録いただいたIDにてkobo Touch にログインしていただいている間は
情報が保持されされますのでkobo Touch に入っている本をお読みいただくことはできますが
kobo Touch を利用してのストア検索や書籍のご購入はしていただくことができ ません。
また、 一度削除された楽天会員登録は削除後に会員情報を元に戻すことは できません。
恐れ入りますがご了承の程、お願い申し上げます。

何かご不明な点がございましたらお気軽にご連絡ください。
© 2012 S.Makino