じぶんキーボード設定アプリ

じぶんキーボードのキー割り当てを変更するMacのアプリを作りましたので公開しています。

この記事の内容

2013年に自由にカスタマイズできる足で操作するフットキーボードを製作したのですが、問い合わせをいただく内容を見ると、必ずしも足で操作するだけではなく、自分用にカスタマイズできるキーボードが欲しい、という方が何人かいらっしゃいました。

ということで、先日からじぶんキーボードとしてプリント基板も作っていたのですが、Macからキー割り当てを変更するアプリも作りましたので、一度このタイミングで今までの作業をまとめておこうと思います。

 

じぶんキーボードのスペックと使い方

今回は制御用マイコンとしてPIC18F14K50を使用し、スイッチ(キー)の接続を簡単にできるようにI/Oピン1本にスイッチを1個つなげるようにしました。PIC18F14K50はUSBデバイスにした場合はI/Oピンは13本取れますので、スイッチを12個と、キー割り当てを変えるためにシフトキーを1個つなげる仕様にしました。

使い方としては、制御ボードに自分の好きなスイッチ(キー)をつなげます。つなげるスイッチは、電気的にOFF/ONができればなんでもOKです。こんな感じで使えます。

Board usage

 

ハードウエアまとめ

ハードウエアですが、ノイズ対策をしないものだったり、きちんとしたものを設計してみましたが、普通に使うのであれば、Standard版でいいと思いますので、今後の作業は基本Standard版で進めたいと思います。

以下、Standard版の回路図です。

Jibun keyboard standard version schematic

EAGLEの回路図とボード図もアップしておきます。ウィルスチェック済みです。

https://github.com/tool-lab/foot-keyboard-standard

 

ファームウエアまとめ

PIC18F14K50用のプログラムは、Microchip Technology社のサンプルアプリをベースにしています。サンプルアプリは、Microchip Libraries for Application Vesion 2015-08-15に含まれているものです。こちらもMPLABXのプロジェクトファイルをアップしておきます。ウィルスチェック済みです。

プログラムの変更箇所には以下のコメントを入れてありますが、不明点がありましたらお問い合わせフォームからお問い合わせ頂ければと思います。

https://github.com/tool-lab/jibun-keyboard-firmware

 

設定アプリ(Mac用)まとめ

じぶんキーボードをMacに接続した状態で、Macからキーの割り当てを変更できるよう、設定アプリを作りました。今後Swiftに移行していくと思いますので、Swiftで作ろうと思いましたが、IOKitのUSB HIDにアクセスする方法がわからなかったので、Objective-Cで書いてあります。以前作成したフットキーボード向けのソースをベースにしていますので、アプリ名は「JibunKeyboardSetter」ですが、ソースコード中、FootKeyboardという名称のままにしてあります。あと、デザインセンスが全くないので、とりあえずデザインみたいな感じのアイコンになっています。

Xcodeのプロジェクトをアップしておきます。ウィルスチェック済みです。

2016年5月14日追記
なお、以前公開していました2016-05-07版はシフトキーを押した時の動作処理の実装漏れ&バグがありましたので、修正して2016-05-14版として更新しました。

https://github.com/tool-lab/jibun-keyboard-setting-app

 

課題と今後の作業

これで、12個のキーの割り当てと動作ができるようになったのですが、いろいろ課題、というか疑問なところもあります。まとめておきます。

 

更新履歴

日付 内容
2016.5.8 新規投稿
2019.3.24 リンクをhttpsに修正
ダウンロードファイルをgithubに引越し