はじめに
オープンソースの マイクロパッドVideo-ManuForm を組立てました。
Video-ManuFormはGibeさん設計のマイクロパッドでケースの3Dプリントデータが公開されています。
Φ60ノブとdactyl manuform系キー配列の組合せが美しいマイクロパッドです。
リミックス
少し手を加えたところ
- ハンドワイヤーからdactyl manuform flexible pcbを使う
- NeoPixel LEDを追加する(dactyl manuform flexible pcb にSK6812MINI-Eのパターン有)
- Pro MicroをSparkFun Pro Micro RP2040に置き換える
関係記事
Video-ManuFormデータのダウンロード
データはPrintablesで公開されています。
3Dプリントの発注
3Dプリントは、JLCPCBのSLA Black Resinで発注しました。
最近、私はPCB、3Dプリントともに殆どJLCPCBを使っています。
安くて速いんです。
データのレビューで薄い箇所があるとメールが入りましたが、「変形のリスクを受け入れます」とメールをいれて、支払いに進みました。
到着
10月18日にデータをアップロードして10月30日に届きました。
これも届いた。
— 𝕜urihara (@kurihary) 2022年10月30日
青くないけどいつもの #JLCPCB pic.twitter.com/cXvaKUk9aQ
組立
週末が始まる
— 𝕜urihara (@kurihary) 2022年11月26日
ハンダ付けしたい pic.twitter.com/CUBLMaD3BV
配線
オリジナルのオリジナルはVMs-macro-keyboardでハンドワイヤーです。
GitHub - mensikv/VMs-macro-keyboard: Macro keyboard with 8x cherry mx and a rotary encoder using Arduino Micro
私は、先日入手したdactyl manuform flexible pcb を使ってLチカします。
曲がるdactyl manuform flexible pcb pic.twitter.com/YVV3Udc22c
— 𝕜urihara (@kurihary) 2022年11月26日
オリジナルのコントローラボードはPro Micro です。
最初は安いRaspberry Pi Picoを使うつもりでしたが、幅が広いのを忘れていました。
ケースのリミックスが難しいので、Pro Micro 互換のSparkFun Pro Micro RP2040を使うことにしました。ちょっと高い。。。。(^^;
ボトムケースはPro Microを裏向きに入れるので、SparkFun Pro Micro RP2040を使うとスイッチとコネクタハウジングが当たってしまいます。
ノミと彫刻刀を使って削ります。
ノブの穴に合わせてロータリーエンコーダを買いました。
ロータリーエンコーダの凸に合わせて、ケースに穴を開けます。
こちらでしょうか?😇 pic.twitter.com/UA6TkDHu8X
— 𝕜urihara (@kurihary) 2022年11月27日
3Dプリントだと皿ネジ加工もできますね。
ファームウエア
ファームウエアは、いつものPRK Firmwareを使いました。
理由は、インストールとkeymap.rbの書込みを2回のドラッグ&ドロップのみでできるからです。
keymap.rb
動作確認用のkeymap.rbです。
GPIO7はロータリーエンコーダのプッシュスイッチをダイレクトに接続しています。
# Initialize a Keyboard kbd = Keyboard.new # Video-ManuForm with dactyl manuform flexible pcb # SparkFun Pro Micro RP2040 # Initialize GPIO assign kbd.init_pins( [ 2, 3, 4 ], # row0, row1,... respectively [ 7 ,22, 26, 27, 28 ] # col0, col1,... respectively ) # CrowBoard YD-RP2040 # Video-ManuForm TEST kbd.add_layer :default, %i[ KC_NO KC_Q KC_W KC_E KC_R KC_NO KC_A KC_S KC_D KC_F KC_1 KC_Z KC_X KC_C KC_V ] encoder_1 = RotaryEncoder.new(5, 6) encoder_1.clockwise do kbd.send_key :KC_UP end encoder_1.counterclockwise do kbd.send_key :KC_DOWN end kbd.append encoder_1 NEOPIX = 29 # Initialize RGB class with pin, underglow_size, backlight_size and is_rgbw. rgb = RGB.new( NEOPIX , # pin number 12, # size of underglow pixel 0, # size of backlight pixel false # 32bit data will be sent to a pixel if true while 24bit if false ) sleep 1 rgb.effect = :swirl rgb.speed = 28 kbd.append rgb # `kbd` is an instance of Keyboard class that should be newed in advance kbd.start!
アルバム
Lチカ動画
最初にRaspberry Pi PicoでSK6812MINI-Eのハンダ付けを確かめたときの動画です。*1
Lチカできた。 pic.twitter.com/s9355q13Mm
— 𝕜urihara (@kurihary) 2022年11月26日
KEEB_PD
KEEB_PDという、毎週日曜19:00~21:00にいい感じのキーボードの写真をツイートするイベントに参加しています。
12 mechanical programmable keys and a rotary encoder.
— 𝕜urihara (@kurihary) 2022年11月27日
Keyboard: Video-ManuForm
Switch: Durock Medium Tactile Switches
Keycap: RAMA WORKS GRID#KEEB_PD #KEEB_PD_R124 #自作キーボード #PRK_Firmware #3dprinting #電子工作 pic.twitter.com/xciu1SBeaI
初めて一番ふぁぼをいただきました。
#KEEB_PD_R124 で一番ふぁぼ(❤46)が多かったのは kurihara さんでした🎉🎉🎈🍾🍾
— にるぽ🔰gangstre🐶 (@nillpo) 2022年11月27日
おめでとうございます!!🎉🎉🎉🎉#KEEB_PD https://t.co/VZquiehBzo