2016年10月8日土曜日

解約したSoftbank PhotoVision TV 202HWの全画面化

約2年前に義理の両親がソフトバンクで契約してきたデジタルフォトフレーム(PhotoVision TV 202HW)、無料と言う説明を受けて契約してきたのだが、実は支払いが月々生じていたという詐欺的商法は置いておいて、契約が終了したので解約してきた。
 写真表示、テレビ自体にsimの契約は関係ないので、メールで写真を受信する機能以外は使えると期待するところだが、さすがのSoftbankは抜かりなく、simの契約が切れると画面半分は「契約をしろ」という表示が出続けるようになっている。

 ところが、これを解除する方法があるということで、Softbankに吸い上げられた本体代の元をとるためにもやってみた。

 最初に言っておくと、私は電子工作が割と好きだが、回り道をするのは嫌い。そこで、下記のページを参考に、一番最小限の労力で済む方法でやってみた。また両親はスライドショウも全画面化したいということで、テレビと合わせてすべての機能を解除することにした。なおバージョンは後で確認したのが、α28.1であった。
http://tfukui2012.blog.fc2.com/blog-entry-28.html
http://kyu.php.xdomain.jp/?itemid=505

1) まずファイルのダウンロードをしておく
必要なファイルは以下の三点

photovision_tv_function_unlocker.apk (173210氏によるテレビ機能解除用アプリ)
202hw_func_unlocker_script_5.zip (173210氏による改造ツール)
go.zp (kyo氏による上記、202hw....script_5.zipのスクリプト改変ツール)

二番目のファイルは結構探すのに手間取ったが、2chのログを丹念に調べると落ちているはず。

2) 道具を揃える
使用した道具は以下のもの

USB-シリアル変換ケーブル
ピンヘッダ
接点復活剤
適当なヤスリ
セロハンテープ
クリップ
SDカード(小さな容量で十分)

3) 適度な時間テレビを見る
 別にしっかり見る必要はないのだが、ある程度電池を放電させておいて、作業中に充電状態にさせておく必要があるので、テレビでもみて電池を消費させておく。今回は80~70%ぐらいまで消費させておいた。

4) 分解
 作業に入る。
 どこまで分解するかについては、「興味があればスピーカーをはずして...」と書いてあるものあるが、目的を達成するためだけなら作業する基盤(の裏側)が見えるところまでで良い。
最初に一番外側のフレーム全体を覆っているプラスチックカバーを外す必要があるのだが、そのための工具としては、私はたまたまiPhoneの修理道具を有していたので、それを利用した。まあ、カード類でもなんでもよい。とっかかりとして、どこかの部分に道具を挿しこんだら、あとはそれをグルッと周回さすだけ。結構頑丈な部品であるし、少々壊れても機能には関係ないのでサクッと取る。



 取れたらネジが見えるので、端の方のものだけすべて外す(鉄板が見えている場所は外す必要なし)。ネジのサイズはどれでも同じなので、これも気にせずどんどん外す。SDカードなどを挿しこむ場所にも隠れているので忘れずに外す。


 ネジが取れると、ディスプレイが簡単に取れる。まだ基盤とコネクタで繋がっているのだが、この後の作業のためにすべて外す。

5) シリアルの2箇所のホール(TXとRX)を剥離する
 シリアルアダプタを繋ぐ部分を導通のために基盤の裏側から剥離する。ここも別に何を使ってもよいが、私は紙やすりがあったので、適当に小さいサイズにしてホールの部分にあてがって削った。そんなに時間をかけずともすぐに金属部分が出てくる。後ほどこの部分の導通性が成功に関わってくるので丁寧にやっておく。

6) シリアルアダプタを繋ぐ
 シリアルアダプタを繋ぐのはかなり不格好な状態になるが、いろいろ工夫も出来る。私はこのブログを参考にさせてもらって、アダプタの先のソケットにピンヘッダを取りつけて、それを二か所のホールに押し付けた。その際、もちろんずっと手で持っておくわけにもいかないので、固定しておく必要があるのだが、いろいろ試した結果、結局クリップでピンヘッダを挟んだものをセロハンテープを長く出して、上から押さえつけるような格好で留めた。小学生の工作のような非常に不格好で、情けない感じだが、まああり合わせの道具でやるには最も簡単な方法かもしれない。


7) root化
 kyu氏のブログが参考になる。
 私が躓いたのは、まず、シリアルコネクタの設定とTeraTermの設定、デバイスマネージャとTeraTermの設定でシリアルコネクタの通信速度を設定しておくのだが、デフォルトでは9600bpsに設定されていたので、これを修正。これをしないと文字化けする。
 ACアダプタを抜いて、電源をオフにしておいた状態から、ACアダプタを指すと文字がばーっと出てくるのだが、最後のコマンドが打てる状態に中々ならなかった。もちろん、kyu氏等のアドバイス通り通電を確かめるのが良いのだろうが、持っていないし、めんどくさいのでとりあえず手持ちの接点復活スプレーを雑に吹きかけたところ、解決。

 文字が打てる状態になったら、次のコマンドを打つ。

cd /system/bin
cat sh > su
chmod 4755 su

 これで次の手順でインストールや、ファイルの書き換えなどが出来るようになる。


8) photovision_tv_function_unlocker.apk (173210氏によるテレビ機能解除用アプリ)を実行
 用意しておいたSDカードにphotovision_tv_function_unlocker.apkを入れておき、これを実行する。
 電源スイッチを入れて、また文字の洪水が収まったところで下記のコマンドを打つ。

pm install /mnt/sdcard2/photovision_tv_function_unlocker.apk

 ここでの躓きは、文字が止まるのが以外と遅いということ。途中でインタラプトすると、suになってしまい、実行してもsyntaxエラーが起きる(ただ、このことはあとで役に立った)。しっかり待つこと。


9) dpf-libs.jarのコピー
 フォトフレーム内部のjavaスクリプトをSDカードにコピー。
 このとき、なぜかsuになれない状況になったので、先の手順で偶然みつけた方法でsuになり、ファイルをSDカードにコピー
su
dd if=/system/framework/dpf-libs.jar of=/mnt/sdcard2/dpf-libs.jar
exit


10) 202hw_func_unlocker_script_5.zip (173210氏による改造ツール)をkyu氏の改変法で用いる
 もともとの173210氏のツールはADBを利用する方法だったのをkyu氏がシンプルな方法に変えてくれているので、それを利用する。202hw_func_unlocker_script_5.zipを展開したフォルダにkyu氏のgo.cmdと、吸い出したdpf-libs.jarを置き、go.cmdを右クリックして、管理者として実行。できあがったdpf-libs_mod.jarをSDカードにコピーしておく。

11) dpf-libs.jarを書き変え
 再び、suになり、元々のファイルをdpf-libs_mod.jarに置き換える。
 フォトフレームの電源を入れて緑色のLEDがついたら、以下のコマンドを入れる。今回はsuになるのは途中でインタラプトして行った。
su
mount -o rw,remount /system
dd if=/mnt/sdcard2/dpf-libs_mod.jar of=/system/framework/dpf-libs.jar
chmod 644 /system/framework/dpf-libs.jar
exit

 成功すれば、スライドショーも全画面で見られるようになる。