hecomi keyboard(alpha)の組み立て
写真とか
最高のキーボードを受け取ったゾ!!! made by @skyhigh_works @takashiski pic.twitter.com/ns0XLQu3t5
— 凹 (@hecomi) 2019年1月12日
- 写真とか
- 必要な道具
- あるとよい道具
- 必要な部品
- あるとよい部品
- その他
- 注意事項
- 追記
- 追記2
- テストファームウェアの焼きこみ
- はんだづけ
- キーマップのカスタマイズ
- 〆
- 付録
- 基板・プレートデータ
- hecomi御大の記事
慣れないはんだ付けの前に知っておくとよいかもしれないやつ
思っているよりも、人ははんだ付けに関して何も知らないということを知ってしまったので、はんだ付けをする前に読んでおくとだいぶ楽になる資料を雑にまとめておきます。やっぱりだいたいノセ精機。
忙しい人のための短文
- こて先は320度(FX-600)
- 母材をまず温める
- 母材が温まったらはんだを入れて3秒待ってこてを離す
- 綺麗な裾野が成功の証
いつもの
ノセ精機が無料で公開しているはんだ付け基礎講座です。正直これを読むだけでよいです。
とりあえず読むべき章
とりあえずシャドーはんだづけやっとけば作業方法は分かるとおもいます。
あとよいはんだ付け状態/悪いはんだ付け状態を見ておいてください。
残りは必要そうな章を必要そうなときに読む「遅延評価的学習」でよいと思います。「あの情報はあそこにある」というのだけはどこかに記録してください。
- 11 シャドーはんだ (はんだ付けの1.2.3.4)
- 01. はじめに・・(はんだ付けが上手にできないのは腕のせい?)
- 05. フラックス
- 08. 半田の仕上がり状態
- 09. 不良付け半田
- 13. 半田除去
- 14. リード線の端子への半田付け
- 15. チップ部品の半田付け
- その他必要に応じて
蛇足
よくある勘違い
- 溶かしたはんだが固まれば接着される
- 溶接((広義では間違いではないが狭義では間違い))
- とりあえず覆えばよい
- 不安だからはんだを多めに入れる
はんだ付けの科学(?)
- 母材とはんだの間に合金層が形成されることで接合される
- はんだの量が極端に少なくない限りは多少によらず合金層の厚さは変わらない
- 合金層を形成するには250度で3秒間
以上よりやること
- まず母材を温める
- 母材が温まったらはんだをいれる
- 3秒待ってから離す
namecard2x4 rev2の組み立て
namecard2x4 rev2の組み立て方です。
rev1はこっち。
rev1から変わったこと
- 天高の名刺ではなく、"namecard2x4"という名前を前面に出すようにしました
- miniUSBの向きが短辺方向から長辺方向になりました
- miniUSBがぶつかる部分の基板を削り、高さを低くできるようにしました
- ダイオードの向きが横向きになりました
- ダイオードがすべて同じ方向を向きました
- デカマイクロの下に隠れるダイオードをなくしました
- リセットボタンを6x6mmタクトスイッチから横出しの表面実装のスイッチに変更しました
- TRRSを取り付けられるようにしました
- MXスイッチを直接はんだづけすることができなくなるようにしました
所感
機能的には特に変わらないので、コネクタがどっちから出ているほうが都合がよいか、で選ぶとよいと思います。
内容物
その他、販売時の構成により、以下のものがつく場合があります。
- キーキャップ
- キースイッチ
- ケース
基板写真
テストファームウェアの書き込み
以下のURLから namecard2x4/rev2
のhexファイルをダウンロードしてください。
QMK toolboxをダウンロード・インストールしてください。
QMK toolboxを起動してください。
起動したらhexファイルを選択し、autoflashにチェックを入れてください。
promicro(デカマイクロ)をUSBケーブルでPCに接続してください。
組み立てのためのピンセットなどを使って、RSTと書かれたピンとGNDと書かれたピンをつないで離し、リセットを掛けてください。QMK toolboxが自動的に書き込みを始めるはずです。
以下のメッセージが表示されていたら書き込み完了です。デバイスマネージャにnamecard2x4という名前のデバイスが追加されているかもしれません。
avrdude.exe done. Thank you.
組み立て
順番は以下の通りです。原則、低い部品から組み立ててください。キットによっては部品の高さによらず、特定の順序で組み立てないと部品のはんだづけが困難、もしくは不可能な場合があります。
- ダイオード
- ソケット
- リセットスイッチ
- ピンヘッダ
- promicro
ピンヘッダの取り付けの注意
4のピンヘッダだけ注意が必要です。プレートとPCBをほぼ密着させるように設計をしているため、PCBから飛び出す部分を最小にする必要があります。
具体的には、基板には短いほうを差し込んでください。また、差し込んだ後、ピンヘッダごとに1ピンだけ先にはんだ付けしてください。1ピンをはんだ付けすれば位置が決まります。位置決めの基準は、「promicroが差し込めるかどうか」です。斜めに取り付けられている場合、promicroを差し込むことができない場合があります。
位置が決まったら残りのはんだ付けしていないピンの飛び出している部分全てを切り落としてください。その後、すべてはんだ付けしてください。はんだ付けしたあとに切除しようとすると低くするのが困難ですが、はんだづけ前であれば低くしやすくなります。
promicro側も同様に実施することで高さを低くすることができます。
動作確認
自分のキーマップ作成
〆
namecard2x4 LP(namecard2x4 for KLP)組み立て方法
内容物
- プリント基板
- ダイオード(10個)
- KLPソケット(8個)
- リセットスイッチ
その他、販売構成によってケースやねじ類、promicroが追加されることがあります。
別途必要な部品
- キーキャップ
- キースイッチ
あると便利かもしれない部品
promicroを交換するときのための処理です。
- ピンソケット13列x2
- コンスルー
BLE micro pro 対応のための部品
注意追記
充電防止のダイオードを仕込んでいなかったため、ボタン電池は1個だけで使ってください。
また、コンデンサが入っていないため電池消費が激しい可能性があります。
現在修正版を検討中です。
本編
以下の部品を調達してください。
CR2032用でした。本品で使っているボタン電池は CR16XX です。
http://www.aitendo.com/product/10078
基板写真
大まかな流れ
- promicroにファームウェアを書き込む
- 基板にダイオードをはんだ付けする
- 基板にソケットをはんだ付けする
- リセットスイッチ(とBLE micro pro対応用部品)をはんだ付けする
- promicroを取り付ける
- スイッチをつける
- キーキャップをつける
- 動作確認
- ケースをくみ上げる
- 完成!
ピンヘッダを綺麗に切り落とす手順
コンスルーも何とか使えます。コンスルーを使う人には関係ない章です。
ピンヘッダとスイッチが干渉するので、ぎりぎりまでピンヘッダを切り落とす必要があります。ピンヘッダをぎりぎりまで切り落とすには、はんだ付けしてから切るのではなく、切ってからはんだづけをする必要があります。
まずpromicro側のはんだ付けをピンヘッダの短い側にします。 このとき、位置・間隔決定のために基板の表側にピンヘッダを指してpromicroを裏返してのせ、マスキングテープなどで固定するとよいでしょう。位置決めの冶具として基板の代わりにブレッドボードを使うこともできます。
promicro側のはんだ付けができましたら、抜いて裏側から基板に差し込みます。差し込んだらマスキングテープで基板とpromicroを固定してください。
固定ができたら、ピンをすべて基板ぎりぎりで切り落とします。
すべて切り落としたらはんだ付けをして取付完了です。
ファームウェア書き込み
各々のやり方でdefaultファームウェアを書き込んでください。
キーボード定義名は namecard2x4/rev2
です。
デフォルトファームウェアは以下のキーマップになっています。
1 | 2 | 3 | 4 |
---|---|---|---|
5 | 6 | 7 | 8 |
はじめてのキーボードの場合
QMK toolboxを使って書き込みます。
ファームウェアは以下のURLから namecard2x4/rev2
をダウンロードしてください。
hexファイルを読み込ませ、autoflashにチェックをいれてください。
promicroを接続し、RSTの穴とGNDの穴をピンセットなどで短絡させてすぐに離すと書き込みが始まります。ちょっと待ったら完了です。
参考
はんだづけ
動作確認
すでにdefault keymapが書き込まれているので、キーを順に叩いて、12345678の8文字が入力されたら確認通過です。
BLE micro proの動作確認をする
この記事は古いバージョンの記事です。
やった手順書いておかないともう一回同じ失敗をするのでメモ書き。
目標はnamecard2x4 rev2 for LPのBLE micro pro対応。
前提
Windows10で行います。
WSL上のubuntuでうまくいかなかったのでmsys2 64bitでやります。
参考URL
リポジトリの取得
qmk/qmk_firmwareにはマージされていないのでsekigon-gonnoc/qmk_firmwareを引っ張ってくる必要があります。
git remote add sekigon https://github.com/sekigon-gonnoc/qmk_firmware.git git checkout -b nrf52 sekigon/nrf52
個人的にはリポジトリの切り替えに時間がかかるので、別名クローンしたほうがよいような気がします。 本家と競合してるっぽいし。 URLだけだとプロジェクト名でフォルダを作成しますが、第二引数にパスを追加することで別のフォルダ名でクローンできます。
git clone --depth 1 -b nrf52 https://github.com/sekigon-gonnoc/qmk_firmware.git ble_micro_pro
開発環境の用意
arm開発環境
とりあえず以下のコマンドを実行してarm環境をいれます。
make git-submodule
次にnRF5_SDK v15.0.0をいれます。v15.2.0じゃだめっぽいです。
~/nRF_SDK_v15.0.0
な感じにするとたぶん楽です。
パスを通す
以下を実行します。 ~/.bashrcあたりに書いておくと楽かも?
export NRFSDK15_ROOT=~/nRF_SDK_v15.0.0
nrf52への書き込みツール
以下からnrfutil.exeをダウンロードして~/qmk_utils
にいれます。qmk_firmware/util
ではないです。
書き込みテスト
とりあえず以下を実行してビルド成功~書き込みまでできるか試しましょう。 BLEmicroproはこの時点では抜いておいてください。
make ble_micro_test:default:nrfutil
以下が表示されたらResetを押しながらケーブルを接続してください。
Detecting USB port, put your controller into dfu-mode now.
デバイスが検出されたら以下のメッセージが表示されて完了です。
Detected controller on USB port at /dev/ttyS32 Remapped MSYS2 USB port to COM33 Programming Started Device programmed.
BLE対応デバイスと接続する
〆
今回はここまで。次はキーボード定義。
QMK configuratorを使ってキーマップを作成する
namecard2x4のキーマップ作成支援のための記事です。
Windows10環境で動作確認をしています。
バージョン情報などは2019/02/13時点での情報です。
- 書き込み用ソフトウェアをダウンロードする(QMK toolbox)
- QMK toolboxの動作確認をする
- WEBファームウェアビルダーを開く(QMK configurator)
- キーボードを選ぶ
- キーマップを作成する
- 設定ファイルをダウンロードする
- ファームウェアをコンパイルする
- ファームウェアをダウンロードする
- ファームウェアを書き込む
- 動作確認をする
- 〆
書き込み用ソフトウェアをダウンロードする(QMK toolbox)
以下のリンクからダウンロードしてください。記事執筆時の最新版は0.0.9です。
Windowsの場合はexe, MacOSの場合はapp.zipです。
QMK toolboxの動作確認をする
ファームウェア作成で手間取ったあとに書き込みがうまくいかなくて泣くのは辛いので、先に泣きましょう。
現在、qmk.fmから全てのQMK対応キーボードのdefault keymapがダウンロードできます。
以下のリンクからダウンロードしてください。
- 黒基板の人はnamecard2x4/rev1
- 白、緑の基板の人はnamecard2x4/rev2
QMK toolboxを起動します。
local fileに先ほどダウンロードしたhexファイルを選択してください。
次にその右のMicrocontrollerの下のFlashボタンの下のautoflashにチェックを入れてください。
最後に、promicro/デカマイクロをUSB接続し、promicro/デカマイクロをリセットしてください。
すでに組み立て済みの場合は、リセットボタンを押して離せば大丈夫です。
組み立てをしていない場合は、ピンセットなど金属でGNDとRSTを触って繋いで離してください。
promicroのLEDが何も光っていない場合はケーブルがPCにつながっていないか、断線しています。
リセットがかかると、黒い部分に何かしら表示されると思います。具体的には黄色い文字で「今から書き込みするから抜くんじゃねぇぞ」と表示された後、avrdudeなんとかかんとかというコマンドが発行され、しばらくまつと書き込みが実行されます。
以下のように表示されたら書き込み完了です。
avrdude.exe done. Thank you.
正常に終わった場合、書き込みが正常にできることが確認できました。次へ進めます。
書き込みがうまくいかなかった場合
段階を踏んで確認してください。
段階的に確認していってなお動かなかった場合は、OSとどこまで確認していて、どこから動かないかをDiscordのSMKJサーバーに投稿してください。24時間以内に誰かしらから助言を得ることができるはずです。
promicroをUSBケーブルで接続したとき、promicroのLED(黄色と赤)は点灯しているか
何にも差し込んでいないpromicroのLEDが光らない場合電源供給がされていません。ケーブルを交換して確認してください。
PCはpromicroをどのように認識しているか
promicroはArduino LeonardoもしくはArduino Microとして認識されます。
ドライバーがはいっていないと不明なデバイスなどと出てくることがあります。
ドライバーは以下のURLの実行ファイルを使ってインストールするとよいでしょう。ArduinoIDEをインストールしている人はArduinoIDEのフォルダ内にもドライバーがあります。
promicroのLEDが光っているにも関わらず、不明なデバイスすら表示されない場合はケーブルが充電専用の可能性があります。ケーブルを交換して動作確認をしてください。それでもダメであれば不良promicroの可能性があるので新しいpromicroを手に入れてみてください。
リセットをかけたとき、promicroの赤LEDは消灯するか
単純にリセットを掛けたつもりが実はかかってなかった、というのを防ぐための確認項目です。
消えるはずです(たぶん)。
リセットをかけたとき、PCはどのように認識しているか
リセットがかかったあと数秒間書き込み用ポートで接続がされます。そのため、リセットを押した直後にデバイスの切断と新しいデバイスの検出が行われるはずです。数秒後、再度切断と、元のデバイスが検出されるようになります。QMK toolboxが起動していてautoflashにチェックをいれた状態であればnamecard2x4のファームウェアが書き込まれるはずなので、デバイス名がnamecard2x4に代わっているかもしれません。
原則リセットは1回かければ問題ないはずですが、何故か2回かけないといけない個体があるといううわさがあります。
QMK toolboxのログにはどのような表示がされているか
QMK toolboxは何か動作をするたびにどういう状態なのかが常に書きだされています。問題がある場合は「こういう状態なのでだめだった」と表示されます。最も多いのはFlashをしようとしたときに「書き込み可能なデバイスが検出されない(なので書き込みできない)」でしょうか。
英語ですが、とても短い英語なのでこの文章くらいはちゃんと読んでください。
WEBファームウェアビルダーを開く(QMK configurator)
QMK configuratorを開いてください。
rev1
rev2
それ以外
キーボードを選ぶ
KEYBOARDを正しく選択してください。黒い基板の人はnamecard2x4/rev1, それ以外の基板の人はnamecard2x4/rev2を選択してください。
どちらを選んでも場合、N/Aと書かれた四角の数が2x4に変更されます。rev1とrev2で中身がちょっと変わったので、間違えると書き込んでも入力できないキーが発生したり、違う場所にキーがアサインされたりします。
キーマップを作成する
四角形をクリックしてアサインしたい1つのキーを押すか、下から四角形にドラッグアンドドロップすることで入力内容を設定できます。multimedia keyはwindowsとmacで異なるので注意してください。
2019/5/12現在、コンビネーションは一発では入力できないので気を付けてください。例えばCtrl+Vを押した場合は最初に押したCtrlが配置されます。Ctrlとの同時押しはQuantum タブ内「LCtl」もしくは「RCtl」を使うことで実現できます。LRの区別があるのは、内部的に区別されているからです。アプリケーションによっては右が指定されることがあります。
多層化したい場合は、Quantum>Layer functionsを使います。特定のキーを押している間だけ状態が切り替わるようにするには、MOまたはLTを使います。
MOをD&Dしたのちに、移動したいレイヤー番号を入力してください。0-15の範囲で、初期レイヤーは0番です。その後の、左側の0から15の数字をクリックすると、他のレイヤーを編集できます。
設定ファイルをダウンロードする
KEYMAP.JSONと書かれている場所の左側のexportボタンを押すと、現在設定したキーマップを外部ファイルに保存できます。このファイルをKEYMAP.JSONと書かれている場所の右側にあるimportボタンを押すと、keymap.jsonを読み込むことができ、読み込むことで過去に設定したキーマップを使いまわせます。
exportをしなかった場合、編集内容はいつ失われるかわかりません。
ファームウェアをコンパイルする
COMPILEボタンを押して芋が焼けるまで待ってください。
ファームウェアをダウンロードする
右下のFIRMWAREと書かれたボタンを押してhexファイルをダウンロードしてください。
ファームウェアを書き込む
QMK toolboxでダウンロードしたhexファイルを書き込んでください。
動作確認をする
キーをたたいて、期待通りの動作か確認してください。
〆
以上です。
これよりも複雑なレイアウトを実現しようとした場合、開発環境を構築してソースコードを書き換えてコンパイルする必要があります。
説明するのも大変なので省略します。
QMK configuratorを手元で動かす
環境
手順
git clone https://github.com/qmk/qmk_configurator
cd qmk_configurator
bash
sudo apt-get update sudo apt-get upgrade
sudo apt-get install ruby sudo apt-get install ruby-dev
bundle install
bundle exec jekyll serve
最後に、ブラウザーで http://127.0.0.1:4000 を開く。