BAD_ACCESS

おもにiOS、ときどき変な電子工作、ガジェット話。

Bluetoothサイコロ「DICE+」を試す

DICE+ DICE+が届いたので早速"Hello world"してみる。

DICE+をHello Worldする。

iOS版、android版、Unity版が用意されていてサンプルコードはGithub上にアップされている。

DICE+ repositories

すぐcloneして試すことができるが、DicePlus.framework自体はデベロッパ登録した後に手に入れることができるので、まずdeveloperサイトでサインアップしておく。

このリポジトリ"GameTechnologies / Hello-DICEPlus-for-iOS"からcloneしてきたプロジェクトに、developerサイトからダウンロードしたDicePlus.frameworkをドラッグして追加する。

実機でビルドが完了したら、DICE+本体を180度ひっくり返すことで電源が入る。

Bluetoothが接続しにいっている様子は伺えるが、iPhoneとDICE+の接続が確立しない。

色々と調べてみたが、ソフトウェア側には問題がないようなので、ハード側(DICE+側)を確認する。

Firmware uploaderで最新のDICE+にアップデート

結論からいうと出荷時のDICE+のファームウェアのバグ?で接続が確立していないようだった。 (デモとして配布されているDICE+対応ゲームはちゃんとうごいていたので、その時点でのファームウェアに対応して開発されたのだろうと思う)

ファームウェアのアップデートに際して、まずはuploaderをダウンロードしてくる。

 2013-10-22 19.45.15.png

ダウンロードしたアプリケーションを開くと下記のような画面が出る。 どうやらファームウェアをアップするためにまずはUSBケーブルの 抜き差しを2回 する必要がある。 抜き差しを2回 というのが重要。

 2013-10-22 19.32.18.png

普通にUSBケーブルを差しているだけだと薄いオレンジ色で点滅しているが、アップロードモードになっているときは白色で点滅。

 2013-10-23 23.06.29.png

認識されると下記のような画面に変わるので、uploaderをダウンロードしたところから最新のFirmwareをダウンロードしてきて、アップロードする。

リベンジ Hello DICE+のプロジェクトを再びビルド

今度は接続までの時間がスゴく短くなった!ちゃんと接続を確立したことを確認して(サイコロの字が緑色に光る)サイコロを振る!

ログの結果はこちら。完全にハロワー用のコードなのでログはシンプル。 もっと色々な情報が取れるのかも。

2013-10-23 23:11:13.550 Hello DICE+[18850:907] Good and bad rolls: 3
2013-10-23 23:11:13.552 Hello DICE+[18850:907] Good rolls: 3
2013-10-23 23:11:18.260 Hello DICE+[18850:907] Good and bad rolls: 4
2013-10-23 23:11:18.262 Hello DICE+[18850:907] Good rolls: 4

とにかくちゃんとサイコロの出目までとれた!