ErgoDash 年末の電子工作 自作キーボード

年末の電子工作ってことで、キーボードの2台目ErgoDashを作り始めました。アクリルがヤワなところ以外、Mint60に不満は無いのですが、

・親指でEnterしてみたい
 →右のスペースは意外と使ってない人間だということがわかった
・ ホットスワップ化 して別のスイッチをつけてみたい
 →親指部分のカスタマイズが可能なので、物理的に移動すると便利
  https://hinastory.github.io/cats-cats-cats/2019/01/10/ergodash-mini-2/
・ Backlight 、Undergrow、全部盛りしたい
・縦にキーがずれているタイプ( Column Staggered)を使ってみたい
 →できる男っぽい(謎)

ケースのあるIrisと迷ったのですが、左下のCtlの列がなさそうで標準的な並びにできなさそうなのでErgoDashとなりました。Bothでの取り扱いは無くなっちゃったようなので、遊舎工房にて購入。親指あり版にしてみました。

◆ErgoDash
https://yushakobo.jp/shop/ergodash/
https://github.com/omkbd/ErgoDash/blob/master/Doc/ergodash_jp.md

◆ビルドガイド(オフィシャル)
https://github.com/omkbd/ErgoDash/blob/master/Doc/build.md

ダイオードの取り付けとモゲMicro対策

今日は、ダイオードの取り付けとMogeMicro対策まで!ビルドガイドどおりやれば問題なし。

抵抗をまだ買ってないから、千石電商か共立エレにいかないと。チップの抵抗をつけてみようかなとおもったり。

抵抗とかMOSFETってやつつける

千石電商で、抵抗を買ってきた。チップじゃなくて、普通のにした。470Ωと1kΩの2種類で小型版のほう。ビニールをぴっと熱でやるやつで分けてくれた。親切な店員さん!バックライトはオーソドックスな白にして(オプトサプライのやつ)、4mA流す予定。
その他、秋月電子でMOSFETってやつと、アンダーグロー用のLEDを準備しておいた。

マイコン内蔵RGB LED WS2812B (2個入)
http://akizukidenshi.com/catalog/g/gI-07915/

NchMOSFET IRLML6344TRPBFTR (10個入)
http://akizukidenshi.com/catalog/g/gI-06049/

手持ちでSK6812Miniがあるんだけど、流用できるかわからんので、買っといた。1個40円もする高級品。MOSFETはトランジスタだそうです。

っで、でけましたっ。1h以上かかったかな・・。MOSFETが小さすぎて、オジンにはきつい。

左だか、右だかわかりませんが、ちとAirしてるような気もしないでもないですね(笑)このタイプのやつは予備ハンダしちゃうと浮いちゃうのかな?
予備ハンダせずに、ハンダを滑り込ますのが正解だった気がしなくもないですが、このままいきまっしょい。

TRRSジャック、リセットスイッチ

はい。つけました。ここは問題なし。こっちが裏側になるみたいですね。TRRSジャックはアシンメトリーになるっつうことで、これでいいみたい。

こちらリセットスイッチ。前面の出っ張りが浮いているのが正解か、不正解かわかりませんが、TRRSジャックより背が高くないからこれでいいのかな!

UnderGlow関係

鬼門1のアンダーグロー用のLED関係までやってまいりました。チマチマつくってるから、だいぶ時間がたっちゃったけど。まずは、ジャンパーから。こちらは公式ビルドガイドどおりで。

んで、問題なのはWS2812Bの半田付け。Attack25のSK6812Miniで失敗してるからなぁ・・。

ビルドガイドどおり、マスキングテープを使いーの。コテの温度は250℃。コテの温度は200℃まで下げられるんだけど、全然溶けないので。フラックスはモリモリでしときました。吉と出るか凶とでるかっ。

んで、こう!!ちょっとこねくり回しすぎたか・・。
右側はよくくっついてるっぽいけど、左側がイモってる気がしなくも無い(笑)

前回からの反省点としては、1つのLEDの足を4つ連続してつけるんではなくて、温度をあげないよう、AのLEDの足を1つつけて、BのLEDの足をひとつつけて、んで、Aに戻ってまたひとつつけて・・。ってやったとこ!

俺が考えたんじゃ無くて、↓に書いてあった。カシコ!
http://www.sho-k.co.uk/tech/1518.html

その他、低温ハンダのLeoも欲しかったけど、お高いのでいつもつかっている融点190℃のやつを使った。うまくいけばいいけどなー。

肉眼ではよくわからなかったんだけど、温度に弱いっていうのは、中央の細い線が焼き切れちゃうとかなんでしょうかね?

先に点灯テストをしたいから、まずは両手で4つだけつけた。LEDの先頭っぽいとこだけ点灯すればいいかなとおもったけど、最後のLEDがGNDにつながらないと点灯しないんかな・・。単品でこの手のLEDをつくったことないので、よくわからず屋。

基板の配線をみると、始まりのLEDは、右側の基板でいうところの右側LEDから時計回りにまわってそうなんだけど、間違ってたら、ごめんちゃい。点灯しなかったら、どっちが始まりかもわからないなw ま、いいや、先に進めよう。

ProMicroのスプリングヘッダ

つづきまして、こちらを半田付け。Mint60のときは、いろいろ調べたけど、 説明書つけてくれてた。 最終的にBLEにもしてみたいので、スプリングヘッダで実装。

穴のある方がProMicro側、んで、穴は同じ方向を向く!
理由はよくわからないんだけども、そう作られてるんでしょ!

ここはとくに問題なしかな~。基板にもつけてみた。素晴らしい出来映え。ブレッドボードに差して半田付けしてみたけど、あんまりちゃんと固定されない(ブニョブニョする)から、普通に基板に差してから半田付けしたほうが気持ちがよいかもしれないと思った今日この頃。

肉離れ発生

突然ですが、ココで肉離れが発生致しました。クライミング中に発生したのですが、落下したタイミングとかでもなく、ただ左手を伸ばしてホールドを取りに行こうとしただけなのに右足が肉離れ!
運動会でいいとこをみせようとして、アキレス腱を切ったり、靱帯をのばしたり、肉離れしちゃうオジサンによくあるやつ。子供の頃はダサいなとおもっていたが、自分がそうなるとは思わんかった(笑)

キースイッチとBacklight LEDの準備

鬼門その2のスイッチ、そして、バックライトLED。ただやりたいだけですが、どちらもホットスワップ化してみました。ホットスワップ化するためには、Mill-Maxのものを使うか、Holtiteのものを使うかみたいです。Digikeyよりどちらも仕入れてみました。
実際やってみて、キースイッチはMill-Maxのものを選択。LEDはそもそもHoltiteのものしかなさそうなので一択です。

まずはLEDのHoltiteソケット。の、前にそもそもバックライトとLEDがどういうふうにくっつくのかよくわからなかったので、ご紹介。バックライトLEDはチップタイプをつけてるひともいたのですが、3ミリの砲弾型をつけます。こうなる!

ちなみにスイッチはGateronのSilentのほうです。

基板に一番近い側の金色のものがLED用のHoltiteソケット。そして、スイッチとLEDはこんな感じでとりつけます。順番は、

1.Holtiteソケット LED用
2.スイッチ
3.最後に、3ミリ砲弾型LEDをスイッチの上から差し込む

です。んで、問題のHoltiteソケット(LED用)がこちら。ちーこい・・。ほぼゴマ。ピンセットではめていきます。

全部はめてからグリグリすると基板を弾いただけで飛んでいきますので、その都度止めた方がいんじゃないかとおもいます。私は飛びました。

取り付けなどなどについて、こちらの方が詳しいので、参考にさせてもらいました。ErgoDashではないですが、とても詳しく書いてあります。ありがたやー。
http://romly.com/archives/2017/10/planck_with_holtite_sockets.html

ご購入はこちら
http://riv-mk.hateblo.jp/entry/holtite_sockets

結局わたしもどういうふうにくっついているのかよくわかりません(笑)ソルダーフリーってことで半田付けはしてないのですが、かなりしっかりくっついてる感じです。↑の動画では半田ごてでグリグリして取り付けているんですが、物理的に穴を広げてだけな気もしなくも無い・・。裏側はこんな感じ。

LEDのリードを取り付けるとこんな感じです。はめるときにちと堅いですが、うまい感じで差し込めます。ちと心配だったので、半田付けするか迷ったのですが、↓の写真の感じでは、半田付けしたら差し込みNGになりそうだっったので止めといた。

スイッチのほうはHoltiteソケットとMill-Maxのやつでどっちにしようかと考えたのですが、↑の理由でMill-Maxを選択。っていうのもいろんなスイッチに対応するように、スイッチの穴は丸くなく、半田付けする必要があるからです。Mint60もAttack25もそんな感じの穴だったんですが、複数種類のスイッチに対応していない基板もあるんでしょうかね? Mill-Maxのほうはスジは入っておらず、完全な円筒形なので、半田付けもしやすそうです。裏側がこんなかんじ。Mill-Maxのほうは円筒の淵にスイッチの金具が触れるだけなのかなとおもったんですが、よくみると穴の中がケツの穴みたいになってます。オゲレツですみません。

ちなみに、取り付けは先にスイッチにMill-Maxのソケットをつけておいて、

アクリルを挟みつつ、完成形に近い状態で、基板に取り付けました。スイッチにも依存するのかとおもいますが、完全に水平にならないからです (ソケット側じゃないほうが少し沈む) 。半田付けすると↓の感じ。

片側だけ取り付け終わり。ちと面倒ですが、穴にハンダが入り込んでしまってないか確認するために全部取り外しました。

んで、やり終わってわかったんですが、キーがMaxで70くらいかとおもったのでスイッチとLEDのsocketを予備を含めて150個ずつ買っておいたのですが足りません。あんたバカねーw
ErgoDashの場合、160個ずつ購入しておくのが◎です。心配な方は170こかな。特にLEDのほうは、必ずといっていいほど、どっか飛んでくとおもいます。

よし!鬼門抜けた!いざ勝負じゃ!

ファームウェアの書き込み

本筋だとケースの組み立てですが、先にファームウェアを書き込んでチェックしておきます。バックライトとアンダーグローをONにするには、rules.mkを以下にせよとのこと。

つうかMint60のときにつくった環境をどう構築すればいいのかわすれちゃったんだよなー。このタイミングになると動くか動かないが気になってメモをするのを忘れちゃうもんでw

MSYS2を使うやり方なので、たぶんこちら。
https://qiita.com/cactusman/items/ac41993d1682c6d8a12e

Rules.mkはこちらにある。って、あたしの場合だけど。
C:\qmk_firmware-master\keyboards\ergodash\rev1\rules.mk

まずはデフォルトを書き込むテイで。
あら、音も出るのかな・・。ま、いいや、先に進めよう。

BACKLIGHT_ENABLE = yes
RGBLIGHT_ENABLE = yes
AUDIO_ENABLE = no

っで、あたしのはCドライブにファイルがあるので、MSYS2を起動して、こう!

cd /c/qmk_firmware-master/
make ergodash/rev1:default:avrdude

すると、こうなる。

$ make ergodash/rev1:default:avrdude
Making ergodash/rev1 with keymap default and target avrdude

avr-gcc.exe (AVR_8_bit_GNU_Toolchain_3.6.1_1752) 5.4.0
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Size before:
   text    data     bss     dec     hex filename
      0   17984       0   17984    4640 .build/ergodash_rev1_default.hex

Copying ergodash_rev1_default.hex to qmk_firmware folder                                            [OK]
Checking file size of ergodash_rev1_default.hex                                                     [OK]
 * The firmware size is fine - 17984/28672 (62%, 10688 bytes free)
Detecting USB port, reset your controller now.....

ってなったら、リセットボタンを押す!っとこうなる!

.........
Device /dev/ttyS3 has appeared; assuming it is the controller.
Remapped MSYS2 USB port to COM4

Connecting to programmer: .
Found programmer: Id = "CATERIN"; type = S
    Software Version = 1.0; No Hardware Version given.
Programmer supports auto addr increment.
Programmer supports buffered memory access with buffersize=128 bytes.

Programmer supports the following devices:
    Device code: 0x44

avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude.exe: Device signature = 0x1e9587 (probably m32u4)
avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed
             To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file ".build/ergodash_rev1_default.hex"
avrdude.exe: input file .build/ergodash_rev1_default.hex auto detected as Intel Hex
avrdude.exe: writing flash (17984 bytes):

Writing | ################################################## | 100% 1.36s

avrdude.exe: 17984 bytes of flash written
avrdude.exe: verifying flash memory against .build/ergodash_rev1_default.hex:
avrdude.exe: load data flash data from input file .build/ergodash_rev1_default.hex:
avrdude.exe: input file .build/ergodash_rev1_default.hex auto detected as Intel Hex
avrdude.exe: input file .build/ergodash_rev1_default.hex contains 17984 bytes
avrdude.exe: reading on-chip flash data:

Reading | ################################################## | 100% 0.17s

avrdude.exe: verifying ...
avrdude.exe: 17984 bytes of flash verified

avrdude.exe done.  Thank you.

Thank youでた。いったっぽ!

っとおもったら、右側が効かん・・。ミスったかとおもったら、左右両方書き込む必要があるみたい。↓
https://hinastory.github.io/cats-cats-cats/2019/01/10/ergodash-mini-2/

つうか、TRRSケーブルで両方繋いじゃだめなんか・・。最初だけなんかな?よくわからず屋。とにかく右を書き込もう。んで、USBケーブルとTRRSケーブルを再度接続。

よし右もきた!先人様様!どのキーも正しく認識していそうな感じだなー。

っで、鬼門のLEDをつけてみよう。AjustレイヤはLowerとRaiseの同時押しらしいですが、バックライトもアンダーグラウンドも点灯せず。LEDは全部付けていない状態ですが、全部付けないとダメなんかな?

っと、Defaultの設定を複製してRules.mkがNoに戻っていたのが原因でした・・。再度Yesにしてファームウェアを転送。

cd /c/qmk_firmware-master/
make ergodash/rev1:mamo:avrdude

ガーン!右側のアンダーグローしか点灯せず(笑)

アンダーグローのスタートLEDの予想は合ってたわけですが、左手のLEDが死んでるっぽいですね。ハンダのし直しじゃ!

っで、問題はバックライトのほう。こちらは1つも点灯せず。ムムム。
直列か並列かもわかってないんですが、バックライト用に取り付けたMOSFETとか1kΩの抵抗あたりか、電源あたりからスタートしているとおもうんですけど、そこらへんの砲弾型LEDを取り付けても点灯せず。MOSFETの取り付けに失敗してんのかも?

っと、砲弾型LEDのアノードとカソード間違ってた。あんたバカねーw
丸がプラスだよ・・。そりゃ点灯するわけ無いよね。

取り付け直して点灯したとおもったら、左手側だけだった・・。
 右手 → バックライトNGで、アンダーグローOK。
 左手 → バックライトOKだけど、アンダーグローがNG。
両手とも問題有りだよ・・。

右手のバックライトが点灯しない原因がわからず屋。WS2812Bよりシンプルなだけにちょっと気になる・・。
MOSFETが若干浮いてて半田付けが失敗してるのかもなので、やりなおしてみるかっ。

ってことで、MOSFETとWS2812bの半田付けやり直し。って、LEDなかなかとれないんですけど。

ピッととったらGの部分のランドがピラッっとした。見なかったことにして、静かに蓋をする(笑)やっちまったかもしれない・・。あわわわわ・・、オラシラネ。

こちらMOSFET。今度は予備ハンダせずに、基板のランドにコテを当て、ハンダをしみこませるようにした。ちと止めづらいですが、こちらもマスキングテープで固定して半田付けした。↓は半田付けの前の画像です。

っで、再度ケーブルを接続して左手側を確認。お?

ランド剥がれたけど、壊れてなかった!
「ウヒョー!」って声を出しちゃうオジサン。

バックライトのほうも、キター! 左右1こずつしか取り付けてないけど、これならイケそう~。

あとはWS2812Bの残りが正しく取り付けられればOKかな。砲弾型のLEDを個数分購入していないので、買いに行きたいけど、肉離れ中・・・。

ちと一安心したので、記念撮影でも。

いらんかw

そいえば、今日はクリスマスイブでした。
肉離れしてとんでもない年末を過ごす予定なので、記憶に残りそうだなー。
実家にも帰れないし、スターウォーズを予約してたのに映画館に行けないし、松葉杖を借りたのにスーパーの床がツルツルで、松葉杖が滑って再度痛めるしさ。我ながら可哀想。

スタビライザーの取り付け

ホットスワップ化したので、スタビライザーをとりつけないとスイッチがポロリ。スタビライザーをとりつけることにしました。

足りないパーツがありますが、とりあえずケースを組み立ててしまいます。ここらへんからErgoDash で記事を書いていますが、キーが横にずれてないので少し慣れが必要そうです。少しゲームでもしておけば慣れるかな・・。

ケースの組み立て

組み立ては迷うことは無いかなとおもいます。

が、親指有版はオプションなので、↓のネジがありません。アソコつけたいなーー。M2の6ミリスペーサーが必要そう。M2の5ミリネジは手持ちである。肉離れが直ったら買いに行こうっと。

最後に、ゴム足を付けて、一旦完成!

キーキャップはこちら。
https://yushakobo.jp/shop/mda-big-bang/
https://ja.aliexpress.com/item/32934200359.html?spm=a2g0o.cart.0.0.1fa33c00tDXaJE
あれ?TALPさんのとこで買ったかと記憶していたけど、違ったかな。今は無いみたい。2.0の白いやつはある。
https://talpkeyboard.stores.jp/?category_id=59be183f428f2d49120007b1

少しこの記事を書きながら感じたこととしては、ほとんどホームポジションから移動せずに文章を書けるのが印象的で、親指の扱いは少し慣れが必要かな。あと、パームレストが必須のように思います。左手のスペースキーと右手のエンターキーが手前にずれているからかな?

とりあえず、ダイソーのMDFを3枚をば。あと、エンターキーを「ターン!」ってできなくなっちゃいましたね。ビジネス向けかもしれませんw

(足りない部品調達中・・)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です