名前 | 数量 |
---|---|
メインPCB | 2 |
トッププレート | 2 |
ボトムプレート | 2 |
マイコンカバー | 2 |
TRRS ジャック ※ | 2 |
タクトスイッチ ※ | 2 |
M2, 8 mm スペーサー | 14 |
M2, 5 mm ねじ | 28 |
M4, 2 mm スペーサー | 10 |
ゴム足 | 8 |
※ はんだ付け済みの場合は同封されていません。
名前 | 数量 | 備考 |
---|---|---|
ProMicro | 2 | 動作確認済みは以下です - https://shop.yushakobo.jp/products/pro-micro - https://talpkeyboard.net/items/62e24e6f8a0bd07fe2d38137 |
2.5~3.5 mm 12pin ピンヘッダー or コンスルー | 4 | ピンヘッダーであれば ProMicro を購入するとおそらく同封されています。コンスルーは遊舎工房や TALP KEYBOARD から購入できます。 - https://shop.yushakobo.jp/products/31 - https://talpkeyboard.net/items/5e056626d790db16e2889233 |
スイッチ | 36キー分 | 使用できるスイッチに関しては「動作確認済みスイッチ」をご参照ください |
キーキャップ | 36キー分 | NIZ, BTO のスイッチだと CherryMX 用のものが使えます |
TRRS or TRS ケーブル | 1 | - https://shop.yushakobo.jp/products/trrs_cable - https://www.amazon.co.jp/gp/product/B08T5TT859/ |
チップがすでにはんだ付けされている面が裏です。
写真のように ProMicro、TRRS ジャック、タクトスイッチ(リセットスイッチ)を配置しハンダ付けします。実装面をお間違えなきようお気をつけください。 最終的にチップが表面に出ないのが正しいです。
トッププレートに M2, 8mm スペーサーをネジで固定します。
次にハウジングをトッププレートに嵌めていきます。(使用するハウジングに応じた記述に従ってください)
ハウジングを下図のような向きにプレートに嵌めていきます。(NiZ のハウジングの場合はあまり向きにシビアではありませんが、中央にくるように配置してください。)
ハウジングを全て嵌めたらプランジャーをハウジングに入れていきます。プランジャーはハウジングのレールに沿うように入れてください。
トッププレートの穴の大きさの影響でプランジャーの滑りが悪くなることがあります。その場合は穴をヤスリで削って拡張してください。
プランジャーに O リングを通し、プランジャーを嵌めます。プランジャーはハウジングのレールに沿うように入れてください。
ハウジングを下図のような向きにプレートに嵌めていきます。爪が引っかかる向きに注意してください。(穴のサイズ的に間違った向きにはそもそもハマりません)
スペーサーが隅にある部分ではハウジングサイズが大きいためスペーサーと干渉します。その部分はハウジングの角をニッパーで切ったり、ヤスリで削ってください。(下の写真は東プレスイッチですが BTO のスイッチでも同様のことが起こります。)
トッププレートの穴の大きさの影響でプランジャーの滑りが悪くなることがあります。その場合は穴をヤスリで削って拡張してください。
Realforce を分解しハウジング等を入手します。 ハウジングを下図のような向きにプレートに嵌めていきます。爪が引っかかる向きに注意してください。(穴のサイズ的に間違った向きにはそもそもハマりません)
スペーサーが隅にある部分ではハウジングサイズが大きいためスペーサーと干渉します。その部分はハウジングの角をニッパーで切ったり、ヤスリで削ってください。
トッププレートの穴の大きさの影響でプランジャーの滑りが悪くなることがあります。その場合は穴をヤスリで削って拡張してください。
ラバーシートから5スイッチ分ずつ6行分と親指キー用を1スイッチ分ずつハサミで切り出します。 片手分の切り出し方の例として下の写真の赤線で囲った部分のように切り出すのがおすすめです。 全てを1スイッチ分ずつ切り分けたほうが後述する穴あけがやりやすいですが、コニカルスプリングがずれやすくなるのでまとめて切り出したほうが入力が安定します。
(オプション) ラバーシートの側面に穴を開けると打鍵が軽くなります。一方でタクタイル感が減りリニアに違い打鍵感になります。
切り出したラバーシートをスイッチに乗せ、コニカルスプリングを1つずつ配置します。コニカルスプリングは重なりやすいので1つずつになっていることを確認しながら配置してください。重なっていた場合入力がおかしくなることがあります。この時テーブルに直置きした状態で作業するとうまくハメられないため基板を浮かせた状態にしてください。 名刺やカードの短辺がおおよそ3キー分くらいの長さなのでプラスチック製のカードケースなどが使えると思います。 この作業のためだけのスタンドの 3D モデルも用意しているため 3D プリンターを所有されている方は印刷して使用してみてください。
プランジャーが落ちきった状態で作業をする。
左右用のカバーが一つの基板として連結しているので切り離し、バリをヤスリで削ってください。
PCB に M2 8 mm スペーサーを取り付け、カバーをネジで固定してください。
トッププレートにメイン基板を乗せ、スペーサーのところに M4 2 mm スペーサーをおいてください。 最後にボトムプレートをかぶせネジで止め、ゴム足を貼り付けてください。
以降の動作確認は Linux(Ubuntu 22.04) で行っています。その他の OS をお使いの場合は適宜内容を読み替えてください。 Windows をお使いの場合は WSL で docker を使い firmware を build した後に生成された hex ファイルを qmk toolbox を使用して firmware を書き込むのが比較的楽だと思います。 QMK Firmware は version 0.24.11 を元にしています。公式サイトのドキュメンテーションとは version が異なることがあります。その場合は version 0.24.11 の Doc をご参照ください。
sudo apt-get update
sudo apt-get install -y git python3-pip make gcc-avr binutils-avr avr-libc avrdude vim gcc-arm-none-eabi ripgrep wget libc6-i386 libc6-dev-arm64-cross
git clone --depth 1 --recurse-submodules --shallow-submodules -b v1 https://github.com/goropikari/miniEC
cd miniEC
python3 -m venv env
source env/bin/activate
python3 -m pip install -r requirements.txt
ln -s $(pwd)/keyboards/miniec qmk_firmware/keyboards/miniec
cd qmk_firmware
docker pull goropikari/qmkfm:0.24.11
git clone --depth 1 -b v1 https://github.com/goropikari/miniEC
cd miniEC
firmware を焼くときはこのリポジトリにある keyboards
ディレクトリ以下を bind mount しています。閾値や keymap を変えるときはこのリポジトリ内のファイルを編集してください。
ビルドしてできた hex ファイルは build
ディレクトリ以下に生成されます。
vial 対応は試験的です。今後もサポートするかは未定です。 vial 0.7.1 で動作を確認しています。
vial.md をご参照ください。
入力テスト用のキーマップを焼いて全キーが入力できるか確認してください
# ローカル環境を使う場合
make miniec:test:flash
# docker を使う場合
QMK_VERSION=0.24.11 ./docker_build.sh miniec:test:flash
Waiting for USB serial port - reset your controller now (Ctrl+C to cancel)....
と出たら reset switch を2回押して firmware を書き込んでください。
※ QMK_VERSION=0.24.11 ./docker_build.sh miniec:test
と flash
を抜くとコンパイルするだけで終わります。WSL を使用している場合はこちらの方法が推奨です。
うまく入力ができなかった場合は後述の「閾値を調整する」を参考にしきい値を調節してください。
入力がうまくできるようになったら keyboards/miniec/keymaps/default/keymap.c
をお好みのキーマップに編集して firmware を焼き直し完成です。
# ローカル環境を使う場合
make miniec:default:flash
# docker を使う場合
QMK_VERSION=0.24.11 ./docker_build.sh miniec:default:flash
静電容量無接点方式スイッチではキーを押したときの静電容量の変化もとい電圧の変化を検出して押下判定をします。
keyboards/miniec/config.h
にある HIGH_THRESHOLD
に設定した値を超えるとキーが押された状態、LOW_THRESHOLD
を下回るとキーが押されていない状態と判定されます。
hid_listen を使うと各キーの電圧(スケールされている)を見ることが出来ます。公式ページからバイナリを落としてくるか下記のように docker で立ち上げ、キーボードを PC に繋いでください。QMK Toolbox でも同様の出力を得られるようですが確認できる環境を持ち合わせていないため未確認です。
docker run --rm -it --privileged -v /dev:/dev goropikari/hid_listen:1.01
下は2回分の読み取り値の例です(USB ケーブルが刺されている側だけの値が出力されます)。
キーを押していない状態が 70 以下、押した状態では 282 と他よりも高くなっています。
全キー分の値を見つつ最適な HIGH_THRESHOLD
, LOW_THRESHOLD
の値を決めてください
Waiting for device:
Listening:
67 64 48 45 46 45
18 37 45 34 30 63
28 50 40 48 43 78
64 68 47 41 41 32
40 38 40 39 28 60
27 52 39 46 43 282 <- 押したキー
キーを押したときに文字が入力されて邪魔な場合は何の文字も入力されない keymap を用意しているので一度そちらに firmware を焼き直してみてください。
# ローカル環境を使う場合
make miniec:blank:flash
# docker を使う場合
QMK_VERSION=0.24.11 ./docker_build.sh miniec:blank:flash
うまく機能しない場合に調査すべきポイントを wiki にまとめています。
小石用ケースの 3D モデルを配布しております。左用, 右用。
ご家庭の 3D プリンター、もしくは専門の業者に依頼して印刷してご使用ください。 こちらのケースはボトムプレートの代わりにご使用ください。その際、M4 2 mm スペーサーは使わないでください。
写真のケースは JLCPCB Resin Imagine Black で作りました。
ご自身でケースを作成されたい方はボトムプレートのデータを KiCad, svg 形式で配布しておりますのでご活用ください。