Open28

ErgoDash ビルドログ

anfangdanfangd

経緯

2010年代後半くらいから自作キーボード関連のネット記事をよく読むようになり、いつか手を出したいと考えていました。

色々とタイミングが重なってチャレンジすることができました。

anfangdanfangd

1. 必要な部品や工具を買う

組み立てに必要な部品はすべて遊舎工房のサイトから購入しました。

上記の2つのセットがあれば組み立ては可能でしたが、今後も電子工作の沼にハマっていきたいと考えていたので、次のような品も追加で購入しました。

anfangdanfangd

2. パーツを組み立てる

組み立ては遊舎工房のサイトにリンクのあった 1.) をメインで参考にしつつ、Firmwareの書き込みなどは本家のドキュメントである 2.) のページを参考に組み立てました。
ただ、Firmwareの部分は本家ページでもだいぶ大雑把な記載で 3-5.) のサイトの情報を参考にすることで設定を行うことができました。

  1. build-documents/ErgoDash_BuildGuide.md at master · yushakobo/build-documents · GitHub
  2. ErgoDash/build.md at master · omkbd/ErgoDash · GitHub
  3. Introduction - qmk
  4. (初心者編)自作キーボードにファームウェアを書き込む - 自作キーボード温泉街の歩き方
  5. (初心者編)VIAを使ってキーマップを書き換えよう - 自作キーボード温泉街の歩き方



anfangdanfangd

3. キーマップをカスタムする

VIA を使ってカスタマイズして次のような構成にしました。

Layer 1

Layer 2

Layer 3

anfangdanfangd

困ったこと > 2. Pro Micro と コンスルー(スプリングピンヘッダ)の配置方法が分かりづらい

組み立て終わった後に、ProMicro と コンスルーの配置方法に向きがあることを知った。以下のページにそれらしい記載が写真付きであったけど分かりづらかった。

  1. build-documents/ErgoDash_BuildGuide.md at master · yushakobo/build-documents · GitHub
anfangdanfangd

困ったこと > 3. 組み立て終わった後のFirmware関連がなんも分からん

組み立てが楽しくて時間を忘れて作業を進めてたけど、Firmware関連なんも分からんな状態だったので、組み立て終わってから数日そのままの状態になってしまった。

anfangdanfangd

困ったこと > 4. どこまでが正しくできてるのか分からない

なんとなく完成した感じなんだけどうまく動かなくて、どこに問題があるのか検討も付かない状態になってしまった。

anfangdanfangd

困ったこと > 5. コンスルー(スプリングピンヘッダ)が売ってない

2022年4月29日現在、どこにも売ってない。ネットでそもそも商品を見つけるのが難しい上にどれも欠品中で、秋葉原の電子部品の店を数時間かけてまわったけど、どこにも置いてなかった。

以下のサイトに記載があったけれど、コンスルーの中でもそこまでメジャーな部品じゃなさそう。

anfangdanfangd

面白かったこと > 2. ProMicro が面白そう

Arduino関連の製品らしい。ラズパイとともに電子工作を自作するときに使う何かってくらいの知識しかなかったけど、今回の組み立て作業で非常に興味がわいた。

anfangdanfangd

面白かったこと > 3. 電子基板の構成やTRRSジャック、コンスルーなどの役割・仕組みが気になる

この辺は本当に何も分からん。けれど、デバッグする上で基本的なこと理解してないと打ち手が何も分からない状態のままなので、正しく理解したい。けど何からやっていけば良いか分からん。

anfangdanfangd

6. 右側のキーボードが動かない

Firmware の違いによる動作の違い

  • QMK ( qmk/qmk_firmware ) のFirmwareを使用
    • 動いたり、動かなかったりする
  • QMK Configurator で作成した Keymap を使用
    • 動かない
      • qmk/qmk_firmware と QMK Configurator からダウンロードしたコードをdiffしたら差分が沢山でたのでそれが原因かもしれない
  • VIA用の ErgoDash のFirmware ( ErgoDash/Firmware )を使用
    • 動いたり動かなかったりする
anfangdanfangd

これはとても気になる情報だ。

もちろん、組み立てにミスがあったとか、基板に初期不良があったとか、TRRSジャックが壊れていたとか、片手だけ動作しなかった場合の原因はいろいろ考えられます。ただ、片方ずつ動作確認するとちゃんと動作し、テスターで導通確認をしても全て正常、でもTRS/TRRSケーブルでつないだ場合にのみ片手だけ動作しない、という状況になったときは、少なくとも、 Pro Microの故障だ!と思って真っ先に買い換えないでください 。
cf. Lunakey Miniが片手だけ動かなかったときに確認すること

anfangdanfangd

調査: VIA用のErgoDashのFirmwareについて

以下のリポジトリに hex ファイルだけ存在する。

公式サイトや the-via のリポジトリには ErgoDash の記載はなく、ソースコードも存在しない。

anfangdanfangd

↑の記事を参考にしてやってみたらVIA対応できてしまった👀

anfangdanfangd

QMK Firmware の Repository にある ErgoDash/rev1 をベースにして、VIA用のFirmwareをコンパイルしてキーボードに設定する方法は次の通り。

# Working Directory
> pwd
qmk_firmware/keyboards/omkbd/ergodash/rev1

# Copy default keymap to create new keymap for via
> cp keymaps/default keymaps/via/

# Add Setting for enable RIGHT Keyboard.
> echo '#define SPLIT_USB_DETECT' >> keymaps/via/config.h

# Add Setting for using VIA
> echo 'VIA_ENABLE = yes' >> keymaps/via/rules.mk

# Compile using new setting
> qmk compile -kb omkbd/ergodash -km via

# Install new firmware to Device ( Left & Right )
>  qmk flash -kb omkbd/ergodash -km via

これをすれば、VIAを使ってキーマップの作成が可能になり、ProMicroの電圧事情を起因として右側キーボードが動作しない件も解決できる。

anfangdanfangd

↑の対応をした後は安定して動作するようになったけど、 右側キーボードの一番右上のキーの入力ができないことに気づいた。これは原因が分からない。