タブレットPC + 周辺機器 とその設定(Surface Pro 3のInstantGo)

Surface Pro 3(SP3)、USB-LANアダプタ、USBハブ、マウス、液晶保護フィルムを買いました。

Surface Pro 3 (i5, RAM 8GB, SSD 256GB, Office)
  http://www.microsoft.com/surface/ja-jp/products/surface-pro-3

Surface イーサネット アダプター
  http://www.microsoft.com/surface/ja-jp/accessories/browse
  (感想:USB 3.0, Gbit Ethernetなのでよさそうです。
      ドライバはWindows Update経由で入りました。
      端子の切り裂き部分が斜めですが、ほかのマシンにも普通に挿せそうです。)

・JUH340 USB3.0 対応4ポートハブ
  http://j5create.com/jpn/our-products/usb-hub/juh340.html
  (感想:USBハブ側の電源コネクタはL字です。
      コンセント側の電源プラグは電源タップ2つぶんの幅をとります。)

・スカルプト エルゴノミック マウス
  http://www.microsoft.com/hardware/ja-jp/p/sculpt-ergonomic-mouse
  (感想:進むボタンがないのはちょっと残念。
      持ち方と置く位置を考えれば手に疲れがでなさそう。)

・液晶保護フィルム(どこの製品か失念)
  (感想:ペンの滑りが悪くなったのが難点ですが、安心感は得られました。)

以降、Surface Pro 3本体の設定について書きます。よかったら自己責任で参考にしてください。
(参考:Surface Pro 2(SP2)を買ったときの話)
  http://ladoco.hatenablog.com/entry/2013/11/26/210229


【InstantGoの設定】
 SP3を買った理由はInstantGo(旧名Connected Standby)につきます。これは、マシンのスリープ時に、AndroidiOSのスマフォ・タブレットのように、低消費電力・ネットアクセス(ストアアプリのみ)・高速復帰などができるというものです。ATOM搭載32bit/64bitOSのWindowsタブレットを除く、Coreシリーズ搭載64bitOSでは、少なくとも国内では(たぶん世界でも)、VAIO Duo 13、Let'snote MX3(直販版)に続く対応となります。VAIOを触ってみて、本当に便利な機能だと感じていました。
  http://ascii.jp/elem/000/000/872/872162/
  http://pc.watch.impress.co.jp/docs/news/yajiuma/20140624_654750.html
 その反面、従来のWindows PCとは電源周りで異なることがあるので、対策も含めてまとめました。後述しますが、これには、SP3特有の設定である、スリープ後4時間で休止状態に移行する問題への対処も含みます。

◆InstantGoが有効になっているか調べる
 ↓サイトのとおり、コマンドプロンプトでpowercfg /aを実行し、「スタンバイ(接続されています)」が利用可能と出力されていれば有効ということです。表現が直訳ですね。なお、Windows 8.1 Updateが適用されたマシンで、スタート画面に電源アイコンがなければInstantGoが有効という判別方法は、必ずしも正しくはありません(SP3はInstantGo対応ですが電源アイコンはあります)。
  http://pc.watch.impress.co.jp/docs/news/yajiuma/20140624_654750.html

◆電源プランが「バランス」しかない
 InstantGoの仕様に基づき、製造メーカーが用意したのがこれだけというものです。
  http://windows.microsoft.com/ja-jp/windows/power-plans-faq#1TC=windows-8
 後述する、従来のPCのスリープ(S3)を使えるようにするとInstantGoが無効になると、ほかの電源プランも現れます。

◆画面をオフにするとスリープ状態になる
 InstantGoの仕様では、画面オフとスリープはほぼイコールだったと思います。

◆スリープ中のバッテリー消費が多いとき、画面はオフだけどスリープしているか疑わしいとき
 ↓のサイトの方法などで原因を探ってみてください。
  http://ascii.jp/elem/000/000/875/875549/

◆電源アイコンで休止状態が選べるようにする
 デフォルトでは、電源アイコンを押して選べるのは、スリープ、シャットダウン、再起動、です。ここに休止状態を追加するには、検索からgpedit.mscを実行し、コンピューターの構成→管理用テンプレート→Windows コンポーネントエクスプローラー→電源オプション メニューに休止状態を表示する、を有効にします。
  http://www.trishtech.com/2013/04/show-hibernate-in-power-options-menu-in-windows-8/

◆従来のPCのスリープを使えるようにする
 InstantGoモードでのスリープは使えなくなりますが、従来のPCと同じ挙動をするスリープ(S3)を使えるようにすることができます。なおこのとき、休止状態も一緒に使えるようになります。
 ◇方法1:コンパネ→プログラムと機能→Windows の機能の有効化または無効化、から、Hyper-V プラットフォームをインストールする
 ◇方法2(手元では未確認):↓サイトの方法で、bcdeditによりマシンの起動オプションを変える。
  http://d.hatena.ne.jp/kaorun/20140720/1405820586
 ◇方法3(手元では未確認):検索からregeditを起動し、
  HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Power
  のCsEnabledを1から0にする。
  http://www55.atwiki.jp/t100ta/pages/6.html

[2014/07/23 01:30追記]
 Surface Pro 3では、Vaio Duo 13と違って、Hyper-V プラットフォームを有効化しても従来のスリープ(S3)は使えないようです。
  http://m.winsupersite.com/mobile-devices/surface-pro-3-tip-hyper-v-vs-connected-standby

Hyper-V プラットフォームを有効化するとInstantGoが無効になる
Visual Studio 2013(のUpdate 2)をインストールするとInstantGoが無効になる
 コンパネ→プログラムと機能→Windows の機能の有効化または無効化、ないし、bcdeditにて、Hyper-V プラットフォームを有効化できますが、↓のサイトのとおり、Hyper-V プラットフォームとInstantGoは排他です。VS2013(のUpdate 2)が影響するのは、それに含まれるWindows PhoneのエミュレーターHyper-V上で提供されるためです。↓のサイトのようにHyper-Vコマンドラインで、あるいはコンパネで切り替えてでもInstantGoを復活できそうですが、使わなければ最初からHyper-Vがオンにならないようにするのもありかと思います。手元で試したところ、VS2013のインストールやアップデート時にWindows Phoneアプリ開発関係機能のインストールを回避したら、Hyper-V プラットフォームはオンになりませんでした。
  http://d.hatena.ne.jp/kaorun/20140720/1405820586

Hyper-V マネージャーとInstantGoを共存させる
 Hyper-V プラットフォーム(ローカルでの仮想マシンの作成機能など)と同じ設定箇所で有効化できるHyper-V 管理ツール(ローカルやリモートの仮想マシンの管理機能など)については、InstantGoと共存可能です。以下のエントリーの方法にて、SP3のHyper-V マネージャーからほかのマシン上にある仮想マシンを管理しています。
  http://ladoco.hatenablog.com/entry/2014/07/06/044528

Surface Pro 3でスリープ状態をしばらくほおっておいたら、通知がされなくなる、設定したアラームが動かない、電源ボタンを押さないと復帰しない、復帰にやや時間がかかる
 SP3のデフォルト設定では、InstantGoモードでのスリープが始まってから4時間たつと休止状態に移行するということになっています。休止状態ということは、ネット接続も止まるので通知もされなくなりますし、ストアアプリのアラームも働かなくなりますし、ペンをノックする(ペンのノック部分とSP3とはBluetoothでつながっています)、タイプカバーを開く、といった方法では復帰しないと思いますし、スリープから復帰する場合に比べて時間がかかります。


Surface Pro 3でスリープ状態から休止状態へと移行する時間を延ばす
 一つ上で、SP3ではInstantGoモードでのスリープから4時間で休止状態に移行すると書きましたが、この4時間という値をレジストリをいじって変更することができました。以下に方法を書きます。
 準備:コマンドプロンプトでpowercfg /lを実行して、電源設定のGUIDを把握しておく。
 方法:検索からregeditを実行し
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\User\PowerSchemes\(使用する電源設定のGUID)\e73a048d-bf27-4f12-9731-8b2076e8891f\7398e821-3937-4469-b07b-33eb785aaca1
    について、
     ◇所有者とアクセス許可を(一時的に)変更する。
     ◇ACSettingIndex(電源接続時)やDCSettingIndex(バッテリ運用時)の値を、3840(16進数の値。10進数で14400秒=4時間)からより大きな値に変更する。

[2014/07/23 20:30追記]
 もう少し手軽な方法が見つかりました。
  http://ladoco.hatenablog.com/entry/2014/07/23/195609

 【参考】
 (略)\Power\PowerSettings\e73a048d-bf27-4f12-9731-8b2076e8891f\7398e821-3937-4469-b07b-33eb785aaca1
 に、このレジストリ項目の説明や上下限値などが記述されています。それによると、この項目は、Timeout before the system performs the CS battery saver action.を表していて、値は3840~ffffffffまで設定可能とされています。
 比較のために、VAIO Duo 13とdynabook tabのレジストリを見たところ、(使用する電源設定のGUID)以下に当該のエントリー自体がなかったので、エントリーごと消すことでも休止状態への移行を防げるのかもしれません。PowerSettings以下にはエントリーがあったので、逆に、VAIO Duo 13やdynabook tabでスリープから一定時間経過すると休止状態に移行させることもできるのかもしれません。
 ほかの方法?:コマンドプロンプトでpowercfg /h offを実行すると、休止状態がオフになるので、スリープから休止状態への移行はしなくなるみたいです。ただし、powercfg /sleepstudyで得られるInstantGoのログを見ると、スリープ後4時間以降の挙動は記録されておらず、実際どうなっていたのか不明です。また、高速スタートアップが使えなくなりますし、残りバッテリー量が少なくなったときに休止状態に移行することもできなくなります。

◆スリープ状態で残りバッテリー量がほとんどなくなったときの挙動
 一つ上のレジストリ変更をするしないに関わらず、InstantGoによるスリープ中に残りバッテリー量がほとんどなくなったときは、コンパネの電源オプションで設定できる、バッテリ切れ時の動作が適用されるようです。デフォルトでは、残り5%で休止状態に移行する設定になっています。

--感想--
 InstantGoモードのスリープから休止状態へと移行する時間の変更は、レジストリの所有者とアクセス許可を変更したあと、元に戻すのに苦労したものの、やってみて大変満足しています。VAIO Duo 13では何日でもInstantGoモードのスリープが継続されていたので、SP3でもそうあるのがよいと思っています。例えば、ストアアプリのアラームは、設定した時刻になるとスリープから復帰して音が鳴るのですが、SP3のデフォルトの設定では、スリープ開始から4時間以内のアラームは鳴るが、それより先のアラームは鳴らないということになります。もし、これを知らない方がアラームを目覚ましとして設定したら、寝坊してしまいかねません。
 一方で、スリープ中のバッテリーの減りは、当然、休止状態と比べて多くなります。手元の環境では、Wi-FiBluetoothに接続したままInstantGoモードのスリープに入ると、1時間あたり0.5%弱のペースでバッテリーが減っています。VAIO Duo 13よりは減り方が速いです。InstantGoの当初の要件(現在の要件とは異なる可能性があります)は、16時間で5%以内だったそうですが、手元のSP3はこの基準を満たしてはいません。
  http://pc.watch.impress.co.jp/docs/column/config/20131130_625774.html
 SP3のデフォルトの挙動は、この当初の目標値を達成できなかったから設定されたのではと想像しています。バッテリ消費ペースとしては手元のSP2の従来スリープ時と同じくらいなので、十分許容できます。もちろん、バッテリー消費をこれ以上減らす方法をご存じの方がいらしたら、教えていただけると助かります。
 スリープ中の通知機能について。スリープ中にメール着信などがあると通知の音が鳴るのですが、インジケーターがないので音を聞き逃すと気づきません。また、スリープから復帰させたときに通知内容がタイルに表示されているのですが、OSの機能として通知履歴リストがないので、気づきにくいと思います。


【その他設定】
◆使い始めでファンがうるさい
 数十個のWindows Update、その他ソフトのインストール、検索インデックス作成、自動メンテナンスなどでファンがよく動いていました。どのPCでもあることですね。このうち、自動メンテナンスはオフにできるのですが(↓サイト)、Windows Updateの更新情報取得や定期的なセキュリティスキャンが自動実行されなくなるので、設定を変更しないことにしました。
  http://news.mynavi.jp/column/windows/242/
 設定が一とおり落ち着いたあとですが、ストアアプリでwebサイトなどを閲覧するときに、ファン音は聞こえないものの、本体後ろ右上が暖かくなります。アイドル時は時折、バックグラウンドで何かプロセスが走り、それによりファンが回っているような気がします。ベンチやゲームなど、大きな負荷になるようなことはしていないため、そこらへんのパフォーマンスはわかりません。

日本語配列の外部キーボードが英語キーボードとして認識される
 (例: Shift+2で@が出力される)
 SP2でも発生したことですが、Type Coverではなく「ThinkPad Bluetooth ワイヤレス・トラックポイント・キーボード - 日本語」をつなげたときに発生しました。↓の1つめのサイトの方法で直しました。
  http://blogs.itmedia.co.jp/kizawa/2013/04/surface-49ed.html
  http://engineermemo.wordpress.com/2013/03/03/キーボードの配列を日本語英語に変更/
 これでとりあえず解決したのですが、引き続き、ハードウェアキーボード準拠のタッチキーボード(PC設定の変更からオンにするやつ)のレイアウトがおかしく、また、リモートデスクトップでほかのマシンにログインしたらそのマシンでは英語キーボードになってました。これらは、SP3の高速スタートアップ機能を一度オフにしてシャットダウンすることで解消されました。