LoginSignup
5
1

US配列の自作キーボード(7skb、7sPro)をJIS配列設定のwin機にそのまま刺して使えるファームウェアを作りました

Last updated at Posted at 2022-08-14

この記事は何か

表題のファームウェアを作りました。
そのhexファイルとソースコードを紹介します。

経緯

初めての自作キーボードを作りました。
キットはHHKBベースの配列とスペースバー分割が魅力的な「7sPro」です。

しかし、家でも職場でもPCは基本的にJIS配列設定で、他の人が使用する場合があるなどの都合でUS配列設定に変更することができません。

これまではULE4JISという変換ソフトを活用していましたが、触れるPC全てにこれを導入するのもなんだかなという感じがあります。

そのため、ULE4JISと同等の変換を行うカスタムファームウェアを作成しようと思った次第です。

同じように「JIS設定PCにUS配列キーボードをそのまま刺して使用したい!」という方がいらっしゃるかと思い、ファームウェアとソースコードを公開いたします。

ファームウェア(hexファイル)

こちらからDLしてください。
https://drive.google.com/file/d/1rP4Tg7jqCkSk_IkTsk2gwHyI9M2Qzqgo/view?usp=drive_link ←2024/1/3更新。viaプロトコル9対応。
https://drive.google.com/file/d/1Qv9hHbpHlk7k9BDQ5rf_zfuFqrAMnKny/view  ←旧バージョンのRemap(0.18)用です。

他のファームウェアと同様、Pro Micro Web Updater などで書き込めます。

ソースコード

githubで公開しています。
https://github.com/p2heycocoon/qmk_firmware_7skb_via_jtu
↑2024/1/3更新。viaプロトコル9対応。

qmk_firmware の keyboards/salicylic_acid3/7skb/keymaps の直下に
via_jtu が来るように配置して、
QMK MSYSで make salicylic_acid3/7skb:via_jtu をすることにより
上記hexファイルが作成されます。

keymap.c 内の // 以下追加 から // 追加ここまで がベースから追加した内容なので、
他のキーボードにも同じことをすれば活用できるかもしれません。

hexフォルダ内のファイルは上記「こちらからDLしてください。」のファイルと同じです。

特徴

良い面

  • 上記の通り、JISキーボード設定のWIN機でそのまま使用できるようになります。
  • VIA対応です。
  • KC_AT など、シフト押下後を直接指定するキーコードにも対応しています。
  • 変換対象キー(@や’など)を押しっぱなしで、通常キーと同じ様に連続出力できます。
  • 変換対象キーを押したままで、放す前に他のキーを押しても問題ありません。

悪い面

  • MAC機など、WIN機以外でどうなるか未検証です。
  • 変換対象キーをシフトキーといっしょに押したままで、変換対象キーを放す前にシフトキーを放すと別のキーコードが出力される場合があります。(なので、文字入力やプログラミングなどには問題ないと思いますが、ゲームには不向きかもしれません。)

この2番目の「変換対象キーをシフトキーといっしょに押したままで・・・」を解決できそうな案がございましたら、何卒コメントにお願い申し上げます。。。

謝辞

7skb、7sProの開発者であるサリチル酸様がqmk公式 https://github.com/qmk/qmk_firmware に公開された keymap.c をベースにさせていただきました。ありがとうございます。

変換処理はkoktoh様の https://github.com/koktoh/jtu_custom_keycodes を参考にさせていただきました。ありがとうございます。

2022/09/04 追記

KC_PEQL(単独のイコール) KC_PCMM(単独のカンマ)に対応していなかった不具合を修正しました。
(リンク先のhexファイルとgithubのソースコードを修正)

2024/01/03 追記

2023年9月にバージョンアップしたRemapに対応するようにソースコード、ファームウェアを更新しました。

5
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
1