症状
 Kindle 2/DXにおいて、Kindle ストアにはつなげれるが、コンテンツのダウンロードやSyncは、currently unable to connect になって、決してできない。この時、Home画面で、Del @Time (enter) で表示される日付は、1970年になっている。
原因
 Kindle 2/DXは、機器の時間を kindle-time.amazon.comと通信して得ているが、それがなんらかの理由で出来ず、正確な時間を取得できない。その為、ダウンロードに必要なセキュア・コネクションをもてないので、コンテンツのダウンロードが出来ない。Amazonは、この問題指摘を、amazon kindle device forum で指摘されているが、なにかしら技術的な問題があるようで、fix できていない。回避方法は、jailbreakするしかないので、amazon は公開していない。

解決方法
 jailbreakして、usbnetworkをinstallし、telnet over usb で接続し、dateコマンドで時間を設定する。

必要な物
  • Kindle 2 or DX
  • USB cable(MicroB-TypeA)
  • Linux or Mac


Linuxは、usbnetという機能がサポートされていることが必要。Arch Linuxでは、標準でサポートされている。

手順

1 mobilereadから、jailbreakとusbnetwork をダウンロードする
2 jailbreakをインストールする。手順は、付属文書にある
3 usbnetworkをインストールする。付属文書の手順にしたがう。
4 Linux では、modprobe usbnet を行う。これで、エラー表示がusbnetをカーネルに組み込むか、ドライバーモジュールの作成が必要
5 @ :debug on で、デバグモードオン
6 `usbNetwork でUSB接続をオンにする
7 USBケーブルで、Linuxとつなぐ
8 Linux側で、dmesgで、USBのネットワーク接続がされていることを確認。IF名を確認
9 Linux側で、スーパーユーザー権限で、ifconfig interface_name 192.168.2.1
10 Linux側で、スーパーユーザー権限で、ifconfig interface_name up
11 Linux側で、telnet 192.168.2.2
12 Linux側で、date MMDDhhmmYYYY
MM 2桁の月
DD 2桁の日
hh 2桁の時
mm 2桁の分
YYYY 4桁の西暦

13 Linux側で、hwclock -w
14 Linux側で、exit

あとは、インストールの逆順で、usbnetworkとjailbreak をuninstallする。
この件に関しては、amazonのCSにいくらいっても時間の無駄みたいなので、自分でなんとするしかない。
 また、バッテリーを完全にすっからかんにすると、時間をセットする方法は、この方法しかないみたいなので、バッテリーを完全にあげてしまってはいけない。