2013年9月9日月曜日

Nexus7 2013モデルでAndroid OSが暴走してバッテリーが異常に消費する件

先日購入してビルド番号JSS15Qにアップデートした当初から悩まされ
続けているのが、Android OSが暴走してバッテリーがすごい勢いで
消費していく現象だ。以下の画像はほぼ機内モードで放置した時の
バッテリーのグラフとWakelock Detectorというアプリを使って
Kernel Wake Lockの状態を示したものである。


画像を見れば分かる通り、Android OSがバッテリ使用率の8割以上を占めており、
またpil-gssというプロセスがずっとスリープを阻害しているのが分かる。
この件はGoogleのプロダクトフォーラムでも既に報告は挙がっている。

■ Nexus 7 2013 pil-gss wakelock - Google グループ
http://productforums.google.com/forum/#!category-topic/nexus/nexus-7/AiQIc2DX5SI

これを読むとハードウェアなのかOS、ファームウェア側に問題があるのか
よく分からない。そもそもpil-gssとは何をしているプロセスなのか不明で、
GPSやWiFiを無効にしても発生する問題なのでかなり厄介な問題だ。
詳細は不明だがとりあえず上記フォーラムのユーザーから報告された
暫定回避手順を以下に示しておく。

【Android OSの暴走を止める暫定回避手順】
(1)rootを取得する。(方法は各自調べる事)

(2)USBデバッグを有効にしてPCとUSBケーブルで接続する。

(3)PC側でコマンドプロンプトを起動して下記のコマンドを入力する。
> adb shell
$ su
# stop rmt_storage
# exit
$ exit
> exit

以上でAndroid OSの暴走は止める事は出来る。ただし再起動する度に
PCとUSBケーブルで接続してコマンド実行する必要があって少々面倒だ。
しかし問題点が判明するまでこの方法で回避する以外方法がなさそうだ。
root取得が絡むので自己責任でどうぞ。

この件で初期不良として交換したら発生しなくなったという人もいるようで、
もしかしたら個体差があるのかもしれない。rootをわざわざ取る気がなくて
早くどうにかしたいという人は交換してもらうのも1つの手だと思う。
ただし交換した物でも発生する可能性はあるので注意が必要。


【2013/9/9同日 追記】
上記コマンドを再起動時に毎回実行するスクリプトを下記リンクに置いておく。
導入する場合は自己責任でどうぞ。
https://drive.google.com/open?id=0B3bjmX6Y3dO5T3VlbFRvR25IazQ

【前提条件】
・rootedである事
・busyboxをインストールしておく事(/system/xbin配下にインストール)

【スクリプトのインストール方法】
(1)ダウンロードしたzipファイルを解凍する。

(2)Nexus7の/system/etc/kickstart_checker.shファイルをPC等にバックアップしておく。

(3)コマンドプロンプトを起動してnexus7_2013_stop_rmt_storageフォルダに移動した後に下記コマンドを実行する。
> adb push 00stop_rmt_storage /data/local/tmp/
> adb push install_tool.sh /data/local/tmp/
> adb shell
$ su
# cd /data/local/tmp
# chmod 0777 install_tool.sh
# ./install_tool.sh
# rm 00stop_rmt_storage
# rm install_tool.sh
# reboot

【スクリプトのアンインストール方法】
将来この問題がアップデートで対策された時のためにアンインストール方法も記載しておく。

(1)インストール手順(2)でバックアップしたkickstart_checker.shファイルを用意する。または端末の/system/etc/kickstart_checker.shファイルをPCにコピーして、下記の行を削除して保存したファイルを用意する。

 削除対象:/system/xbin/busybox run-parts /system/etc/init.d と記載された行

(2)コマンドプロンプトを起動して下記コマンドを実行する。
> adb push kickstart_checker.sh /data/local/tmp/
> adb push uninstall_tool.sh /data/local/tmp
> adb shell
$ su
# cd /data/local/tmp
# chmod 0777 uninstall_tool.sh
# ./uninstall_tool.sh
# rm kickstart_checker.sh
# rm uninstall_tool.sh
# reboot 


【2013/9/12 追記】
本件についてASUSにメールで問い合わせた所、着払い送付して現象を確認した後、
初期不良として交換対応するとの事だった。私は輸入ではなくヨドバシで購入したので、
ヨドバシのサポートセンターに電話をして結局返品する事にした。
理由はいくつかあって、

・上述の通りバッテリーが異常消費する
・液晶パネルのタッチが誤動作する
・操作時に突然フリーズする事がある(時間を置くと復帰する)
・nasneの録画番組が視聴できない(これはTwonkyBeamの問題)
・電源ONして起動時にGoogleロゴでよく止まる

といった具合に色々と不満があった。Googleのプロダクトフォーラムを見れば
同じような現象で困っている人達が多くいるのも返品を決めた理由だ。
また、今急いで交換したとして同じ初期ロットの不具合のある製品に当たっては
正直堪ったものではない。残念だが一旦返品して今後の様子を見てから購入を
再検討したいと思う。ちなみに本体のシリアルナンバーは「D70KBCxxxxxx」だった。

最後に言いたいのは本エントリーのコメントでも頂いたように、

 本件の不具合に当たったらすぐに初期不良で交換手続きした方がいい

という事だ。いい勉強になった…。


【2013/9/18 追記】
9/17に公開されたビルド番号JSS15Rのアップデートでも発生する模様。


【2013/11/21 追記】
プロダクトフォーラムにて、Android 4.4にアップデートしたら本現象が直ったとの
報告があるようだ。

9 件のコメント:

  1. 私もupdate後ずっとこの問題に悩まされていました。
    root化するつもりはないので解決策が無く困った
    ものです・・。
    端末・アプリ固有の問題ではないようなので
    不具合修正のupを待つしかないようですね。

    返信削除
    返信
    1. 毎日フォーラムを見てますがまだ進展がないようですね。暫定対処してるとは言え、早く直して欲しいものです。

      削除
  2. ASUSサポートセンターにメールしたら、初期不良対応(交換)の連絡が来ました。
    ルート化したくなかったら、こちのほうが早いと思います。

    返信削除
    返信
    1. 何となくハードウェアの個体差のような気がしてきたので、早速ASUSサポートセンターにメールしてみました。

      削除
    2. 情報ありがとうございます。
      私も連絡してみようと思います・・。

      削除
  3. amazonで交換対応してもらった所症状が改善しました。
    WLDで見てもちゃんとDeepSleepに入っていますしpil-gssというプロセスは起動もしていない状態です。
    深夜0時過ぎに電話で対応してもらってその日の夕方に交換品が
    届いたのは驚きました。
    シリアルは最初に購入したのが同じくD70KBCxxxで交換品はD80KBCxxxでした。
    貴重な情報を頂いて交換できたのでご報告まで。

    返信削除
  4. 私は問題の新しいNexus 7をASUSサポセンに送ったが、スレ主さんと同じ現象が確認され、先方は頑としてスペックのとおりで対応してもらえませんでした。しかも、4週間が掛かったうえ、今にも手元に戻っていません。

    最近kakaku.comからKaniCha-Hanさんの書き込み情報に基づいて、私はpil-gssとGPSの関連性の疑いについて、Google Products Forum(Nexus 7)に投稿しました。
    manu1212さんから下記の書き込みはその疑いを証明しました。ご参考にどうぞ。

    https://productforums.google.com/forum/#!msg/nexus/AiQIc2DX5SI/kT-wH55bsxUJ

    written by manu1212
    =============
    Hello,
    i have the same problem with my nexus 7 (pil-gss) wakelock, and my gps modul is not working.
    So I send my nexus back to asus service and they repair it, yesterday I got back and now it works.
    They changed the main board. I think that the gps modul was the reason for the pil-gss wakelock.
    【日本語訳抜粋】
    僕のnexus 7も同じくpil-gssがwakelockを掴みし続ける問題が発生しており、且つGPSモジュールは作動しません。ASUSサポセンに送って修理してもらい、昨日戻っていまは正常に動いています。メインボードが交換されたので、GPSモジュールはpil-gssがwakelockを掴みぱっなしの犯人だと思います。

    返信削除
    返信
    1. 29日目サポセンから僕のNexus 7 2013は帰還しました。ただし、処置が一切受けていないので、重症はそのまま直りません。早速GPSテストしたら、交差点のような開けた場所でも衛星を一つも掴めません。GPS初期不良の疑い余地がない、嫌でもまたASUSジャパン・サポートセンター様にお世話になります。

      削除
    2. 追伸:
      10/11~10/22、二度目の処理に出しました。今回ははっきりGPSの問題を指摘したので、一回督促を入れて休日/配達を除いて5営業日で「マザーボードの交換」で修理完了しました。もうバッテリ異常消費は出なくなり、GPSも正常に受信できました。
      アドバイスとして、初期不良はなるべき症状を確認するうえ購入店で交換してもらう。ASUSサポセンは厄介なもの、絶対避けたほうがいいでしょう。

      削除