2018年03月13日 LuiniLuini

この記事はOthloTech Advent Calendar 2017の23日目の記事です。

どうも、Luiniです。

突然ですが、以前こんな記事(Nintendo SwitchのJoy-ConをパソコンにBluetooth接続してみた)を書かせていただきました!(`・ω・´)

それから月日が経ち、諸事情により私のメインPCがWindowsからMacへ。
ここで困った事態が訪れます…そう、JoyToKeyがMacに対応していない!

代替ソフトを探してみたところJoystick Mapperというソフトが見つかりましたが、有料なようです。

まあ、高くないし買うk…あれ?エンジニアなら作ればよくね?

ということで、Mac初心者・Bluetooth初心者・swift初心者が調子に乗ってJoy-Conでパワポ…いやKeynoteを操作することを目標に奮闘していく様を記した記事となります。
まだまだ奮闘中ですのでその点はご容赦ください(^ ^;)

なお、お金払うから今すぐJoy-Con繋ぎたいって方はこちらの記事(Joy-Con を、最高のプレゼンリモコンに。)がドンピシャで参考になるので是非一読ください。


完成予想図


まず、今回の目論見を確認しましょう。

私はJoy-Conの各ボタンにキーボードやマウスの操作を割り当てられるMacのアプリケーションを欲しています。欲しい要素は次の通り。


  • ①BluetoothでJoy-Conと接続できる

  • ②Joy-Conの各ボタンの押下を検出

  • ③キーボードもしくはマウスの操作に変換

  • ④バックグラウンドで動作

  • ⑤複数の設定ファイルの切り替え

  • ⑥いい感じのUI

Joy-ConとBluetooth接続してやりとりができないと話にならないので、兎にも角にもBluetoothのお勉強からです!笑


BLE (Bluetooth Low Energy)


ここからは目的を達成するために必要な情報だけをおさえていきます。

まず、BLEとはざっくり言うと今主に使われているBluetoothの規格です。
省電力がどうこうとかはJoy-ConとMacを繋ぐ上でどうでもいいのでそれ以上のことは各自ググってください←

[追記 2017/12/24]
と、この勢いで BLE についてつらつら書き連ねていたのですが、とある事実に気づいてしまいました。

Joy-Con、そもそも BLE じゃないやん!!
誰や Joy-Con は BLE とか言ったやつ!(自分)

と言うことでこの記事も以降はカットさせていただきました。(より一層内容のない記事に…笑)
BLE と Bluetooth 3.0 では大きく異なるのでまた勉強し直して出直してきます…(´・ω・`)