カテゴリー別アーカイブ: Kindle2

[UPDATE2]Kindleの”[free.]kindle.com”を利用してデータ配信する方法と注意点について

もともとKindle3(Kindle Keyboard)のWhispernet経由でデータ配信した際の課金に関するエントリでしたが、Kindle2(Kindle 2nd Generation)、Kindle DX、Kindle4(Kindle)、Kindle Touchの最新状態に併せて内容を修正しました。

Kindleを購入すると本体に紐付くメールアドレス”hoge@kindle.com”と”hoge@free.kindle.com”が設定されています。このアドレス宛に添付ファイル付きのメールを送信したり、定期的に自動配信するサービス等を利用して直接Kindle本体に取り込むことが可能になります。その設定方法と課金される場合の注意点、それから便利な”Personal Document Service”をご紹介します。

Kindleに設定されているアドレスを確認する

購入したKindleデバイスは既にAmazon.comのアカウントでユーザ登録がなされており、デバイス毎にメールアドレスが割り当てられます。このアドレスはKindle本体でSettingsメニュー、またはAmazon.comから”Manage Your Kindle”の”Personal Document Settings”により確認できます。

Manage Your Kindleでは登録デバイスに設定されたアドレスを一覧で確認できます
Send-to-Kindle_Device

“Actions”の”Edit”から初期設定されているアドレスを変更することができます。アドレスの編集画面がポップアップしますので、変更したいアドレスに修正して”UPDATE”ボタンをクリックするだけです。

初期設定されているアドレスを変更することが可能
Rename_send-to-kindle_address

ここに表示されているアドレスは”kindle.com”ですが、同時に”free.kindle.com”も割り当てられています。WIFIのみデバイスでは関係ありませんが、3GタイプのKindleでは”kindle.com”を利用すると米Amazonが提供する”Whispernet”の使用料が課金されることになりますので注意が必要です(後述)。

Kindleへ送信可能な送信元アドレスを登録する

Kindleへ直接送信するためには、SPMAメール対策として送信元アドレスを事前に登録しておく必要があります。自分でメール送信するほかに、Kindleへ定期配信するサードパーティ提供のサービスもありますので、そういうサービスを利用する場合にはその指定アドレスを登録します。

送信元アドレスの一覧
Approved_email_list

追加する場合は”Add a new approved e-mail address”をクリックし、登録したいアドレスを入力します。登録はアドレスの一部(ドメイン等)のみでも可能です。SPAMメール対策なのでできるだけ特定アドレスを設定した方が良さそうです。

送信元アドレスの追加画面
Add_Approved_Email

Kindleへ送信したいファイルを添付してメールする

送信元として登録したメールアカウントからKindleのアドレス宛(free.kindle.comアドレス宛を強くお勧めします)にファイルを添付してメールを送信します。Kindleデバイス、iOSデバイス(Ver2.9以降アプリが必要)へ送信できるファイルフォーマットは以下のように制限されていますので注意してください。Kindleデバイスが読み取れるファイル形式とは異なりますので混同しないように注意。

Microsoft Word (.DOC、.DOCX)
HTML (.HTML、.HTM)
RTF (.RTF)
Text (.TXT)
JPEG (.JPEG、.JPG)
Kindle Format (.MOBI、.AZW)
GIF (.GIF)
PNG (.PNG)
BMP (.BMP)
PDF (.PDF)

PDF以外はKindleへ配信される際にAZW形式に変換されますので、ブックマーク同期やメモ、ハイライトを付けることが可能です。PDFの場合、メール送信時に件名(Subject)に”Convert”とすることでAZW形式に変換して配信することが可能になります。

なお、メール送信時は添付するファイルサイズは50MB以下であること、一度に送信可能なファイル数は25以下でなければなりません。

Kindleでファイルを受信する

KindleがWIFI環境にある場合、メール送信後1〜2分程度でKindleが自動的に受信を始めます。ステータスバーに”Now Downloading”と表示され、ダウンロードが完了するとHOME画面にファイル名が表示されます。受信開始しないようであれば、Settingsメニューから”Sync & Check for Items”を実行するか、一旦電源ボタンを押してスリープモードにしてから再度電源ボタンで復帰するとよいかもしれません。

KindleがWIFI環境にない場合は、WIFI接続復帰時に自動的にダウンロードが始まります。開始されない場合は上と同じ方法でリトライしてみてください。

送信先にfree.kindle.comアドレスを使った方がよい理由

3G接続タイプのKindle2やKindle3(WIFI+3G)、Kindle Touchは、kindle.comアドレス宛にメール送信すればWIFI接続されていない状態でもファイルを受信することが可能です。ただし3G回線経由だと1MBあたりUS$0.99(米国内はUS$0.15)が課金されます。これがやっかいなのは、kindle.comアドレス宛だとWIFI接続されていても課金されてしまうことです。

kindle.com
free.kindle.com
Kindle WIFI+3G版 3G経由で配信。
WIFI接続環境でも課金あり。
送信元にメールなし。
WIFI経由で配信。
課金なし。
送信元にはメールあり。
Kindle WIFI版 WIFI経由で配信。
課金なし。
送信元にメールなし。
WIFI経由で配信。
課金なし。
送信元にはメールあり。

うっかり3GタイプのKindleデバイスの”kindle.com”宛てに送信するとWIFI環境にあっても課金されることになります。そして課金情報は以下のように”Manage Your Kindle”にある”Personal Document Service Charge”に表示されます。ご注意を。

Personal_Doc_Service_Charge

誤ってkindle.comを使って課金されないために

米Amazonがキャリアの3G回線を通じ提供するネットワークをWhispernetと言いますが、3GタイプのKindleデバイス宛に”kindle.com”アドレスを使用するとこのWhispernet経由でファイルが配信されることになり上記の通り課金されます。

誤って課金されないように”Whispernet”を無効化しておくことができます。デフォルトでは”Not enabled”になっていますのでここを自分で変更しない限りは課金されることはありません。また、Whispernetを有効化した場合でも、1回あたりの配信で課金される金額の最大値をあらかじめ設定しておくことができます。

“Manage Your Kindle”の”Personal Document Settings”にある”Whispernet Delivery Options”
Whispernet_delivery_option

Whispernet経由で配信したい場合は、Actionsの”Edit”をクリックすると次のような画面がポップアップしますので、”Enable delivery to my…”にチェック。1回あたりの配信で課金される金額の上限を設定します。”UPDATE”をクリックして完了。

Whispernet Delivery Optionsの設定変更
Option_Enable_Whispernet

公式サイト

英語で記述されていますが最新情報とその詳細は公式サイトで確認してください。

Amazon.com Help: Kindle Personal Documents Service

Amazon.com Help: Transferring, Downloading, and Sending Files to Kindle
Kindle Keyboard(Kindle3)の各種ファイルをデバイスへ配信する方法に関するヘルプ情報ですが、他の機種もほとんど同じです。

追記予定

Personal Document Serviceについては別途追記予定です。

Kindle3はどれくらい見やすくなったの?Kindle2と比較してみた

Kindle3はE-Inkの新世代電子ペーパーPearlの採用によりコントラストが50%向上したそうです。このことはKindle2ユーザであれば、文字がよりはっきり・シャープに見えることで実感できることと思います。では、どれくらい見やすくなったのでしょうか。Kindle2と比較する方法で検証してみました。検証方法は以前Kindle2とKindle DXの比較検証してくださった @ichinomoto さんと同じ方法(スキャンした物がKindleでどう見えるか Kindleをスキャンしてみた)をマネさせていただきました。
続きを読む Kindle3はどれくらい見やすくなったの?Kindle2と比較してみた

[UPDATE2]Kindle3/Kindle2のコレクションに日本語を設定する

Kindle3でもホーム画面上のコレクション名を日本語表記にできましたので追記します。コレクションに追加、削除等問題なくできていますが、コレクションを開いた時のタイトルが文字化けしています。日本語が組み込まれていないフォントが使用されているためでしょう。なお、Kindle2と異なり日本語表示のためのハック等の作業は一切必要ありません。所定のファイルの中身を書き換えるだけです。

Kindle3 ホーム画面
screen_shot-63528

作業はカンタンです。まずKindle3本体でコレクションを適当な名称で作成します。この情報が書き込まれているファイルを母艦側で日本語名称に修正してKindle3側に上書きで戻し、リブートで反映させるだけです。
書き換えるファイルはKindle2と同じです。母艦にUSB接続し、KindleのUSBストレージにあるsystemディレクトリにある”collections.json”とファイルを母艦側にコピーします。失敗した時にいつでも元に戻せるようにバックアップを取っておくことをお勧めします。
collections.jsonをテキストエディタ等で開き、先程付けたローマ字表記のコレクション名を日本語に修正します。”@”以降のローケル指定はen-USのままでも問題ないようです。Kindle3に上書きコピーしてリブートします。再起動後、反映されていることが確認できます(上図)。ただし冒頭で触れたようにコレクションを開いたあとのタイトル名称が文字化けしてしまいます。
※失敗する場合はcollections.jsonファイルを保存する際の文字コード/改行コードがUTF-8、CR+LFとなっていることを確認してみてください。

コレクションを開くとタイトル部分が文字化けしている
screen_shot-63532

動作環境
Kindle 3.0

—- 以下は、Kindle 2 に関する記事です —-
Kindle Software Version 2.5で各種機能が強化された。コレクションもそのうちのひとつ。ホーム画面に無数の書籍データが雑然と並ぶ状況から開放される素晴らしい機能だ。パソコン等のフォルダ管理のようなもので、書籍データを自分が任意で付けた名前(コレクション)で分類することができる。このコレクションはいわゆるフォルダとは違う機能をもっており、複数のコレクションに分類することも可能でフォルダとタグで管理するようなイメージかも知れない。

コレクション名はKindleのキーボードから入力して作成するために、アルファベット、数字、記号の組み合わせでした作成できないが、外部入力することで日本語でも作成することができたのでその備忘録。

注意喚起情報:日本語フォントハックが必要なため自己責任。シリアル接続環境推奨。


IMG_0300

コレクション名および含まれる書籍データは、/mnt/us/system/collections.json というファイルで管理されている。このファイルを母艦側にコピーして必要箇所を修正し、Kindle側に戻してからRestartするだけである。

一応、始める前にcollections.jsonはコピーしてバックアップを取っておく。

たとえば、Kindle側で”Test”というコレクションを作成すると、ホーム画面には”Test(0)“というコレクションとその中に含まれる書籍データ数が現れる。次に、母艦側に接続し、collections.json ファイルを母艦側にコピーしてテキストエディター等で開くと、 “Test@en-US” という箇所が見つかるので@en-USの前の「Test」部分を「テスト」等に修正する。あとはKindle側に上書きで戻して、Settings>Restartを選択して再起動させると、ホーム画面には「テスト(0)」と現れるはずである。

@en-USのローカリゼーションが設定されているようだが、ja-JPに修正してみても今のところ効果は不明。そのままen-USの状態でもコレクション名は日本語で表示されることを確認している。

動作環境
Kindle Global Wireless 2.5.3
+ update_anti_bunchin_forJB25_install-k2i.bin
+ update_ufh_icustom_forJB25_install-k2i.bin

[UPDATE1]Kindle 2.5.3 で日本語ハックが復活

Kindleの2.5.2(タイトルは2.5.3となっているがこれは誤りではない)へのバージョンアップにより書籍データをフォルダ管理したり、Twitter/Facebookとの連携、パスワードロックなど様々な機能が追加された。とはいえ、やはり日本で使用するにあたっては日本語表示が欲しい。というわけで、日本語フォントハックしたのでKindle2.3.4からKindle2.5.3へのアップデートとanti-bunchin、日本語フォントハックまでの備忘録。

注意喚起情報:文鎮化リスクは自己責任、シリアル接続環境推奨

Kindle2.5.3へアップデートした状態

2010-06-19 11.07.00

Kindle2.5.3をフォントハックした状態

2010-06-19 13.56.16

まず、Kindle2.3.4に施したハックを全てアンインストールしておく必要がある。導入していたフォントハックにはOTA経由でダウンロードされたアップデータの自動インストールを阻止するスクリプトが入っていた。他のハックが残った状態でOTA2.5.2アップデータが適用された場合、どういう影響があるのかわからないため、フォントハックを最後にした方が良い。次の順でアンインストールした。

update_uninstall_sudoku_k2i.bin
update_uninstall_qt_k2i.bin
update_news_auto_downloader_uninstall-k2i_0.3.bin
update_uninstall_usbnetwork-k2i.bin
update_anti_bunchin_uninstall-k2i.bin
update_ufssh_yt_uninstall-k2i.bin

フォントハックをアンインストールしてもUSBストレージの/mnt/us/system/fontsディレクトリ残っているが最終的にフォントハックで上書きされてしまうためあとで戻せるように母艦にバックアップしておく。

OTAアップデータは一向に落ちてこないので手動で2.5.2アップデータを適用することにした。Kindle Software Update Version 2.5 から手動でダウンロードして適用する。ここでダウンロードできるのはKindle Software Version2.5.2のアップデータである。実はこの後にVersion2.5.3も存在するため、Version2.5.2の状態でフォントハックするとどういう影響があるのかは不明である。

運良くKindle2.5.2にバージョンアップしたあとにOTA2.5.3が落ちてきてKindle2.5.3になっていた。2.5.3アップデータは公開されていないようなのでOTA配信を待つしかないと思われる。

Twitterでお世話になっている @ichinomoto さんがホームページで公開されている anti-bunchin と日本語フォントハック を導入した。現在は直接ハックをあてるのではなく、下準備としてKindleをjailbreakする必要があるとのこと。

まず、KindleをJailbreakする。2.5-jailbreak.zip をダウンロードしてZIP解凍後に update_jailbreak_k3i_install.bin を母艦経由でKindleのUSBストレージ(/mnt/us/)にコピーする。母艦との接続を解除しKindle側でSettings画面からメニューの”Restart”を選択する(通常のアップデータの適用は”Update Your Kindle”だがこの作業ではこのメニューが非活性化の状態でクリックできない)。

—Updated on June 19, 2010
どうやら私がJailbreakするためのアップデータを誤ってDXi用のものを適用してしまったようです。今のところ問題出ていませんが、Kindle2(Global Wireless)用は”update_jailbreak_k2i_install.bin”が正しいものです。これだとメニューには”Update Your Kindle”が活性化されクリックできる状態になります。

Jailbreakするとエラーが出るが問題ない

2010-06-19 13.07.25

インストラクションのとおりUpdateが失敗したというメッセージが出るが、落ち着いてKindleのキーボードの”R”を押すと正常に再起動する。

あとは @ichinomoto さんのホームページからアップデータをダウンロードしてひとつづつ適用してやるだけ。自分の好みのフォントがある場合は、フォントハックが完了した後に /mnt/us/system/fonts のディレクトリにコピーしてやる。ここでフォント名を間違ってしまうとノーマルブートしなくなるので注意。そのときは、anti-bunchin が発動してUSBネットワーク接続できる状態になるので母艦側のTerminal経由で修正すればよい。

@ichinomoto さんのフォントハックを適用したところ

2010-06-19 13.47.38

動作確認で anti-bunchin のUSBネットワーク接続機能を試してみた。ANTI_BUNCHIN_ENABLEというファイルをUSBストレージに置いてSettings画面のメニューからRestartすると、Kindle側は接続待機状態で起動するので母艦側のTerminalで”% telnet 192.168.2.2″として接続してやる。問題なく接続可能だった。

これでKindle2.3.4で出来ていた日本語表示が復活した。青空文庫はもちろん、日本語PDFやKindlefeeder.comで配信するRSSニュースも読むことが可能になった。素晴らしいハックを提供してくださった @ichinomoto さんに感謝、感謝です。

anti-bunchin を起動させたところ(1分経過あたりが見頃)

[UPDATE3]kindlefeeder.comというRSSフィード配信サービス(Kindle2編)

Kindle2にRSSフィードをAZW形式ファイルで用意してくれる kindlefeeder.com というサービスがあるらしいので試してみた。なかなかいい感じなのだが、ちょっと紛らわしいので利用までの備忘録でまとめておく。

[Updated on May 4, 2010] 有料サービスの登録してみたので追記。
[Updated on July 29, 2010] 有料サービスのスケジュール配信サービスを追記。
[Updated on September 19, 2010] Kindle3編を別エントリにまとめました。

注意喚起情報
日本語を表示させる場合にはフォントハックが必要です。自己責任でどうぞ。

IMG_0103

kindlefeeder.comのサービス内容
サービスには無料版と有料版(年間$19.95)があるようだが、どちらも次の情報をインデックスを付けてAZW形式(有料版であればMOBI形式も可)に変換し、1ファイルにまとめて自分のKindleに配信、またはファイルを用意してくれる。ファイルは毎回違う名前で保存されるので同一日のファイルを削除する手間もなく、また上書き保存される心配もない。

  • RSSフィード(無料版は12個まで制限あり)
  • 登録したウェブサイトのURL(無料版は一日3つまで制限あり)。メモもつけておくことができる。

有料版は登録数の制限がなくなるほかMOBIファイルを直接Kindleにダウンロード可能で、配信スケジュールの設定も可能になる(最近うまく機能していないというアナウンスあり)。

「配信」とか「用意」とか微妙な表現にはワケがある。無料版、有料版のいずれでもKindle本体に直接配信が可能だが、無料サービスはWhispernet経由のためAmazonから課金される。一方、有料サービスはkindlefeeder.comからMOBIファイルを直接ダウンロードするためAmazonからは課金されない。利便性を追求すれば当然Kindle本体に配信させた方が良いが、1回あたり$0.99負担が発生するため、継続して利用するなら有料版の年間$19.95を負担し毎回の配信は課金されない方を選んだ方が賢い選択と言える。

アカウントの作成
kindlefeeder.comにSign upから必要情報を入力する。

  • ユーザ名:なんでもよい。ログイン時に使用する(例:hogehoge)
  • メールアドレス:自分のアドレスを入力(例:hogehoge@hoge.com)
  • Kindle購入時に登録した名前:Manage Your KindleのYour Kindle(s)に登録したKindle E-mail Addressにある”@kindle.com”を除いた名前
  • パスワード:なんでもよい。ログイン時に使用する

を入れて登録。入力した自分のメールアドレスに確認メールが届くので記載されたアドレスにアクセスして完了。

Amazon Kindle側の設定
Kindle StoreのManage Your Kindle からYour Kindle Approved E-mail Listに”@kindlefeeder.com”を追加する。

RSSフィードの登録
kindlefeeder.comにログインしてDashboardにあるYour feedsメニューの”Add feeds”をクリックし、Feed URLを入力して”Add”ボタンで登録する。無料版の場合は最大12個まで(有料版は無制限)。

ファイルの配信またはダウンロード
配信する方法は3つあるが、wirelessを選択するとKindle2本体に直接配信されて便利だが、Wispernet経由することでAmazonから$0.99課金されるので注意が必要。うっかり”Send wireless”ボタンを押すと確認はないので直ちに課金されてしまう(4回ほどクリックしたため$3.96課金されしまった!)。kindlefeeder.comのDashboardから”Deliver your feeds now”に並ぶ3つのボタンから選んでクリックする。

kindlefeeder-button

  • Send wireless:直接Kindleに配信されるがAmazonから1回毎に$0.99が課金されるので注意!
  • Send emailed:Amazon Kindleに登録してあるメールアドレスにAZW変換したファイルのURLが送信され、母艦PCにダウンロードしてから自分でKindleのdoumentsディレクトリにコピーする。自分でメールにファイルを添付して@free.kindle.com宛送信してAZW変換されたファイルを受信する方法と同じ。
  • Send forward:登録してあるアドレスにHTMLファイル添付メールが送信され、自分でAZWファイルを作る作業(Amazon Kindleに登録してある@kindle.comか@free.kindle.comに送る方法)が必要になる。あとの方法はemailedと同じ。

上記いずれかの方法でdocumentsディレクトリに格納されると、HOME画面に”kindlefeeder-MM-DD-HHHH”というファイルが表示される。このファイルを開くと、含まれるRSSフィードの記事と登録Webサイトの一覧が表示されそれぞれの内容が続く。Instapaperのように強力なインデックス機能はないけれどニュース記事を流し読むには十分だろう。

kindlefeeder-index

以下、失敗したこととかその他モロモロ。
“Send wireless”する方法1回あたり$0.99課金されるので注意!

  • Kindle内蔵ブラウザでアクセスしてクリックする
  • PCからアクセスしてクリックする
  • iPhoneのようなモバイル端末からクリックする

[Updated on May 4, 2010]Amazonから課金された…
href=”http://www.flickr.com/photos/57380939@N02/5736581951/”>kindle-surcharge

News Auto Downloaderとの違い
以前の「Kindle 2 Int’l版を日本語ニュースリーダーとして使う」というエントリの news_auto_downloader-0.3([Updated on July 29, 2010]Kindle 2.5.xにインストールすることは出来ません) と kindlefeeder.com(無料版)の違いをまとめてみた。

  • kindlefeeder.comは自分でKindleのdocumetsディレクトリにファイルをコピーしなければならないがauto_news_downloaderは全自動で大変便利。
  • kindlefeeder.comでKindle本体に直接配信するとAmazonから課金されてしまう。auto_news_downloaderは課金されない(いままではされたことない)。
  • auto_news_downloaderは自動ダウンロード間隔を指定できるが、kindlefeeder.comはスケジュール配信ができない。
  • 自分が読みたいRSSフィードを登録するのはkindlefeeder.comの方がカンタン。
  • kindlefeeder.comは配信失敗しても、news_auto_downloaderのようにKindle本体のdocumentsディレクトリにゴミがたまらず、また元サーバーが落ちている時にリトライ→失敗→リトライ・・・を繰り返すことはない。
  • news_auto_downloaderはハックが必要。

利用環境(≠必要な環境)
Kindle Global Wireless(Kindle 2 International Wireless) FW2.3.4OTA
+ update_ufssh_yt_install-k2i.bin (@ytsuboi さん Kindle2.3.3用)
+ update_anti_bunchin_install-k2i.bin v.0.4 (@ichinomoto さん)
+ news_auto_downloader v0.3 (@hitoriblog さん)
+ update_install_qt_k2i.bin
+ update_install_kindleqtplugins_k2i.bin
+ update_install_sudoku_k2i.bin
MacBook(MB404J/A) Mac OS X 10.6.3
続きを読む [UPDATE3]kindlefeeder.comというRSSフィード配信サービス(Kindle2編)

[UPDATE1]KindleのBluetooth内蔵 バッテリー/セキュリティ検証

KindleにBluetooth経由でシリアル接続した際の課題は3つあった。うち一つはBluetoothモジュール内蔵化で既に完了(Kindle2にシリアル接続用Bluetoothを内蔵した【動画あり】)しているので、あと2つについて検証したのでその備忘録。
続きを読む [UPDATE1]KindleのBluetooth内蔵 バッテリー/セキュリティ検証

[UPDATE1]Kindle2にシリアル接続用Bluetoothを内蔵した【動画あり】

Kindle2にBluetoothモジュールを内蔵化できたのでその備忘録。といっても2度とやることはないだろうな。既にKindle2にBluetooth経由でシリアルコンソール接続してみたが、このBluetoothモジュールをKindle2に内蔵した。BTモジュールの設置場所は”Hacking the Amazon Kindle DX, Part 1: Bluetooth Shell“を参考にした。

R0010319

用意したもの

  • BlueMaster(浅草ギ研)
  • 精密ドライバー
  • ペンチ(外蓋を削るため)
  • ダイヤモンドヤスリ(同上)
  • ホットカッター(内蓋の切除)
  • モデラーズナイフ(ホットカッター切除後の整形用)
  • 半田コテとハンダ、はんだ吸取線
  • 耐熱電子ワイヤー(仕上がり外径0.8mm)
  • 絶縁耐熱テープ

※外蓋:Kindle裏側の金属製のフタ
※内蓋:Kindle裏側の金属製のフタの内側のプラスティック製のフタ

BTモジュールの設置場所
第一候補は参考サイトと同じウエイクアップ・スイッチ直下の場所だが、DXではなくスペースの少ないKindle2を使った試み。同じ場所にすると内蓋の加工が相当必要なはずなので他の場所の可能性を考えてみた。まずバッテリーパック両側にあるスペースだが、ここは内蓋裏側に内蔵されているスピーカーが収納される場所だったのでNG。スピーカなしもありだけど既存の機能をなくすのもなんとなく。。。次にSIMカードの上に重ねる方法を考えてみたが、高さが微妙に足りず外蓋にあたってしまう可能性があったのでNG。結局、第一候補の場所で覚悟を決めて加工作業をすすめることにした。

R0010262

内蓋のカッティング
ほんとに入るのかと半信半疑で切除場所を決める。慎重にホットカッターをあてて切り取り、モデラーズナイフで整形する。シリアル端子パッド周りのスペース確保のためここも切り取った。今思うとカット不要だったかも。

R0010268

金属の留め具の切除
上の方にツマミ型の金属製の留め具が3箇所。ウエイクアップ・スイッチに向かって右側の留め具がBTモジュールに引っ掛かるのでKindleの基板を傷つけないようにペンチで引きちぎった。基板回路には影響ないと思うが今のところ問題は出てない。今思うとここもぎりぎりカット不要だったかもしれない。

R0010287

シリアル端子パッドへの配線
内蓋はKindleの基板を固定する役割もあり、内蓋を閉じた状態だと基板との隙間がない場所もある。配線スペースを確保できてもモジュール接続検証用に使用していた12芯コードでは外径的に窮屈になり潰れてしまったのでできるだけ径が小さいものが必要。また配線するときに曲げた状態で形状を固定でき、ハンダ付け時に芯がばらっと広がらないと思ったのでワイヤー型を用意した。BTモジュールから端子パッドに直線で配線してしまうと奥の端子に接続するコードが手前の端子を干渉する可能性があったので下の方から迂回するよう取り回してハンダ付けした。なおBTモジュールの裏側には絶縁耐熱テープを貼り絶縁対策をしておいた。

R0010307

外蓋の加工
これで収まったように思えたがそうでもないことが判明。外蓋を装着してグレーの上蓋を閉じようとしたところ、何かにあたって閉じることができない。よくよく調べてみると上蓋の裏にウエイクアップ・スイッチをON/OFFするためのバネとそれを固定するためのプラスティックの突起があり、これがBTモジュールの上段にあたっていた。つまり、BTモジュールの位置はもっと下げた中央よりの位置にしなければならない。そのためには金属製の外蓋のツメをカットし、裏側のバリのような出っ張った部分がBTモジュールのMaster/Slave切り替えスイッチとリセットボタンに当たらないように削る必要があった。ペンチでツメを切り取り、バリのような部分はペンチである程度砕いてからダイヤモンドヤスリで整形した。

R0010310

母艦MacとのBluetooth接続とKindleの動作確認
すべての加工を終えて、裏蓋を全て閉じる。このときBTモジュールはKindle本体の基板に固定するような加工はしていない。そのままでも十分固定された状態であり、多少のアソビがないと上蓋の開閉が不安だから。いろいろと基板を触ったり削った部分の影響を確認するために、全てのフタを閉めてKindleの電源ON。特に問題なし。次に母艦MacとBluetooth接続も完了し、問題なくシリアルコンソール接続させることが出来た。

最後に
自分の使い方ではシリアルコンソール接続をそんなに頻繁に行うものではないし、USBシリアル変換モジュールで十分ではないかと思わないわけでもない。特に理由はないので好奇心だけだろう。ちなみに久しぶりにようやく裏蓋を全て閉めることが出来た。バッテリーとかセキュリティはまた今度だ。

[Updated on April 6, 2010]バッテリーとセキュリティに関する検証の参考エントリ
KindleのBluetooth内蔵 バッテリー/セキュリティ検証

[UPDATE2]Kindle2にBluetooth経由でシリアルコンソール接続してみた

Kindle2にBluetooth経由でシリアルコンソール接続することに成功したのでその備忘録。
購入したBTモジュールが技適前だったことから使用を断念したばかりだが、あきらめきれずに秋葉原の千石電商に行き、よさげなモジュールを見つけた。値段がBluetooth Mateの倍くらいなので躊躇したけど、ここまで来たらもう止まらない。

[Updated on April 5]Bluetoothモジュールの内蔵化の参考エントリ:

<注意喚起情報>
Kindleがぶっ壊れる可能性がありますのでよい子は真似しないこと。

購入したSPP対応Bluetooth無線モジュール:BlueMaster(浅草ギ研)12,600円

高いだけあってなかなかの優れもの。Sparkfun社のBluetooth Mateにはない機能が沢山ある。それだけに素人にはもったいない代物ではあるし、そもそもシリアルコンソール接続がそんなに頻繁なものではないので、この投資がどれだけのリターンを生み出すのか生み出さないのかと。。。

R0010261

Kindleの裏カバーと内側のプラスチックのカバーを全部外す。ネジが19本あるのでこれが結構大変。その過程でバッテリーも外すことになるが、そうするとKindle本体とBTモジュールに給電できなくなるのでセロテープで固定してやる。出てきた4つの端子を使用した。下の写真のように1番から電源(たぶん5V)、TxD、RxD、GNDの順に並んでいる。ここにリード線をハンダ付けしてやる。Hacking the Amazon Kindle DX, Part 1: Bluetooth Shellで紹介されているウエイクアップスイッチの片側でも試したけど、ONの状態で固定しておかないとBTモジュールに給電されないのでとりあえずあきらめた。これはBlueMasterに必要な電圧を確保できなかったからだと思われる。

R0010211

BTモジュール側は左から1つ飛ばして、RxD、GND、TxD、3V3となっているのでKindle側の端子と接続する。TxDとRxDはクロスする。するとBTモジュールのLEDが点滅し始める。これで通電が確認され、ペアリングの状態に入っていることになる。なおBlueMasterはMaster/Slaveを切り替える機能があり、デフォルトではMaster側に設定されているのでSlaveに切り替えておく。

BlueMaster

母艦側でBluetoothデバイスを確認するとBlueMasterが見えるので選択して登録する。Slave側で登録する場合はPINコードは不要のようだ。”シリアルポートを編集…”を選択してシリアルデバイスを確認しておく(上のスクショ)。Terminalはminicomを使用。USBシリアル変換モジュールのFT232RLの使用は継続したいのでプロファイルは別に設定することにした。

% sudo minicom -s

rootでなければプロファイルを保存できないので初回はsudoで実行。Serial port setup を選択し、Serial Deviceに先程確認したパスを入力する。他の設定はFT232RL同様にしておきSave setup as .. で適当に名前をつけて保存する。その後、Exitを選んでconfigurationモードを抜けると、Initializing Modemと出て、Welcome to Kindleが流れて無事接続完了である。

bm-minicom

USBシリアル変換モジュールでシリアルコンソール接続していたときには効いていたDO_NOT_KILL_UARTが反応していない感じなのでコマンドを直接入力したところ接続が切れることはなくなった。

DO_NOT_KILL_UARTはちゃんと機能した。ただしUSBシリアル変換モジュールで接続したときと同様にKindle本体がサスペンドに入るとコマンドは受け付けなくなるので、それを回避する場合は下記のpowerdを使ってサスペンドを停止しておくとよい。

# /etc/init.d/netwatchd stop
# /etc/init.d/powerd stop

R0010259

Next Step

  • バッテリーは使用に耐えられるか。BTモジュールに給電し続けるので2週間ほどもつといわれるバッテリーがどれくらい持つのか検証が必要。
  • Kindle2に内蔵出来るのか。スペースの関係で収納できない可能性があり、そうだとするとBTの意味がない。DXならスペースありそうな感じがする。
  • BTペアリングのセキュリティ確保。Slave側では常にペアリング可能でPINコード無しで接続出来てしまうので、何かしらの措置が必要。または10m以内に怪しい人物が近づいたら立ち去るなど。。。

環境
Kindle Global Wireless (Kindle 2 International Wireless) FW2.3.4OTA
MacBook(MB404J/A) Mac OS X 10.6.2

Kindle2のNews Auto Downloaderで困った場合の対処方法

Kindle2をニュースリーダ化するNews Auto Downloader Ver0.3はニュースサイトから記事を自動取得してくれる(参考エントリ:Kindle 2 Int’l版を日本語ニュースリーダーとして使う)。日本語フォントハックをあてていれば日本語ニュースも読むことができる。便利なのだがまれに記事が更新されなかったり、ダウンロードは完了するけどHOME画面のリストに表示されない、完了サウンドが何度も鳴ったり、ちょっとしたトラブルに遭遇することがある。そんな時の対象方法をまとめたのでその備忘録。

<注意喚起情報>
Kindleのハックは非常に危険です。文鎮化するリスクはもちろん、同一ハックでもそのインストール/アンインストールの方法、または異なるハックの組合せ等によっては初期状態のファイルを失い購入初期状態に戻せないリスクがあります。またハックした状態で”Restore to Factory Default”した場合、文鎮化しますので注意が必要です。自己責任です。

ケース1:記事が更新されない
通常、ダウンロードが完了するとHOME画面には”Nikkei Entire Text (3-21)”のように表示されるが、日付が昨日のままだったり、数日まえのままなのにダウンロードが始まる気配がないことがある。これはnews_auto_downloaderが直前に記事を取得した際に/tmp下のロックファイルを削除できなかった可能性が高い。
※ワイヤレスをオフにしていたり、電波の届かない場所では当然更新されない。

news_auto_dl_lock

方法はKindleをリセット。HOME>Settings>RestartするとKindle本体が再起動しロックファイルが削除されるので記事をダウンロードしてくれるようになる。いちいち再起動が面倒であれば、usbnetworkハックやシリアルコンソール接続で母艦側のターミナルから削除してもできると思う。

ケース2:記事が取得できていないのにチャイム音だけが繰り返し鳴る
記事の最新版の取得しようとしているようだがHOME画面上に表示されないことがある。たとえば、ステータスバーに”D/L complete”というメッセージと完了を知らせるチャイム音は聞こえるが記事がなく、短い間にそれが頻繁に繰り返されるケース。これはnews_auto_downloaderに問題があるわけではなく、mobiファイル取得元のFeedbooksに何らかの障害が発生している場合に起こるようだ。従って、Feedbooksが復旧するまで記事は取得できないことになる。以下、考えられる4つの対処方法。

対処方法1
news_auto_downloaderをアンインストールする。

対処方法2
download_list.txtファイルに記載されているmobiファイルリストを削除しブランクにする。

対処方法3
完了を知らせるチャイム音を消すためボリュームを最小にする。

対象方法4
無音のwaveファイルを作って/mnt/us/news_auto_downloader/に置く。

それぞれ一長一短ある。対処方法1、2は完了音が鳴らないがFeedbooksへのアクセス自体と止めてしまうので復旧したかどうかは自分で確認しなければならない。対象方法3、4ならばFeedbooksへのアクセスは続けているので復旧すればすぐに記事を取得できる。

では後者のほうがいいではないか?とも言い切れない。Feedbooksから記事の取得には失敗しているが、mobiファイルではないファイルができている。そのファイルは上書きされずに”16486.40″のように拡張子がカウントアップされて残っている。ファイルサイズは約7KBなのでディスク容量の不安はないが、なんか気持ち悪いし、documentsディレクトリのなかのファイルを探すときに邪魔になる。もっとも、そのファイルも気がついたときに削除すれば済む程度の作業ではある。

facebooks_error

個人的にはdocumentsディレクトリにゴミが貯まるのは避けたいし、Feedbooks側サーバーへの負荷軽減についても配慮が必要だと思うので、対処方法2のdownload_list.txtの中身をブランクにしておくのがよいと考えている。

環境
Kindle Global Wireless(Kindle 2 International Wireless) FW2.3.4OTA
+ update_ufssh_yt_install-k2i.bin (@ytsuboi さん Kindle2.3.3用)
+ update_anti_bunchin_install-k2i.bin v.0.4 (@ichinomoto さん)
+ news_auto_downloader v0.3 (@moyashi さん)
MacBook(MB404J/A) Mac OS X 10.6.2

[UPDATE1]Kindle シリアルコンソール用の接続キットを作る

Kindle3については、こちら(Kindle3の自作シリアル接続アダプタを作ってみた)をご覧ください。

フォントハック等、いつ文鎮化するか分からないKindleの強い味方がシリアルコンソール接続。「ド素人がKindle2のシリアルコンソールに挑戦」でなんとか出来たものの、裏ぶたを全部外してリード線を剥いてセロハンテープで端子に貼り付ける方法はさすがにに不便だし、ZIFケーブルの必要な線を出してICピンクリップでつまむ方法も強度に難あり。細いZIFケーブルの1本の線をICピンクリップで挟むものだからすぐにヨレヨレになってきてしかも時々接触が悪かったりする。そこで思い切ってZIFケーブルとUSBシリアル変換モジュールを接続するためのキットを作ってみたのでその備忘録。

R0010189基板裏には絶縁テープで対策済み

<注意喚起情報>
Kindleの裏ぶたを外したり基板や端子がむき出しになるため物理的な破損、静電気等によるショート等の可能性がある。自己責任である。

電子工作は、遠い昔に中学校時代に授業でラジオを組み立てたことがある程度。半田コテを握るのはそれ以来の事件だ。全てにおいて慣れない作業の連続でほんとにしんどかった。今回も ytsuboi">@ytsuboi さんのブログから”Kindleのシリアルコンソールをきれいに引き出してみた“を参考にさせていただいた。

材料を揃える

前回同様にどこで売ってるのか分からないとこからスタート。基板とかコネクタ、絶縁テープはネット経由で注文。ハンダのような工具類は家電量販店で購入した。

  • 基板:サンハヤトCK-4 コネクター変換基板 SMTコネクタ0.5mmピッチ50ピン
  • コネクタ:FFCコネクタ(SMT)0.5mmピッチ40ピン
  • 半田コテ
  • ハンダ
  • はんだ吸取線
  • 絶縁耐熱テープ
  • Tピン穴径0.7mm
  • 双眼ヘッドルーペ(I.L.K. BM-115W)

R0010127

R0010129

R0010142

R0010143

基板とコネクタが届いて、ひっくり返りそうになった。0.5mmピッチなので定規の1mm目盛りに2本のピンがあることになる。工具類は基板とコネクタの大きさをイメージしながら選んだが、とてもこの太いコテ先ではムリだろうなと思いつつ(それで「小手先」っていうのか?)裸眼では耐えられないので、双眼ヘッドルーペも購入した。さらに「はんだ吸取線」なるものが置いてあったので購入した。ハンダ付けして余ったハンダを吸い取ってくれる奇跡のアイテム。これがなければ完成していなかった。

基板の裏側から出してICピンクリップで摘むピンは双眼ヘッドルーペを購入するときに東急ハンズの手芸コーナーにあったのでちょうどいい大きさと思って購入した。秋葉原でちゃんとしたものが売ってるとは思うがそういうモノを置いている店がわからない。

下準備をする

サンハヤトの基板をパチッと二つに割る。コネクタをどうつけようか悩んでハンダ付の工程も考えてFFCコネクタは寝かせることにした。

半田付けをする

最大の難関。FFCコネクタ側の不要なピンを抜くことも思いついたが、あの細いピンが以外に頑丈でムリに引き抜くと土台のコネクタ本体がダメになりそうだったのであきらめた。双眼ヘッドルーペを装着して、まず両端のコネクタ1番、40番のあたりを想定して基板に予備のハンダを盛る。

で、いきなり案の定グチャグチャになった。そこで、秘密兵器のはんだ吸取線がいい働きをしてくれる。基板についたハンダを再度熱して吸取線をくっつけると、あら不思議、すぅーと吸い取ってくれるではないか。やはり鬼門は4番、5番。ハンダを盛ったり、吸い取ったりを繰り返してなんとか。自分でもこんなに汚くなるものなのかと愕然としながら次の工程へ。

R0010153

今度は引き出し線側のハンダ付け。引き出しランドは2.54mmピッチになってるので楽。といってもどれが4番、5番、40番のピンのホールなのかを見つけるのは大変。4番、5番でも1番からわずか2mm程度しか離れていないため、GND40番を使うことにした。目を凝らしても見えるわけがなく。ヘッドルーペで3倍に拡大して目で追っても途中でとなりの線に移ってしまったり。かといって基板に何でマーキングしたらよいかもわからないので最後は気合ですな。

やっぱりというか案の定、4番、5番のつもりが一つズレてたりしてやり直し。目がチカチカ、肩は凝るしで、もう大変。仕事でもあんな集中力は見せないと思う。

R0010152

仕上げ

完璧なハンダ付けは出来ていないし、コネクタの他のピンから通電・信号が流れて来るかもしれないし、Kindleの裏ぶたに何気なく乗せると危ないので基板の裏には絶縁テープを貼付して仕上げを行う。なんとか2時間くらいの格闘の末、シリアルコンソール接続キットの完成。ターミナルのminicomで接続確認できたときは、そらもうガッツポーズ!

R0010162

最後に

落ち着いた頃、これやるのにいくら遣ったんだろ?この工具の次の出番は?と。。。
へこんだのは、ちょっとの差で紹介された uran">@uran235 さんの”kindle Serial Console Connection”でシリアルコンソール接続する方法。ハンダ付けなしでできるじゃん!(絶対こちらがオススメ)

[2010年10月17日]
Kindle3の追記