Swampdog part7 -コントローラ接続失敗-
概要
前回は、怪しさは残るもののVRアプリ化することができました。
細かい調整は実際にVRゴーグルにセットしてコントローラで操作しながら行うことにします。
引っ越し段ボールからPS3コントローラを発掘。
DUALSHOCK3ではなくてSIXAXISでした(古い)。
PS3とAndroidを繋ぐための変換ケーブルにはサンワサプライのAD-USB18を使いました。
お値段500円。
今回はPS3コントローラをVRアプリ操作の入力端末にすることを目指します。
環境
- 端末: Digno(503KC)
- Androidバージョン: 6.0.1
- PS3コントローラ: SIXAXIS
- Unity: 5.6
Androidと接続
そもそも手持ちのAndroidがコントローラの入力信号を受け入れるかチェックします。
以下の記事にはAndroid 4.0では接続するだけで使用できるとのこと。
参考: android端末にPS3のコントローラーを接続する
ゲームだけでなく通常のホーム画面も操作できるとのことですが、うんともすんとも言わず。
参考: AndroidでPS3コントローラーを使うためのケーブルを買って快適ゲーム環境を構築!
コントローラの1~4のランプが早く明滅しています。
これはコントローラが無線認識中とのこと。
考えられる原因は、
- PS3コントローラの電池切れ(1年近く放置して合ったのを10分ほどMacにUSB接続していた)。
- PS3コントローラが壊れた。
- Androidの端末が対象外。
- 変換ケーブルが合っていない。
こんなところですかね。
原因究明
できるものから対処します。
まずめんどくさいけどPS3本体を引っ張り出してきて電源入れて正規の方法でコントローラを充電します。埃。
PS2もできる初期型モデル。10年ぐらい経つんですかね。骨董品だ。
ちゃんと起動しました。記念撮影。
コントローラはしっかり認識されています。しばらく充電しておきますが、コントローラ側の問題ではないようです。
その間に昔使っていたGalaxySIIを充電。
Dignoの代わりにこちらでも試してみます。
が、パスワード覚えてない。。。
致し方ないので初期化してみます。なんかカメラの画像とか残ってたんだろうに。
参考: 初期化方法
色々調べてみましたがうまくいかず。
電源落として、
ボリュームボタンの上 + ホームボタン + 電源ボタン
でリカバリーモードに入るとのことでしたが。
ボリューム下ボタンとか、色々情報がありましたがどれも効かず。
一旦諦めます。
PS3コントローラの電池切れ(1年近く放置して合ったのを10分ほどMacにUSB接続していた)。PS3コントローラが壊れた。- SIXAXISが503KCに対応していない。
- 変換ケーブルが503KCに対応していない。
最後のが怪しいなぁ。
と色々調べていると、怪しい文章が。。。
■対応機種
USBホスト機能対応のマイクロUSB Bメス 又は、マイクロUSB ABメス端子を持つスマートフォン・タブレット
カードリーダー・UBSメモリ・USBキーボード・USBマウス・USBハブなどのうち、USBホスト機能に対応するUSB周辺機器
※USBホスト機能に対応していないスマートフォン・タブレットでは使用できません。
※USBホスト機能に対応していないUSB周辺機器では使用できません。引用: Wowma商品紹介ページ
DIGNO調べます。
確定情報は見つけられませんでしたが、どうやら格安スマホにはOTG機能(=USBホスト機能)がついていないことが多いようです。
USBメモリも挿してみましたが認識しませんでした。
というわけで今回の原因は
- DIGNO 503KCがOTG機能を備えていない。
でした。
困った。
そしてパスワードのわからないGalaxy SIIはOTG機能持ちらしい。
これは何としても初期化したいところですが。。。
ダメ元でもう一回試したらリカバリーモードに行けました。
どうやら起動画面が出た後も押しっぱなしにしないといけないみたいでした。
ボタンはボリュームアップボタン + ホームボタン + 電源ボタンでした。
ボリュームダウンボタンで項目を変更。
「wipe data/factory reset」を選択して電源ボタンを押すことで実行。
再確認を経て初期化が完了しました。
だいぶ手こずりましたがようやくスタート地点に到達というところです。
(そういえばこのスマホ、トイレに水没したやつだった。うわー。)
背に腹はかえられない。
仕切り直してAndroidと接続
Galaxyを充電してSIXAXISを接続しましたが、なぜかフリーズしました。
USBメモリでも同様に、なぜかフリーズ。
動作も怪しいし、画面がガビガビになる。
そしていじっているとフリーズ。
やはりダメでした。
新しくOTG機能付きのAndroidを入手しないとテストはできないですね。
参考: USBホスト(OTG)機能対応のandroidスマートフォン
とりあえず、今回は実機テストを諦めます。
次回
Mac上でエミュレータ起動して、これをSIXAXISで操作できないかな試行錯誤してみます。
VR感は得られませんが、機能の検討には使えると思います。
- MacがSIXAXISの入力を受け付けるようにする
- エミュレータでSIXAXISの入力を受け付けるようにする
- アプリのカメラ機能などをSIXAXISで操作できるように修正する
こんな感じで。
今回はハードウェアに振り回された感がすごい。
知識がないと苦労します。ハードにもある程度精通したいな。
ちなみにエミュレータは特にこだわりなく選択しましたが、Nexus 5xです。
関係あるかわかりませんが、一応Nexus 5xはOTG機能付きらしいです。
参考: Nexus Help Forum Does Nexus 5X support OTG (USB Host)?
中古で2.5万円ぐらいなので購入はないですね。