2018年6月2日土曜日

iOSスイッチコントロール用外部スイッチの自作

iOSではアクセシビリティ向上機能として操作を外部スイッチに代替できる
この外部スイッチについての調査および自作の方法についてのメモ

外部スイッチとは

iOSのいう『外部スイッチ』とは外付け入力機器のこと
分かりやすいものでいえばBluetoothキーボードが該当する
その他Bluetoothコントローラ、カメラアダプタ経由有線キーボードなど
(※iOSとの相性次第なのですべての製品が保証されるわけではない)
有線カメラシャッターはダメであった

電子工作におけるBluetoothキーボード制御

実物をリレーで叩く、BT機能のあるマイコンでプロトコル再現などが考えられる
ここではBluetoothモジュールRN42のキーボードエミュレーション機能を用いる

BluetoothモジュールRN42

内部コマンドによる機能切り替えだけでHIDキーボードとして動作する
切り替え後は外部からはBluetoothキーボードとして認識される
キーボード打鍵はシリアル入力により実現できる
よってマイコンなどからiOSを間接的にコントロールすることが可能となる

画像は秋月より/ピッチが狭く使いづらいが結線するポートはわずか
切り替え方法:
 RN42へシリアル接続(有線、無線どちらでもよい/出荷状態は115200bps)
 コマンドモード遷移『$$$』後に『S~,6』コマンド入力で切り替え
 次回起動時からはキーボード扱いとなる

注意点:
 この機能はRN42のファームウェアバージョン依存
 古いものには機能が無い模様(コマンド入力時にエラーとなる)
 ファームアップも無理なので新しく買うこと

スイッチコントロールの設定

以下はiOS側の設定

1.キーボードとBluetooth接続を確立
 設定→Bluetooth→Bluetoothをオン
 デバイスの中からキーボードを選択してペアリング

2.スイッチの登録
 設定→一般→アクセシビリティ→スイッチコントロール→スイッチ
 新しいスイッチを追加→外部
 『外部スイッチをアクティベートしてください』という表示を確認
 ここでスイッチとして用いたいキーを押す
 『新しいスイッチ』ウィンドウが開くので適当なスイッチ名を入力し保存
 『アクション』ウィンドウが開くのでスイッチに対応するアクションを選択


ここまで
次回以降のメモでレシピを用いた実用的なスイッチ運用を行う


 

0 件のコメント:

コメントを投稿