左右分離Ergo42キーボード作成(異種交配スイッチ)

左右分離型のキーボードは、ErgoDoxEZキーボードを持っている。
他にもあるが、取りあえずWindowsOS用の普段使いキーボードにしている。

そして、Helixキーボードはゴミだった。
ゆえに、今回3つ目の自作キーボードに挑戦する(リベンジだ)。
二つ目は、名刺型の小さい[キーボード](b685885ca1b43561b65b)だ。

こちらも[組立書](https://github.com/Biacco42/Ergo42 "ギットハブ")が存在する。
しかし、英語で挫折しそう・・・案ずることなかれ。
一応[日本語訳](https://github.com/Biacco42/Ergo42/blob/master/README_jp.md "JapPage")がある。

前回は、名刺サイズのキーボードを作成した。同時に[購入](https://qiita.com/chesscommands/items/53629173929462dce925)した。
今回は、本命の左右分離型キーボードである[Ergo42キーボード](https://booth.pm/ja/items/952695 "BOOTH販売サイト")だ。
これもHelixキーボードのように国産だ。
今回こそゴミにしないように頑張って作ろうと思う。


# CherryMXとロープロファイルの混在
今回は、Helixキーボードがゴミのままなのに、次の自作キーボードに手を出すことにした。
そして、Helixキーボード作成時に余った"Low Profile Kailh(ロープロ)スイッチ"と言う薄型キースイッチを使うことにした。
なおかつ、通常のチェリー軸も合わせて使うことにした。
いわゆるハイブリットキーボードを目指す。混合とも言う？

![異種交配.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/b94a6249-eacb-359b-cba5-3ccb366d2116.jpeg)

親指の部分をロープロにし、それ以外をチェリー軸の大きさのキースイッチを使うことにした。
実際は、純粋なチェリー軸だけでは無いのだが・・・(だから混血キーボード)。

## 検証　ダイオードの配置場所
組立ガイドは、チェリー(及び互換)軸の場合は、同じ面にダイオードを配置するように説明している。
ロープロ軸の場合は、裏面にダイオードを配置するように指示する。

![薄々と同列にダイオード配置.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/1053b81c-8aa3-103e-d23a-e98ed32c6e22.jpeg)

実際に試しに配置したが、問題なさそうに思った。
キースイッチが鑑賞するのかと思ったが、違うようだ。
では、次の検証に移る。

## 検証　プレートを挟む
ダイオードの役割は、キー押下の信号送信だけでなく、物理的にキースイッチを支える役目も担っている。
それが以下の画像だ。

![ピンの足の長さ.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/155f7df1-d170-2d75-14ee-4026a172ebc3.jpeg)

本来のチェリー軸の場合、キースイッチ＋プレート＋ダイオード＋PCBの見た目で構成される。
なぜこの組合せかと言えば、ダイオードをPCBの裏面に付けた場合、プレートとPCBがひっつくことで、プレートがキースイッチを支えられず、不安定のままはんだ付けすることになってしまう。

そして、薄型ロープロの場合、同じ組合せをしたとき、今度はプレートとPCBの間にダイオードがあるため、ロープロのピンがPCBに届かなくなってしまい、キースイッチとしての役割が果たせなくなってしまう。
そもそもはんだ付けすら出来なくなる。

あぁハーフ挫折.


















# キーボード作成
Helixキーボードは、いまもゴミのままだが、今回は轍を踏まないように気をつける。
"気をつける"が対策。
"頑張る"が改善案。

以下、左側のみを解説する。
どうせ、右側は左側と同じなのだから・・・。

## ダイオードの取り付け
ごみHelixキーボードとは違い、かなり足の長いしかも嵩のはるでかいダイオードで扱いに困惑する。
それでも頑張って付けることにした。
短足の私は、恨みでも持っているかのごとく短く足切りを実行した。

![ダイオードを左側のPCBに付ける.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/85d47251-5b32-df3c-a20a-83bcbe0e577e.jpeg)

1行ごとにダイオードを付けて、はんだ付けして、次の行に移ってダイオードを付けてはんだ付けして・・・〜して、〜して、〜して・・・を繰り返した。

我ながら綺麗に付けたと思っている。

### テスターでダイオードを検査
全てのダイオードを付け終わったらテスターで確認できる。

キースイッチ上段から列ごとに確認する。

![ダイオードの導通.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/bcfb9b2c-4aa4-788e-571d-cac39b089121.jpeg)

写真を見れば分かるとおり、赤のテスターをProMicroピンの手前側だが向こう側(黄文字)の右端に当てる。
黒のテスターをキースイッチのハの字になっている左側に当てる。
使い方が分かっていないので赤と黒は逆かもね。
そして、右手側の作成時は、逆側を当てる。

2列目(上記の写真薄いオレンジ色)

![2発目の精通.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/0ff6fc85-348b-bcf5-544a-bf3736bb4fda.jpeg)

当然ながらProMicro側の赤テスターも左にずらしていく。

3列目(上記の写真濃いオレンジ色)

![3回目の絶頂.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/b762e772-1752-c971-0c5b-35705a632f92.jpeg)

4列目(上記の写真紫色)

![4発目で達成感.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/ef51337f-ede9-e2d7-c861-237345826f80.jpeg)



5列目(上記の写真青色)

![5発も来れば絶倫だ.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/f147e2aa-c0dd-d526-b3b5-ff2e47e28f51.jpeg)

6列目

![6列目の確認.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/1bd8343d-6260-8011-9dea-12c1517e2be8.jpeg)

7列目

![7発もすれば大往生だ.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/88cea8de-76c3-d05f-60bb-e4483321ba9d.jpeg)

ここで針が振れない部分があれば、ダイオードのはんだ付け部分を見直す必要がある。
（写真では省略しているが、全ての"ハ"部分で確認する必要がある）










## リセットスイッチの取り付け
普通に付ければよろしい。

そして、この存在がよく分からない。
リセットスイッチの役割は分かる。
しかし、ErgoDoxEZキーボードのときのように、リセットキーコードをキーに割り当てるが、リセットスイッチのように動いてくれない。
読み込みソフトが異なるからか!?
かなり不便だよ...

このキーボードでの`リセット`[キーコード](https://github.com/qmk/qmk_firmware/blob/661ca4440cc42f3b60697e98985c44b0571ccfc1/quantum/quantum.c#L288)は、レイヤーを[デフォルトレイヤー](https://github.com/qmk/qmk_firmware/blob/713ec91147aa56849f9e2ff93ee98ef1eb6eebc0/docs/ref_functions.md#reseting-the-keyboard)に戻す役割なのか!?
(見当違いで、無関係の発言をしているのかも知れない。誰か知っていたら教えてください)





## イヤホンジャックの取り付け
TRRSジャックって何？

これも普通に付ければよろしい。
Helixゴミと違い、間違えることはないだろう。









## ProMicroの取り付け
キーボードを普通に置いたときに、ProMicroの配置場所が手前と奥側の二カ所存在することになる。
私は奥側に置いた。
きっとみんなも奥側に配置するだろう。
残念ながらHelixキーボードは、間違えてしまった。恥ずかしいよ。

![リセット・イヤホンジャック.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/fba2e166-710b-4e9a-ee2f-01b615c3bb5b.jpeg)

ProMicroへのピンは上側のみはんだ付けしている(PCBとはしていない)。

![ProMicroの裏側.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/8a9f1bbf-eb56-0214-7e20-a47f1c5d1dce.jpeg)

気になることに、公式ガイドは、ProMicroの接地面を左右同じにしていること。
そのため、私も同じようにチップが見えないように付けた。両手側に、だ。
他の作成ページでは、左右逆になるとか何とか・・・よく分からない。

![公式：Promicroの向き.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/11979239-d3fc-2063-2a71-19f47fba1e73.jpeg)


PCBのバージョンによって異なる？

### 接地面は異なる
ProMicro側の向きは同じでもPCBに取り付ける穴の位置は異なる。

![右手側は前に指す.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/44ccc844-17f9-fe44-82b8-dc8c4be1b0f9.jpeg)








## キースイッチの取り付け
キースイッチをPCBに直接取り付けるわけではなく、フレームを挟む必要がある。

### フレームにキースイッチを入れ込む
気をつけなければならないのは、フレームに向きがあること。

![五カ所穴がある.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/b3cfcd96-4d03-5367-9861-397444819414.jpeg)

意識せずに、キースイッチをプレートにはめてはんだ付けした場合、きっとフレームの強度が落ちる。

![おぼこあり.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/a7bf257b-7df8-c499-6137-b7cfadd9e071.jpeg)

キースイッチを付ける前に、PCBとフレームを合わせた方が無難だろう。



#### キースイッチの購入
用意していたキースイッチを使うつもりだったが、足りなかったため、追加購入した。
購入先は、[ジェイダブルシステム](https://www.jw-shop.com/mswitch-key.htm)という会社を利用した。
赤軸が思ったより少ない所持数だったため、まさか購入するとは・・・。
安く上げるために使い回したつもりなのに・・・むぅぅぅぅ。

![送料.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/f908c3bc-6de0-be17-e991-8362e5e5f98f.jpeg)

国内から国内の送料が1,500円!!
離島に住んでいるわけでもない。離島から送るわけでもなさそうだ。
それなのに千5百円かかる。
震災で寸断して徒歩で持ち運ぶわけでもないだろう。
それでも一千五百円かかるようだ。
ご利用は計画的に^^

よほどのことが無い限り利用しないだろう・・・高いぞ。

##### キースイッチ受け取り
当たり前だが、普通に受け取れた。
稀に、郵便局の対応で、チャイムを鳴らさずに不在票を投函して、わざわざ別の日に受け取らせるからな・・・。

![過剰梱包.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/722ace47-7377-27c3-c7fa-41a5c6f984fb.jpeg)

仕方の無いことだが、少しだけ足の曲がったキースイッチがあった。
誤差の範囲内だろう。

この金額なのは、キースイッチではなく、もっと繊細な電子機器を送るための金額だと思われる。
電池販売もしていたはずだからな。


### フレームとキースイッチをPCBに置く
入れ込むと言うより、置く感じになる。
Helixキーボードでははめ込む感じだったため、キーボードの種類によって変わるのだろう。

![スイッチのはんだ付け.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/90ff2f26-6fd1-6339-2d64-3ff484702edf.jpeg)

上記通り。

スイッチがずれないように、仮でテープ固定をしたつもりだが・・・キースイッチがずれてはんだ付けされてしまった。
結構ショックだった。
しかし、キー入力は問題ない。それでも戻したいよぉ〜(慌てるな。落ち着け。混乱するな。)。















## 枠の取り付け
キーボードに見せるための外観を揃える(備える？)。

![ネジ多い.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/bea863b3-4f7d-5869-0bb2-8da048982e41.jpeg)

左右分のネジなどが1つの袋に入った状態から片方ずつ取り出す必要がある。
Helixごみキーボードは、こんなときゴミではなく、左右に分けていたため、うれしい配慮だった。

### 台座に柱を立てる
黒棒4本
銀棒5本

![勝利の数分建てる.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/cb3ef7c6-ed05-16b7-75ad-48e6de8bc6ac.jpeg)

さほど難しくない。

### 表面からネジ止め
[上記](#フレームにキースイッチを入れ込む)にて、正しくフレームを付けたのであれば、5本のネジ止めができるはず。

![5連勝.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/aa9237c2-c54b-b78a-7cd5-bab5ea6784e6.jpeg)

常識的に、ネジを止める順番は対角線上に軽く止めていく。2回目の巡回で本格的に締める。
そうしなければ、傾く・・・今回の場合はならないだろうけど・・・。

### ProMicro隠し
USB端子が指しにくくなるため、ご開帳のままでも十分だが、折角なので隠すことにする。

![ここにきてピンぼけ.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/c26364d7-a602-02e0-b005-89915e8fda0a.jpeg)

見た目は良くなる。

気になることは、USBケーブルの抜き差しがしにくいこと。
簡単に引き抜けないと言うことは、事故防止にいいのかもしれないし、悪いのかも知れない。
USBケーブルに損傷がでそうなぐらい引き抜きにくい。う〜ん。

隠すにしてももう少し何かあっただろうに...
強く引き抜いた場合、もげそう・・・。

### 義足
お好みで足を付けることが可能になっている。
しかも、なぜか足の長さが2種類用意されている(解説書通り^^)。
素晴らしいことだ。

#### 蛇足
~~個人的には、Helixごみキーボードのように、ゴム足が良かったな。~~
~~ネジの頭が出ているため、机を傷つけないためには、足を付けなければならない。~~
プレートに細工をして、ネジの頭が隠れるようになっていたらな・・・。

ゴム足あった。
良かった。

頭を使って付けなければ、ちょっと強い力でキーを押した場合、傾くので気をつけること。
理由は、端っこに付けたつもりだったが、かなり甘かった。強い力で押したときに傾いた。
しかも、ゴム足そのものが小さい。Helixごみキーボードに付属したゴム足は大きかったのに・・・。

買い増しする場合、ネジの頭の大きさより大きいゴム足を買うこと(誰もが分かっていることだが、ネジの頭の大きさが分からない)。
そこまで高額ではないため、多めに買っておいて損はない。

![生はダメ絶対.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/f448a6da-ad6e-40d0-2cc0-255f7b6bac78.jpeg)

しかし、作者にゴム足の大きさを確認したのだが、なぜか小さかった。
既存のゴム足に合わない。
作者の癖して、自分の逸物の大きさを把握できていないとは・・・大変残念だ。











## 完成
キーキャップを付けて、思い通りの外見になった。
セット購入をしたため、デフォルトのキーマップは、すでにProMicroに書き込み済み。

![hhkb.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/fdb1f956-262b-5c32-b1bb-b723b9f19caa.jpeg)

当然のように、画像上にはHHKBが鎮座している。
そして、キーキャップは、[注文品](ecd07ef140427e357ce5)の発送はだいぶ先なので、今ある[ErgoDoxEZキーボード](20d365bae201ebc598b9)のキーキャップを使い回している。
手前の左右8キーキャップは薄型キースイッチを取り付けているため、薄型キーキャップになる。

### ロープロファイルスイッチ
何とかなった。

![ぶっといのを挿入.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/29d785b6-c75a-65a2-8e39-498e46a4c038.jpeg)

ダイオードの足を無理矢理挿入し、詰め込んだ状態ではんだ付けをした。
そうしたら認識したので、私のやり方は間違っていなかった。

#### 異種混合失敗
通常スイッチと薄型スイッチを混合して手前側を低くする場合、リストレスト不要だと考えた。
確かにそうなのだが、逆に言えばそれ以外が高いスイッチなので、使いにくくなってしまった。
しかも、レストレストを使う場合、手前の薄型キーに指が届かなくなってしまった。
掛け合わせはこなれていない状況なのだろう・・・むしろ、先人たちが試した結果、ダメだったから流行らなかったのかも・・・。
残念だ。

左手側の左端のロープロファイルスイッチは、通常スイッチにすれば良かったかも知れない。
こればかりは、実際に体に合わせながら組みあわせる必要があるため、実装して一時使わなければ判断できないという欠点がある。
(なぜ、そこにロープロファイルスイッチを配置したかと言えば、HHKBのスペースバーの左側がMacOS用でコマンドキーの場所だからだ。ゆえに、ぎりぎり親指が届く範囲までロープロファイルスイッチを使った。)


### キーマッピングに不満
かなり見にくい。
ErgoDoxEZキーボード用のキーマッピングは、左右分離している状態をそのまま`keymap.c`に持ち込んでいるように左右別れていたが、Ergo42用では通常のキーボードのように横に連なっている。
ぬぅぅぅぅ。

しかも、半角スペースを多用してキーコードを連ねているため、余計に見にくい。スペースの数も統一していないし・・・。






### 作成
やはり動画はゴミだな。
https://youtu.be/jJ-6y8GIFZA

まっしゃ〜んめぇえぇ。



### 接続先相手での欠点
残念ながら携帯電話に接続した場合、(QMKに問題があると思うのだが、)上手く動いてくれないときがある。
そして、それはIMEの問題でもあり、切り替えることで上手く動いてくれることがあった。
それでも一部はダメなままだったりする。

相性があるようなので、なかなか一筋縄ではいかず、キーボード1台で全てをまかなえそうにない。
結構残念だ。

今回の場合は、私個人の環境によるため、使うIMEや携帯電話に依存することだろう。



## 参考URL
公式ガイドブック：[https://github.com/Biacco42/Ergo42/blob/master/README_jp.md](https://github.com/Biacco42/Ergo42/blob/master/README_jp.md)
　　このページが一番分かりにくかった。

ここ以降は、個人作成のページ。
[Ergo42という自作キーボードを作りました（組立編１）](http://windvoice.hatenablog.jp/entry/2018/06/27/104552 "日記とか、工作記録とか")
[分割キーボードのErgo42を作った](https://inamuu.com/%E5%88%86%E5%89%B2%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E3%81%AEergo42%E3%82%92%E4%BD%9C%E3%81%A3%E3%81%9F/ "ユーザーサポートからインフラSEになったエンジニアのブログ")

以下は、キーボード作者のブログ
[Why Ergo42? - 私が Ergo42 を作った理由](http://biacco42.hatenablog.com/entry/2018/06/08/045949 "たのしい人生")


## 愚痴
QMKいじるのだんだんめんどくさくなってきた・・・。
予想以上に範囲広いよ。

そもそも快適なプログラミングなどをするためにキーボード選びをしているだけだが・・・。
なぜかキーボードに時間と労力が吸い取られている。
あぁ就職活動できないのはキーボードのせいだよ。
プログラミングが出来ないのはキーボードのせいだよ。



### 販売元について
ごみHelixキーボードの販売元は、私の技術力のなさが発端になっている質問を完全に無視する。
しかし、今回のキーボードの販売元は、一応構ってもらえる。
技術力のなさは私に原因があるため、ごみHelixキーボード販売対応と同じように、低い技術質問ぐらい無視しなければ、心身共に疲れるだろうに・・・。
だったら質問するなって話だが・・・。






# その他
興味があるならば、ケースを自作するのも良いと思うが、自作したケースを販売しているサイトを利用するのもありかも。
[Ergo42 テンティングケーススタンド (せつやく版)](https://make.dmm.com/item/919657/ "DMM.make")
[ぜいたく版](https://make.dmm.com/item/919658/ "DMM.make")もある。



## MSYS環境構築
[アスキー](http://news.line.me/articles/oa-ascii/1e9aec3718c6)が参考になりそうだ。

[AVR Setup](http://www.ladyada.net/learn/avr/setup-win.html)を使う？

公式のやり方は[ISP Flashing Guide](https://github.com/qmk/qmk_firmware/blob/713ec91147aa56849f9e2ff93ee98ef1eb6eebc0/docs/isp_flashing_guide.md)に記載されているが、全く分からない。

## ごみHelixキーボードの代わり
今回は、LEDがなかったため、簡単に作成できた。
そして、Helixキーボードでは実現できなかった左手だけで一般的なキーボードを実現できるわけだ。
それとは別に、片手専用のキーボードが売られている。

![左手のみ.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/7bc5ed98-84c5-4531-642b-0d3f3006a003.jpeg)

最初から[これを買えよ](http://matias.ca/halfkeyboard/)って話だが・・・(日本に発送不可会社)。

## 左右分離型キーボードは種類が増えてきた
[Mistel Barocco MD650L Mechanical Keyboard](https://www.massdrop.com/buy/mistel-barocco-md650l-mechanical-keyboard?mode=guest_open "マスドロップ")は、シリーズ最新作だ。

![Mistel.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/ad75c07e-6625-4d94-0e00-b1e9274aab26.jpeg)

しかも、キーキャップが薄型なので、別途手首置きを用意する必要が無い。
何より素晴らしいのは、`6キー`が左手側にあること。
[旧版](https://www.massdrop.com/buy/mistel-barocco-md600-mechanical-keyboard?mode=guest_open "マスドロップ")を私は持っているが、右手側に`6`キーがあるため、数分もせず直ぐに手放した(タンスの肥やし)。使えば何とかなると思ったが、甘かった。売れるなら売りたい。
タンスの肥やしにして、代わりに何を買ったかと言えば、ErgoDoxEZキーボードだよ。

そして、今はErgo42キーボードだ。
Helixキーボードはごみのままタンスの肥やしだ。このままではゴミ箱行きになりそうだ。

昔ながらのキーボードも安くなって販売しているようだ。
[Kinesis Advantage2 LF Mechanical Keyboard](https://www.massdrop.com/buy/kinesis-advantage2-lf?mode=guest_open)
昔は5万円ほどだったはず。

![KinesisAdvantage2LF.jpg](https://qiita-image-store.s3.amazonaws.com/0/82414/bd467b66-7362-1fba-98ac-bf3cc5e8f80d.jpeg)

買わないけど。
Helixキーボードを復活させたいが、すべてのキースイッチのはんだ付けを除去しなければならず、ちょっと挫折している。
まだまだゴミのままだ。








# ちょっと使った感じは・・・
ここまでキー数いらなかったかも知れない。
この後に、Planckが控えていることも有り、同じキー数でどこまで適応できるかを知りたかった。
それを考えれば、第1歩として正解だったと思う。
なにせ、Planckは今のところ3台注文しており、[1台](247fd4c1bb3311a47c77)もまだ手元に届いていない。

準備するのは当たり前^^

ErgoDoxEZキーボードより小さいとは言え、まだ持ち歩くのは躊躇するかな・・・。
ニートを卒業し、働き始めたら職場に持ち込みたい。

## 発言してはいけない一言
数字キーは独立して欲しい。







# 不満を付けるならば,,,
アクリルケースのみと言うことかな。
ステンレス板が欲しい。
しかし、黒にしたのは正解かな。安っぽく見えない。
逆に、折角頑張ってはんだ付けした部分が見えないのは寂しい。

そして、一番の不満は、OLEDモジュールが欲しかった。


Planckを注文して、なかなか届かない。
そのため、本製品を注文して、組み立て、一時使った。
あぁ馴染むかも・・・使っていないPlanckと比較するのはどうかと思うが、括弧[]を普通に使えるのは便利だと思う。
ErgoDoxEZキーボードでは、上手く打てなかったからな。

今のところキー数が多いように感じるのも確か。これだったら **[Let's split](﻿https://www.youtube.com/watch?v=P1PjpjzV29w "ポン酢/Ponzuによるチャンネル")** で十分かも・・・。
HHKBのようなキーマップにしようとした場合、キー数がかなり少ないからな・・・。








# キーマップ
組み立ててから一応使い続けている。
しかし、イマイチキーマップがしっくりこず、考えあぐねている最中だ。

以下、[rules.mk](https://github.com/chesscommands/qmk_firmware/blob/master/keyboards/ergo42/keymaps/chesscommands/rules.mk)も設定しており、その内容になる。

```makefile:rules.mk
TAP_DANCE_ENABLE = yes
COMMAND_ENABLE = no
```

以下が[本体](https://github.com/chesscommands/qmk_firmware/blob/master/keyboards/ergo42/keymaps/chesscommands/keymap.c#L340 "BASE Layer")。

```c:keymap.c
  /* BASE
   * ,------------------------------------------------.   ,------------------------------------------------.
   * |GUIEnt|   Q  |   W  |   E  |   R  |  T   | APP  |   |  Y   |   U  |   I  |   O  |   P  |  [   |   `  |
   * |------+------+------+------+------+------+------|   |-------------+------+------+------+------+------|
   * | Tab  |   A  |   S  |   D  |   F  |  G   |LShift|   |  H   |   J  |   K  |   L  |   ;  |   '  | Enter|
   * |------+------+------+------+------+------+------|   |------|------+------+------+------+------+------|
   * |LShift|   Z  |   X  |   C  |   V  |  B   | Tab  |   |  N   |   M  |   ,  |   .  |   /  |  ]   |Escape|
   * |------+------+------+------+------+------+------|   |------+------+------+------+------+------+------|
   * |Escape| Space|半全角|  Del | LAlt |LCtrl | LAlt |   | Space| Shift|   =  |   `  |   -  |  ¥   | LGUI |
   * `------------------------------------------------'   `------------------------------------------------'
   */
```

以下は、本体から呼び出される[移動関係の階層](https://github.com/chesscommands/qmk_firmware/blob/master/keyboards/ergo42/keymaps/chesscommands/keymap.c#L380 "Move Layer")。

```c:keymap.c
  /* Move Layer
   * ,------------------------------------------------.   ,------------------------------------------------.
   * |      |  1   |  2   |  3   |  4   |  5   |      |   |  6   |  7   |  8   |  9   |  0   |  {   |      |
   * |------+------+------+------+------+------+------|   |-------------+------+------+------+------+------|
   * |      |  =   | Lclk | MsUp | Rclk | PgUp |      |   |  ←  |  ↓  |  ↑  |  →  |   :  |  "   |      |
   * |------+------+------+------+------+------+------|   |------|------+------+------+------+------+------|
   * |LShift|  +   |MsLeft|MsDown|MsRght| PgDn |      |   | Home | End  |   <  |   >  |   ?  |  }   | RESET|
   * |------+------+------+------+------+------+------|   |------+------+------+------+------+------+------|
   *|ASトグル|ScrLok|     |      |      | LCtrl|      |  |予約済み|  =  |  +   |  ‾   |  _   |  |   |      |
   * `------------------------------------------------'   `------------------------------------------------'
   */
```

そして、本体から呼び出される[数字やファンクションキーの階層](https://github.com/chesscommands/qmk_firmware/blob/master/keyboards/ergo42/keymaps/chesscommands/keymap.c#L404 "Media and mouse keys")。


```c:keymap.c
  /* Media and Function keys
   * ,------------------------------------------------.   ,------------------------------------------------.
   * |LShift|  1   |  2   |  3   |  4   |  5   | 継承 |   |  6   |  7   |  8   |  9   |PrScrn| F12  | 継承 |
   * |------|------+------+------+------+------+------+   |------+------+------+------+------+------|------+
   * |LShift|  F1  |  F2  |  F3  |  F4  |  F5  | 継承 |   |  F6  |  F7  |  F8  |  F9  |  F10 | F11  | 継承 |
   * |------|------+------+------+------+------+------+   |------+------+------+------+------+------|------+
   * |WhelUp| LCtrl| Home | End  | Del  | Bkspc| 継承 |   |  |   |  _   |   <  |   >  |   ?  |      | 継承 |
   * |------+------+------+------+------+------+------|   |------+------+------+------+------+------+------|
   * |WlDown|      |LShift|      |      |      |      |   |RShift| RSft |  +   |  |   |   _  |      |      |
   * `------------------------------------------------'   `------------------------------------------------'
   */
```

以下が本体から呼び出される[マウスキーやファンクションキーの階層](https://github.com/chesscommands/qmk_firmware/blob/master/keyboards/ergo42/keymaps/chesscommands/keymap.c#L423 "MOUSE Layer")。

```c:keymap.c
  /* MOUSE Layer
   * ,------------------------------------------------.   ,------------------------------------------------.
   * | F12  |  F1  |  F2  |  F3  |  F4  |  F5  | RESET|   |  F6  |  F7  |  F8  |  F9  |  F10 | F11  |      |
   * |------+------+------+------+------+------+------|   |------+------+------+------+------+------+------|
   * |      |LShift|      | Lclk | Rclk |Middle|      |   |MsLeft|MsDown| MsUp |MsRght|WhelUp| Stop |      |
   * |------+------+------+------+------+------+------|   |------+------+------+------+------+------+------|
   * |      | F13  | F14  |  F15 |  F16 |  F17 | F23  |   | F24  | F18  | F19  | F20  |  F21 |  F22 |      |
   * |------+------+------+------+------+------+------|   |------+------+------+------+------+------+------|
   * | RESET|      |     |予約済み|     |      | RESET|   |      |      |      | Wleft|WlDown|WRight|      |
   * `------------------------------------------------'   `------------------------------------------------'
   */
```

本体階層は、まだまだ今後も変更していく。
何せ、EscキーとEnterキーをどこに配置するか未だに悩んでいる。
押しやすい場所がない。


ファンクションキーなんて、F13以降使った記憶が無い。
どれを削って、使いやすくするか・・・悩ましい。
















以上だ。

※当然のように、この記事もHHKBで執筆している。
今までの自作キーボード記事は、例外なくHHKBで執筆している。今後もそうかも・・・(そうならないように、キーマップを自分に合わせて育てようと思う)。
なにせ、使えるキーボードを作ったのだから。ゴミHelixキーボードとは違うのだよ^^