Corne Light v2のBLE+LPME-IO対応 #DIYキーボード

Posted by johtani on Monday, January 11, 2021

目次

メインマシンとMacは下記のサンワサプライのUSB接続のKVMスイッチを使っていますが、もう一台ノートPCがありここに接続しているCorne(初めてのDIYキーボード)が長いUSBケーブルでつながっています。

時々必要になって、デスクにキーボードだけ引っ張ってきて利用するのですが、ケーブルの取り回しがまぁ邪魔で。。。 BLE対応(BLE Micro Pro)をしてみようかなということに。

BLE + LPME-IO対応

分割キーボードをBLE対応(それぞれにBLE Micro Proを実装)すると、キーボード間のつながりがいまいちになることもあるというのをちらほら見ていたので、BLE Micro Pro + LPME-IOという構成で、 Corneのキーボード同士はTRRSケーブルで接続し、PCとCorne間をBluetoothで接続する構成にしてみました。

BLE Micro Proについては、公式ドキュメントにいろいろと記載があります。

材料

ということで、材料は以下の通り。セット販売は売り切れていたので、個別に購入しました。 コンスルーと電池以外は1つずつです。

実装

まずは、それぞれ組み立てです。

電池基盤

以下の記事を参考にはんだ付けしました。

注意点は以下の通りです。

  • 基盤が軽いので固定が必要(マスキングテープでマットに貼り付けたらましになった)
  • 電池ホルダーが変形しやすい(設置して、足を折るために上から押さえつけたら、本体が曲がってしまった。。。)
  • 部品が細かいので大変(老眼だから?)

BLE Micro Proとの接続は参考にしたyfuku docsにある方法(余っていたピンヘッダを1本ずつ使ってはんだ付け)を採用しました。 (パッと見大丈夫そうだったので電池基盤の裏に絶縁テープは貼ってないです貼ってないです)

BLE Micro Pro(もげ対策)

BLE Micro Pro自体はコンスルーをはんだ付けするだけですが、今回はもげ対策として、ダイソーで買ってきたグルーガンで ちょっとだけ補強してみました。 初グルーガンだったので不細工だけど。これ難しいな。

効き目あればいいけど?

LPME-IO対応

いくつかのジャンパをはんだでブリッジ

まずは、LPME-IOのREADMEのページの導入手順を読み、いくつかのピンをジャンプしました。 せきごんさんのBLE-Micro-Proのリポジトリに、CorneのLPME用コンフィグファイルを見ると、ジャンプするのは20, 19, 18, 17, 16, 15に対応している、F,E,D,C,B,Aの6つです(写真撮り忘れた。。。)。

TRRSのI2C対応(って言い方であってるのかなぁ?)

ジャンプだけでいけないかなぁ?と思いましたがダメでした(USBでつないでみたけど、左手(BLE-Micro-Proがついている側)だけ入力可能です。

BLE Micro Proの公式サイトにLPME-IOについても記載があります。 実績のあるキーボード一覧にCorne Lightの記載もあったので、試してみようと思ったのが発端です。

ただ、LPME-IOの欄に注意書きが。

*LPME-IOを使うには改造が必要

また、一覧の最初にも記載があります。

LPME-IOを使うにはキーボードの左右の有線通信がI2Cである必要があります。とくにOLEDに対応しているキーボード等の場合は、I2C用のピンをTRRSジャックに接続する改造を施すことでI2C化できる場合があります。

まだ、自作キーボードの仕組みをがっつり理解しているわけではない初心者なので、まぁ、ちょっとわからないかなと。。。 BLE Micro Proのはじめにのページを見ると、 Self Made keyboard in JapanのDiscordに専用チャネルがあるようで、過去ログを検索してみました。 検索したところ、Corneの場合Micro ProのSDA(写真の青い線)とSCL(写真の黄色い線)(参考:Corneの基盤の図)をそれぞれ、TRRSの2つのピンに接続する必要がありそうだというコメントがありました。

Corne Cherry v2の場合は、接続するためのショートカットが用意されていましたが、Corne Light v2だと見当たりませんでした。 ということで、線を使って物理ショートカットしました。ちなみに、ショートカットは両手ともに必要なようです。

USB-Cで接続テスト

上記対応が終わって、基板に設置してUSB-Cケーブルで接続したところ、外部ドライブとして見えるようになりました。

キーマップの書き換えとか

公式ドキュメントのBLE Micro Pro Web Configuratorを使うの手順通りに書き込みを行っていくと、特に問題なく接続できました。 便利すぎですね。キーマップの変更は、これまでのCorneのキーマップJSONファイルからコピペして書き込んだだけです。 (この後、BLE用のキーマップを書き足すためにもう一度変更しますが)

LPME-IO対応なので、Micro Proは片側しかないので、書き換えも楽々でした。

BLEで接続テスト

今回の目的だったWindowsにBluetoothで接続できるようにしてみました。 最初はサリチル酸さんの記事を見ていたのですが、キーコードがちょっと変わっているようでした。

で、よくよく見ると、BLE Micro Pro Web ConfiguratorにBLE関連のキーも用意されているじゃないですか。。。

BLE関連のキーを割り当てた後は、USBをオフにして、Bluetoothをオン、BTNEWで新しくペアリングするようにすれば接続完了でした。

課題

これまでと違い、すんなり実装ができましたがまだいくつか気になる点が。

  • 複数の機器とペアリングして切り替え
    • Macともペアリングしてみようとしたのですが、切り替えがうまくいかないようで。。。
  • OLEDつけるにはどうするんだろう?
    • 左手側は電池が乗っているのですが、右手側はLPME-IOだけなので、上にOLEDを載せる余裕があります。
    • なので載せてみましたが点かないですね。ファームウェアを何かしないといけないんじゃないかな?調べないとなぁ。

という感じです。 まだちゃんと長時間使っていないので、他の問題点も出てくるかもしれませんが、まぁとりあえず使ってみてからかな。 うまくいくようなら、メインマシンにBluetoothモジュール追加してみるのもありかと考えているところです。

調べながら、自分なりに対応してみましたが他にもいい方法とかあれば教えてもらえると助かります。


comments powered by Disqus

See Also by Hugo


Related by prelims-cli