ぴろりのくせになまいきだ。

世間に平和はおとずれなぁい

今年設計したキーボードを振り返る(2023)

まえがき

この記事は、キーボード #2 Advent Calendar 2023の記事です。
キーボード #2 Advent Calendar 2023 - Adventar
昨日の記事は、algさんの「2023年にさわったキーボードファームウェアについて」でした。
2023年にさわったキーボードファームウェアについて | blog.alglab.net
自分のキーボードのキーマップは結構固まってきたので、あまりファームウェアを書き換えないようになってきましたが、頒布を視野に入れると、何かしらの対応をしなければいけないなあとは思っています。上記記事を読むと、Vailも結構よさそうだなと思いました。

以下が私の記事ですが、まあまあ長くなってしまったので目次をつけました。よろしければ最後までお読みください。

はじめに

去年の夏くらいから自作キーボードの沼に飛び込んだわけですが、今年は基板発注をし、キー部6%*1で発表をし、アルミ削り出しケースを発注するなど、そろそろ腰あたりまで沼にハマっているかな、という気がしています。

そんな今年ですが、4台のキーボードを設計しました。
それぞれの設計について、個別の記事を書いてきましたが、横断的な比較をすることはなかったので、良い機会と思って振り返ってみることにします。
今年設計したキーボードは以下の4台(3種)です(記事のリンクは脚注に貼っています。)。

  • CygSUS*2
  • Quokka*3
  • Paren48(3DPケース)*4
  • Paren48(アルミCNCケース)*5
(左上)CygSUS, (右上)Quokka, (左下)Paren48(3DP), (右下)Paren48(CNC)

以下、それぞれのキーボードについて、「達成したかったこと」、「物理配列」、「ケースデザイン」、「マウント方式」、「音響」、「苦労した点」、「気づき」について振り返っていこうと思います。

CygSUS

keycap: MT3 Operator

達成したかったこと

  • 柔らかめの感触のガスケットマウント

一つ前に設計したキーボード*6では、一応ガスケットマウントの構造にしたものの、だいぶ感触が硬くなってしまい、もはやインテグレーテッドマウントだったので、きちんと沈むガスケットマウントにしたいと考えました。

  • よい打鍵音

一つ前に設計したキーボードでは、打鍵音がだいぶ静かになってしまったので、多少派手に打鍵音が鳴ってほしいと思いました。

  • 光るキーボード

やはりキーボードは光るべきです。接続に異常がないかが一目でわかる点も良いです。

  • 基板発注

いままで基板発注をしたことがなかったので、これを機に基板発注をしてみたいと思いました。

物理配列

一つ前に設計したRaven46の配列のブラッシュアップを目指して設計しました。湾曲したカラムスタッガード系の配列で、中指列を中心に、湾曲方向が反転している点が特徴です。湾曲した配列については、hanachiさんのWillow配列に影響を受けています*7

CygSUSの配列スケッチ

Raven46からの主な変更点は、小指列の上に独立したEscキー置き場を用意した点と、サムクラスタの配置の最適化、湾曲方向の最適化などです。
若干の弱点はあるものの、使いやすい配列に仕上がりました。
特に、独立したEscキー置き場は結構気に入っています。40 %キーボードではEscキーを配置しにくい場合が多いですが、それを置くことができます。キーキャップセットにおいて、Escキーなどの背の高いキーにアクセントカラーが振られていることも多く、そういったキーを置きやすいのも良い点だと思っています。アルチザンキーキャップをそこにつけたい気持ちもあるのですが、結構押す位置のキーなので、未だに躊躇しています……
ロータリーエンコーダはもちろんついています。

ケースデザイン

ケースは、アクリル板とステンレス板のハイブリット積層構成としました。
アクリルだけの積層構成としても良かったのですが、重量を出す観点と、見た目の観点からこのような構成としました。
上下のステンレス板でフロストのアクリル板をサンドイッチする構成としたので、少し浮遊感のある見た目となりました。LEDの光は横方向にも漏れるので、結構派手に光ってくれて、個人的には気に入っています。

MDA Future Suzuriをつけていた頃の写真

なお、ぱっと見ではわかりにくいですが、上から見た際のネジの数が少なくなるようにしています。具体的には、積層パーツを締結するために、片手で10本のスペーサーが使用されていますが、そのうちの6本を止めるためのネジは、ステンレス板の下に隠れるようにしています(ザグリ加工が大変でした)。
ケース全体のデザインとしては、湾曲した配列を有する点を考慮して、ケースの形状は、円弧を多用したデザインとしました。

マウント方式

オーソドックスなガスケットマウントを採用しています。
アルミのスイッチプレートを採用しつつ、やわらかめの感触の打鍵感となるように調整しました。
具体的には、約5 mm×15 mmの5つのタブを用意し、4 mm厚のポロンシートを3 mmの厚みとなるように押さえつける形でマウントしています。
アルミプレートを採用しているので、打鍵感としてそこそこの底打ち感と、そこそこの柔らかさになったように思います。
今回はちゃんと沈むようになって安心しました。

音響

ケース構造として、マイコンが配置される空間と、キースイッチが配置される空間を独立させています(詳細は個別記事参照)。
積層ケースとする以上は、マイコンボードが配置される部分の穴を大きくせざるを得ず、そこからの音の漏れを気にしたためです。
もともと、このような構造にすることで、音が閉じ込められることを狙ったのですが、ちょっと思った感じにはなりませんでした。これは、上記のように柔らかめのガスケットマウントとしたため、キースイッチが装着されたのアッセンブリ(スイッチプレート、キースイッチ、PCB)に伝わった振動がケース側にほとんど伝わらず、アッセンブリからの音がそのまま上方向に抜けてくる形になりました。よって、分解途中でトッププレートなどを締結しない打鍵音と、ちゃんと組み上げてからの打鍵音がほとんど一緒です。
したがって、このような構成にした音響的な効果としては、アッセンブリから発生した音が全て上に跳ね返ってくる、という状態になりました。
個人的にはいい音であると思うのですが、音量自体は少し大き目です。

苦労した点

上記のような物理配列がよさそう、ということで、物理配列からケースのデザイン(主に外形)をデザインしようと思ったのですが、なかなか大変でした。
最終的には、同心円を用いてケースの上下幅が変化しないデザインとすることで、線を少なくしつつ、一定のまとまりがあるデザインにできたと思います。
また、組み立てる段階では、各板の断面が目立つデザインなので、端面を必死に磨きました。ステンレス板もアクリル板も、レーザーカット時の凹凸が目立たなくなるまで磨きました。これはこれで結構大変でしたが、きれいに仕上げることができたので満足です。

気づき

上でも触れましたが、やや打鍵音が大きくなりがちで、ケース設計と打鍵音の関係の傾向が分かるきっかけとなりました。
物理配列としては、個人的にはNキーやBキーが押しにくいと感じる場合があり、人差し指列の下がり幅の調整の必要性を感じました。
ケース設計としては、USBケーブルのオスコネクタの厚みをちゃんと考えないといけない、という点です。実は、私が作製したケースでは、オスコネクタのスリーブをちょっと削らないと入らない状態です。全体的なパーツの配置に関係するため、意外とこの辺りの設計は最初から考えておかないといけないなと思いました。
あと、アクリル積層ケースの場合、厚さのばらつきの解消方法を考慮する必要があることに気が付きました。アクリルの厚みピッタリのスペーサーを用意してしまうと、パーツが止まらずに動いてしまうことがあります。今回は、ピッタリのスペーサーを買ってしまったので、0.5 mm厚のシリコーンシートを挟んで対応しました。

Quokka

keycap: MDA Future Suzuri

達成したかったこと

  • 家で使用する際に取り回しがしやすい一体型が欲しい

家でキーボードを使用していると、位置を変えることが多かったので、分割型では取り回しの面で難がありました。また、そもそも家で使う40 %のキーボードがなかったので欲しかった、という側面があります。

  • 少し奇抜なデザインにしたい

今までのデザインをそのまま一体型にしても良かったのですが、それでは芸がないということで、何か面白いデザインはないかと模索しました。

  • 遊舎工房さんのレーザーカットでPOMの取り扱いが始まったので使いたい*8

ちょうどそのタイミングだったので、せっかくならと思いました。

物理配列

中指列から折れ曲がったようAlice配列のような見た目をしていますが、カラムスタッガードを基調とした配列です。
人差し指列から折れ曲がるようにするデザイン案もあったのですが、見た目のバランスの関係から、今のデザインを採用しました。

Quokkaの配列スケッチ

小指列の下がり幅がそこまで大きくないため、サムクラスタの位置があまり内側にせり出さないように調整しています。
また、中央に独立するキーを一つ配置してみました。これは、takashicompanyさんのキーボードのデザインからインスピレーションを得たものです*9
なお、ロータリーエンコーダはもちろんついています。

ケースデザイン

ぶっちゃけけっこう適当に作りました。
キー配列のスケッチから、だいたいの外形をえいやと引いてしまいました。
ケース全体の構成としては、PCBに対して単に板を積み重ねるだけの構造を取っています。
あえて工夫した点を挙げるのであれば、キースイッチの間にネジを配置してあまり目立たないようにしたり、マイコンボードのUSBコネクタがうまくケースに隠れるようにしたり、レイヤー位置を示すためのインジケータを目立つところに配置した程度です。
LEDの点では、乳半アクリルをボトムプレートに採用したため、かなり光が拡散してきれいに光ります。また、POMもそこそこ光を透過することがわかりました。

マウント方式

PCBに対して板を積み重ねているだけなので、多分サンドイッチマウントに分類されると思います。
ただ、余分な空間はほとんど存在しないようにしたため、一枚のプラスチック板のような状態に近いと思われます。
打鍵感はやや硬めです。よって、White Lotusのような弱めのタクタイルスイッチとの相性がよいように感じています。

音響

あまり音響を意識した設計ではありませんが、上述したように、ほぼ一枚のプラスチック板のような構造のため、下方向に音が伝わりやすく、底面からの音が鳴りやすい状態です。
素材はプラスチックなので、音はやや控えめです。音も意外と悪くないです。

苦労した点

実はほとんど苦労せずにできてしまったキーボードでした。着想から1週間くらいでデータを作成し、発注まで終えた記憶があります。
その割には思ったより使いやすく、家で使うときのメイン機です。
見た目としても、やや奇抜ながら、全体としてある程度のまとまりがあり、結構気に入っています。

気づき

キーの縦方向の間にネジを配置してしまうと、精密ネジなどの頭が小さいネジでないとスイッチに干渉してしまう点です。横方向の間の場合には、スイッチの真横はややへこんでいるので、トラスネジでも干渉しない場合が多いです。
設計面では、基板に切り欠きをつけて、端部スルーホールのあるマイコンボードを表面実装してしまう、ということが案外簡単であることがわかりました。

Paren48(3DP)

keycap: SA Doubleshot(正式名称不明、TALPKEYBOARDさんで購入)

達成したかったこと

  • さらなる打鍵音・打鍵感の調整

Raven46では静かすぎて、CygSUSではややうるさすぎたので、この中間を狙えないかと思いました。また、打鍵感として、ちゃんとした底打ち感があり、かつ、衝撃が指に伝わってこない、という程度がちょうどいいのではないかと思いました。

  • 物理配列のブラッシュアップ

CygSUSの物理配列は、それはそれでよくできていると思うのですが、ちょっと押しにくいと思う場面があったので、その調整をしたいと思っていました。

  • 積層ケース以外の設計へのチャレンジ

今までのケースは、板をレーザーカットして積層するタイプでしたが、デザインの自由度がどうしても下がります。そこで、そうでない構成のケース設計にチャレンジしてみようと思いました。この3DPバージョンのケースは、後述するアルミ削り出しケースの試作として設計しました。

物理配列

ベースはCygSUSの配列です。ここから、各指の列を放射状に広がるようにして、各列の下げ幅の調整を行い、さらに角度の調整を行いました。
また、小指列の下がり幅が若干大きくなったことに伴って、サムクラスタの配置を調整し、より内側にせり出すようにしました。

Paren48の配列スケッチ

これにより、CygSUSでたまに発生していた、小指列の下段(例えばZキーなど)と、人差し指列の内側下段(例えばNキー、Bキーなど)の押しにくさが解消されたように感じています。
個人的には、やや親指側が上がった状態で手を構えるので、小指を曲げた際には内側に入りやすく、このように湾曲した配置がしっくり来ています。
それだけでは面白くないと思ったので、ロータリーエンコーダを増やして人差し指列の隣に置いてみました。ちょっとしたショートカットや、移動系のキーをアサインするといいんじゃないかと思ったのが増設のきっかけです。これが思ったより便利で、しょっちゅう使っています。
片手デバイスでもないのに、ロータリーエンコーダが片手で2つもあるキーボードが誕生してしまいました。

ケースデザイン

ケースデザインの基本的な外形は、CygSUSのデザイン方法を踏襲しています。同心円を使いつつ、全体の形状のバランスが取れるようにしたつもりです。
ケース全体としては、後述するような特殊なマウント方式を採用するにあたって、チラ見えするプレートの上下の対称性が出るようにしつつ、最小限の厚みとなるように設計しました。
マイコンボードは、RP2040-Zero*10と、RP2040-Tiny*11のどちらかが取り付けられるようになっていますが、後者を採用して、ドーターボードをケースに取り付ける形式としています。なお、前者を採用してサンドイッチマウントとしても組み立てられるような設計になっています。
また、この類のケースにしてはやや珍しく、裏側はLED用のレンズを取り付ける穴があり、アンダーグローを光らせても見える設計にしています。
余談ですが、当初はこのキーボードも積層ケースとするつもりでした。しかし、アルミ削り出しの発注が個人でも気軽にできそう、ということがわかったのでそちらの方面に切り替えた、という経緯があります。なので、供養の意味も兼ねて、アクリル積層ケースのデータも公開しています。

マウント方式

インサートプレートマウントという勝手に命名したマウント方式を採用しています。詳細は、下記画像と上記記事を参照してください。
具体的には、PCBとスイッチプレートの間に、ポロンシート、インサートプレート、ポロンシートをこの順で挿入し、インサートプレートをケースにマウントする、という方式です。

ケース構成

思想としては、トップマウントやインテグレーテッドマウントなどのように、ケースとの音響的な結合度が高い構造と、ガスケットマウントなどのように、ケースとの音響的な結合度が低い構造との間を狙った形です。
つまり、トップマウントほどケースに音を伝えず、ガスケットマウントよりはケースに音を伝える、というラインを狙ったものです。
さらに、このインサートプレートにスリットを入れてバネの機能を持たせ、打鍵感をやわらかくすることを狙っています。
現在、3DPケースのバージョンは、やわらかめの打鍵感を狙って、POM製のスリット入りインサートプレートを採用しています。ポロンなどのスポンジとはまた違った、レスポンスの速い柔らかさになっています。

音響

POM製のインサートプレートを採用した場合には、ケースへの音の伝わり方がややマイルドで、アッセンブリのみの状態で叩いているときに少し近い音がします。
ただ、ケースの方にも音が伝わっているようで、音色としては、ケースからの音の影響も受ける状態のように思われます。これに関しては、気持ちのいい音になるスイッチもあれば、微妙な音を鳴らすスイッチもあり、マウント方式との相性を感じます。
まだ研究が必要ですが、CygSUSでちょうどいい音が鳴るスイッチが、ロングポール、かつ、ポールの先端が丸いタイプのものであるのに対して、Paren48でちょうどいい音が鳴るスイッチは、ポールの先端が平らなタイプのものである点が興味深いところです。
音にこだわりのあるカスタムキーボード勢に話を聞いてみて、マウント方式とスイッチの相性等についてさらなる研究をしようと思います。

苦労した点

ドーターボードを採用するタイプの設計が初めてだったのと、厚さ10 mmのケースにTRRSジャック(厚さ5 mm)をねじ込むのに苦労しました。苦肉の策ですが、ネジ止めする方式を取らず、別途作成したカバーでドーターボードを押さえつける方式にしました(個別記事参照)。
また、CNCでの削り出しを念頭に置いた設計だったので、エンドミルの気持ちになって設計する点にも苦労しました。
3DPケースのバージョンは、アルミ削り出し用に設計していたデータの確認用でしたが、ネジ止めの設計が異なるため、そのあたりでちょこちょこミスがあり、結構削って調整しました。リューターを持っていてよかったと思いました。

気づき

トップマウントが静かだ、と言われることがある理由を改めて実感できました。それと同時に、良い打鍵音に調整することの難しさを痛感しました。
配列に関しては、小指列の下げ幅と、人差し指列の下げ幅と、サムクラスタの配置の関係を調整すると、打鍵しやすさがかなり変化することを再確認しました*12
設計面では、今まで恥ずかしながら5 V用のアドレサブルLEDを、3.3 Vのマイコンで直接制御しようとしており、ちゃんと部品のデータシートを見ようね、という教訓を得ました。しかし、意外と直結しても動いてしまうので、動いてしまうLEDさんサイドにも問題があるとは思います。
あと、オルソリニア用のキーキャップが売っているセットだと、1.5uサイズのキーはあるものの、1.25uのキーはほとんどついていない、ということを痛感しました。1.25u用にケースを設計してからキーキャップを探したので、ちょっと後悔しています。

Paren48(CNC)

keycap: KAT Alpha, MT3 Operator

達成したかったこと

  • アルミ削り出しのケースを作ってみたい

打鍵音がどうなるのか、という点がとにかく気になっていました。また、ネジ穴を表に出さない設計が可能なので、すっきりとした見た目のキーボードを作りたい、という思いもありました。

物理配列

物理配列については、PCBも共通なので省略します。
個人的には、行間での段差のが少ないプロファイル(例えば、SAプロファイル、KATプロファイルなど)での使用が向いているように感じています。
現状はKATプロファイルのキーキャップを使用しています。

ケースデザイン

3DPバージョンでもそうだったのですが、底面にウェイトを取り付けられるようにしています。今回は、真鍮のウェイトもCNCで削ってみました。
上述しましたが、インサートプレートマウント方式を採用しているので、インサートプレートが側面に見える形になっており、デザイン上のワンポイントにしています。このキーボードの最大の特徴でもあるので、デザイン的にも表に出す形にしました。

側面にも注目

インサートプレートはレーザーカットをお願いしましたが、これも端面を磨きました。
他の点に関しては、共通なので省略します。

マウント方式

マウント方式については上述した通りです。
アルミ削り出しのケースのバージョンでは、インサートプレートをステンレス製にしています。これにより、硬めながら衝撃は吸収してくれる、という塩梅に仕上げました。
インサートプレートにはスリットを入れてスプリングの機能を持たせるようにしていますが、一応、ステンレスのヤング率と厚みから、スリットの幅と長さを計算し、最適な打鍵感に仕上がるように計算はしたつもりです。だいたい、100 gfの力が作用した際に、0.3~0.5 mmくらいの変位が発生する算段です。

スイッチプレート(左)とインサートプレート(右)

硬めの打ち心地ですが、タクタイルスイッチを使っていても指に衝撃が来ることはなく、長い時間使うのに向いていると考えています。
当初、素材の柔らかさ(ヤング率)の点で、アルミでインサートプレートを作ろうとしていたのですが、アルミの疲労破壊のことを思い出したので、それの心配が少ないステンレスを採用しました。振動する部位なので、思ったよりすぐに10の7乗オーダーの繰り返し応力が作用すると考えたためです。キーボードを設計していて初めて専門分野が役に立った気がします。

音響

インサートプレートマウントを採用し、インサートプレートにステンレス製の板を採用することで、よりケースに音が伝わりやすい印象があります。実際に、ケースにつけるゴム足の種類を変更すると、びっくりするくらい打鍵音が変わります。具体的には、通常のウレタンゴムなどのゴム足を使うと、机にかなりの音が伝わるようで、机を叩いているような低音が響きます。一方で、ソルボセインをゴム足に採用すると、その低音成分が少なくなり、高音成分が目立つようになります。
全体の打鍵音としては、たとえ底打ちがうるさい類のスイッチ*13を使っていたとしても、やや控えめに感じます。全体的な音色としては、特定の周波数成分が吸われる傾向にあるように感じられるので、不思議な打鍵音に感じます。ただし、机に響く音によって音色の印象はだいぶ変わります。
全体のコンセプトとしては、狙い通りにできたと思いますが、ケース自体の音がそこそこするので、これをどう抑えるかというのが目下の課題です。デスクマットを敷くと、机に伝わる音を減らし、ケース自体の音も減らせるような気がしていますが、現状ではデスクマットを持っていないので、それ以外の解決方法を模索していきたいところです。

苦労した点

CNCの発注は当然初めてだったので、データの準備、発注方法を含めて色々と苦労がありました。その際、copさんの記事の記載が大変参考になりました。改めてこの場を借りてお礼申し上げます。JLCPCBさんに発注しようと思っている方は是非参照してください。
note.com
具体的には、内部の角、くぼみなどについては、アクリル積層や3DPの場合には特に気にしなくても良い場合が多いですが、CNCの場合、回転する刃物(エンドミル)で切削していくため、実際的に加工不可能な形状が存在します。よって、そういった形状を避けながらの設計を行う必要があり、結構気を使いました。
また、アルミでCNCをするとなると、ビーズブラストの条件、アルマイトの色、アルマイト前の処理条件など、いろいろパラメータがあるため、これも悩ましい要因でした。今回は、120メッシュのビーズブラスト、マットの黒アルマイトを選択しましたが、他の条件も試してみたくなっています。

気づき

ケースをアルミにし、マウント方式がトップマウント寄りになると、かなりアルミケース自体に振動が伝わることを理解しました。
今回、底面の厚みを3 mmで作ってしまったので、底が鳴っているように感じられます。この点は何らかの対策が必要だと思っています。
マウント方式に関しては、底打ちが吸収されるくらいでよい、という設計思想は、個人的にはアリかなと感じています。一方で、マウント方式、ケース設計、プレート材質と、スイッチの相性は難しいなあとも思いました。同じスイッチでも、キーボードによって全然音が違う、ということを改めて実感しました。
あと、黒アルマイトもいいですが、金属感の出る仕上げのほうがアルミらしくていいなあとちょっと思いました。

おわりに

アルミ削り出しのケースを作製したので、EndGameかな? とも思ったのですが、まだまだやることはたくさんありそうです。
特に、打鍵音のEndGameは、それぞれの音色の良さがあると思うので、いくつものEndGameがありそうです。そもそも、今回のアルミ削り出しケースで打鍵音のEndGameを迎えられると思っていたのですが、かえって打鍵感の調整には何をしたらよいかがわからなくなってきた感があります。今後も色々な方針を試してみたいと思います。
平面上の物理配列に関しては、いろいろと練ってみましたが、自分の手にフィットしたものができあがったように思います。そうなると、自設計をやろうと思った原点でもある3Dの方向性もまた考えてきたいと思いました。
また、アルチザンキーキャップといった分野にも興味が出てきたので、そのうちチャレンジしてみたいと思います。

なお、今年設計したキーボードに関しては、ケースデータなどを公開しています。規約の範囲内でご自由にご利用ください。
piroriblog.hatenablog.com

この記事は、QuokkaとCygSUSで書きました。

  • Quokka

keycap: MDA Future Suzuri
Switch: Durock White Lotus, Everglide Aqua King V3, Kailh BOX Switch V2 White等

  • CygSUS

keycap: MT3 Operator
Switch: Chosfox Hanami Dango, Durock Black Lotus, Kailh BOX Switch V2 White

明日のキーボード #2 Advent Calendar 2023の記事は、Cerbekosさんの「RGB Matrix」です。
光るキーボードを多く設計されているイメージがあるので、どのような話か楽しみです。

「Paren48」のアルミ削り出しケースを作った話

はじめに

少し前から、アルミ削り出しケースに向けて3DP製のケースを設計していました。
piroriblog.hatenablog.com

今回、「これでもう後悔しない!」と思ったので、アルミ削り出しケースを発注しました。
ちょっとだけ後悔したポイントもありましたが、かなり満足な出来のキーボードが完成したと思います。

上面
上面と裏面
立ててみた

ちゃんとした録音環境がないので、直接触っていただくほかないですが、好みの打鍵音・打鍵感が実現できました。

JLCPCBさんへのCNC発注に際しては、copさんのこちらの記事を大変参考にさせていただきました。
この場を借りてお礼申し上げます。
note.com

以下、役に立つのかよくわからないtipsと、前回の記事では書ききれなかった構造と、感想をつらつらと書いていきたいと思います。

CNCの発注について

上述しましたが、今回はJLCPCBさんのCNCサービス*1でアルミの削り出しをお願いしてみました。
表面処理は、120メッシュのビーズブラスト+黒アルマイトでお願いしてみました。

トップピース
ボトムピース

カーテン越しの自然光で撮影したものですが、比較的実際の見た目に近い写真だと思います。
120メッシュのビーズブラストの粒子感がちょうどよく、鈍く光を反射するので高級感すらあります。
アルマイトはマットでお願いしましたが、サラサラした手触りです。
見える部分に傷はなく、また、アルマイトの染めムラもなく非常に満足です。

「見える部分に」と書いたのは、アルマイト処理は、処理液中にアルミを吊して行うと認識していますが、そのフックの痕はどうしてもどこかに残るためです。フックの痕は見えない内側にありましたので、特に問題はありませんでした。

また、トップピースにはM3のタップを切る指示をしたのですが、ちゃんと切られていて安心しました。

発注のtipsに関しては、copさんの記事にほぼすべて書かれているので、あまり追加情報はありませんが、あえて挙げるなら以下の点です。

  • ビーズブラストは120メッシュが一番安い(発注当時)

これに関しては、真鍮のウェイトを発注するときに、ビーズブラストの番手でえらく見積もりの値段が変化したので、サポートに問い合わせたところ、「デフォルトが120メッシュで、ビーズの交換が面倒だからやで」との返答がありました。
特にこだわりがないのであれば、ビーズブラストは120メッシュで発注すると最安になると思われます。
なお、アルミの場合はそこまで差がない(精々2ドルくらいの差)でしたので、アルミに関しては好みで選んでもよいかと思います。

気になるお値段ですが、1ピースにつき約60ドルくらい*2でした。
本当はもうちょっと安くできるような気もしますが、まあまあ複雑な形なので、ワンオフ品としてはかなり安くやってもらったほうだと思います。
単純な形状で、ピースの数が少なければもう少し安くなると思いますので、ぜひ皆さんもチャレンジしていただければと思います。
設計の際には、エンドミルの気持ちになりましょう。

ドーターボードについて

今回のケースで、設計が非常に大変だったのは、ドーターボード周りです。
今回は、マイコンボードとしてRP2040-Tiny*3を採用しました。このマイコン開発キットは、マイコンが実装されたボードと、USBコネクタが実装されたボードとをFPCで接続する形式になっています。まさにキーボードにうってつけですね。
マイコンを基板に直付けすることも一瞬検討したのですが、他のマウント方式の際のケースの選択の幅を狭めないようにする観点もあり、マイコンボードをつける方式としました*4。なお、このPCBには、RP2040-Zeroも取り付けられます。

このケースですが、インサートプレートマウント*5という方式をとると、ケースが2つに分断されてしまうので、どちらかのピース(厚み10 mm)にドーターボード(一番のネックは5 mmのTRRSジャック)を収めないといけません。TRRSジャックをPCBに実装してしまう手がないわけではないですが、打鍵感への影響を加味すると採用したくありません。
また、このケースですが、対称性を考えると、チルトさせたくもないし、上下ピースの厚みを同じにしたい、というデザインになってしまいました。
このようなデザインとマウント方式の制約上、上ピースにねじ込むことにしたのですが、タップを切るだけのケースの厚みがやや怪しい状態になってしまいました。そこで、ドーターボードのカバーを3DPで作製し、これで上から押さえつける方式をとりました。

ドーターボードの取り付け
ドーターボードのカバー

販売される商品でこんなのがあったらオイオイと思いますが、まあ自分しか使わないしいいか、と思って採用しました。
特にがたつきもなく固定できているので良かったです。

感想

さすがCNC、といった精度でできあがっており、エッジもきれいでニヤニヤしながら使っています。実は、3DPケースでは、ケース全体が歪んでいたのか、ロータリーエンコーダのノブが壁面に接触してしまうことがありましたが、今回はそのようなこともなく、ピッタリ中心にきています。
また、アルマイトの質感がよく、見た目的にも非常に満足しています*6

打鍵感に関しては、3DPケースのときとあまり変わりません。前回同様、インサートプレートマウント+スプリングプレートのやや硬めの打鍵感です。
ただ、ケースの素材がアルミになったことで、やや低音が強調されるようになりました。これ本当にBaby Kangaroo使ってるっけ? という気持ちになりますが、これはこれで好きです。実は、BSUN HUTT*7のGBに参加したので、届いたらこれにしてみようと思います。どんな音になるか楽しみです。
また、総重量は、片手で750 gほどになりましたので、3DPケースに比べて安定感が増大しました。

ところで、打鍵音に関してはもうなんもわからんになってきました。
PCBの下のフォームをいろいろ試してみたのですが、まず、フォームをPCBの下に一切入れない状態だと、空洞に音が響くような感じになることを確認しました。
一方で、フォームでみっちりにすると、音の響きはなくなるものの、打鍵感がだいぶ硬くなってしまいます。音色としても、無理やりされたミュートされた感があって、あまり好みではありませんでした。
そこで、PCB上のソケット間などの隙間を埋める用のフォームを単体で入れるセッティングにしたところ、残響感がちょうどよく、音色も良い感じになりました。

では、打鍵時にアッセンブリ全体が動いても干渉しない程度の薄いフォームを入れたらどうなるか、と思って発泡PPのシート(約厚さ1 mm)のフォームを試してみました。すなわち、上記のPCB上のソケット間などの隙間を埋める用のフォームとボトムピースの間に、発泡PPのシートを挟んでみました。
そうしたところ、アッセンブリの遊びが確保されているので、打鍵感には影響がないことを確認したのですが、打鍵音がかなり変化しました。かなり鋭い音が鳴るようになり、今、どういうことなのかを考察しているところです。

3DPケースのほうは?

3DPケースの方も使えるようにしたかったので、このようなインサートプレートを作ってみました。
レーザーカットは遊舎工房さんにお願いしました。いつもありがとうございます。

POM製スプリングプレート

1.5 mm厚とはいえPOM製なので、かなり柔らかめの打鍵感に仕上がりました。
タクタイルスイッチだと若干微妙な感じがありますが、リニアスイッチだとちょうどよさそうなので、リニアスイッチを搭載する仕様にして使おうかなあと思います。
リニアな気分のこちらを使う、という運用にできればいいかなと思いました。
打鍵音に関しては、空中にふわふわ浮いているような状態に近いので、プラスチックを叩いている系の音がしますが、まあこれはこれで良い、といった感じです。

今後について

個人的なキーボードの開発テーマは、打鍵する際の楽しさです。楽しさには、様々な要素があると思っていますが、中でも打鍵音の要素にはこだわって設計しているつもりです。
打鍵音の意味では、まだまだこのケースでもいじるところがありそうで、打鍵音のエンドゲームはいつになるやら、といった気がしてきました。このケースをもとに、いろいろ実験してみたいと思います。

また、今回のマウント方式では、多少マシにはなったのですが、端の部分と中央の部分で打鍵音が異なる問題はいまだに解決できていません。音の一貫性という意味では、どこを叩いても同じ音が鳴るようにしたいものですが、この方向性も模索していきたいと思います。

打鍵音に関して、他に試してみたいこととしては、『打鍵音を強調するうるさいキーボード』も挙げられます。方向性の例としては、木製のボトムプレートを使って、アコースティックギターよろしくサウンドホールを設けてやる、といったことを妄想しています。

また、Paren48のPCBに関しては、前回も書いたように、需要があるかはさておき、サンドイッチマウント方式のキットの頒布までできればいいな、と思っています。
初めてなので、そこにたどり着くまで結構かかりそうですが、気長にお待ちいただければと思います。

この記事は、Paren48(アルミケースver.)で書きました。

*1:Online 3D Printing Service | Custom 3D Printed Parts - JLCPCB

*2:つまり合計で60ドル×4でした。円安がつらい。

*3:RP2040-Tiny開発キット — スイッチサイエンス

*4:そこまでの設計をやったことがないともいいます

*5:PCBとスイッチプレートの間にさらにプレートを挟み、そのプレートをケースにマウントする方式のこと。詳細は前回の記事を参照してください。

*6:でも今度アルミの削り出しをするなら、グレーのアルマイトか色なしのアルマイトにするかもなあと思いました。黒は黒でカッコいいのですが、金属感が薄いため。

*7:[GB] XY STUDIO BSUN HUTT TACTILE SWITCH FACTORY LUBED (10PCS)

分割キーボード「Paren48」を作っている話

はじめに

ロータリーエンコーダが4つ搭載される40 %サイズのキーボード(Paren48)を設計していて、アルミ削り出しケースに向けた試作品が完成したので、途中経過をいったんまとめておこうと思いました。
以下の写真は3Dプリンタ製のケースです*1

Paren48(3DPケースバージョン)

なんかもうこれでいいんじゃないかという気もしてきましたが、いろいろ直したい部分はあるので、当初の予定通り、アルミ削り出しのケースを作ろうかなと思っています。
まだ完成には至っていませんが、特徴点などをまとめておこうと思います。

特徴点

  • 40 %サイズの分割キーボード
  • ロータリーエンコーダを両手で4つ搭載(4つとも大径のノブを搭載可能)
  • 放射+湾曲配列
  • インサートプレートマウント*2採用

なお、名前(Paren48)は、丸括弧を意味する"parenthesis"と、ロータリーエンコーダを含めたキー数から命名しました。配列が湾曲している向きが丸括弧と同じ向きなので、そこからとりました。
以下、各特徴点について説明します。

ロータリーエンコーダ

ロータリーエンコーダを片手で2つ、両手で4つ取り付ける前提で設計してみました。
これは、普段親指のロータリーエンコーダを回していて、他のノブがあったら便利だなあと思うことがあったので、いっそということで増やしてみました。
親指部分のノブは最大30 mmφ、人差し指のノブは最大32 mmφくらいまでは搭載できるはずです。ケースの設計としては、親指は30 mmφ、人差し指のノブは25 mmφで設計しています。
人差し指側のノブはサブ的な扱いですが、そこそこアクセスしやすい位置にあるので、押すのがちょっと面倒なショートカット等を割り当てることを狙って設計してみました。

配列

ぱっと見ではわかりにくいですが、指先に向かって広がっている放射の要素と、湾曲の要素を取り入れた配列にしています。

真上からの写真

この配置と、小指の下げ幅を調整した結果、小指を開き気味に構えることになるので、手首を置く方向としては、かなり小指側が下がった角度を許容する形になります。そうすると、人差し指側がかなり上がり、親指がだいぶ内側まで届くようになります。この手の角度と指の配置の関係については、前回の記事を参照してください。
piroriblog.hatenablog.com

この調整の結果、カラムスタッガード系の配列で発生しがちな、「NI」「BE」の連続打鍵遠い問題を軽減できたのではないかと思います。
また、小指の打ちやすさ、親指の打ちやすさは損なわれていないと感じます。

ケース設計とマウント方式

ぱっと見ケース設計は普通に見えるのですが、よく見ると、横からちらりと見えるプレートの位置と、スイッチプレートの位置が合っていないことが分かると思います。
これは、上にも特徴点として記載していますが、インサートプレートマウント方式を採用しているためです。
「インサートプレートマウント」は、私の知る限りでは初の試みだと思うので、勝手に命名しました*3
何をやっているかというと、PCBとスイッチプレートの間にさらにプレート(インサートプレート)をサンドイッチし、そのインサートプレートでケースにマウントする、という構成になっています。
さらに、このインサートプレートをスプリングプレートとすることにより、衝撃が緩和されることを期待しています。
何のことやら、という話になりそうなので、今回のケースの設計をお示しします*4

Paren48の内部構造

スイッチが搭載されるアッセンブリ部分についていえば、スイッチプレート(銀)、フォーム(黒)、インサートプレート(光沢ありの銀)、フォーム(黒)、PCB(ただの白い板)の順にスタックする形です。
このインサートプレートがスイッチプレートより一回り大きいので、これをケースにマウントする形です。
実際のブツはこんな感じです。

実際のアッセンブリ

インサートプレートは、スリットを入れて多少上下方向の振動を吸収するようにしています。
実際の構造はこちらです。

スイッチプレート(左)とインサートプレート(右)

この無茶苦茶なインサートプレートの形状ですが、切断堂さんにお願いして切ってもらいました。大変きれいに仕上げていただき、いたく感動しました。
なお、インサートプレートの素材はステンレス(SUS304)、厚みは1 mmです。
スリットが入っているとはいえ、素材が素材なので、結構硬めの打鍵感になります。
1 N(約100 g、底打ち時を想定)の荷重が作用した際の変位量が、だいたい0.3~0.5 mmくらいになる想定でスリットを設計しました。やわらかくするというよりは、衝撃だけ吸ってくれればよい、という思想です。

さて、ここまでお読みなった方で、「スイッチプレートにスリットを入れるんじゃだめだったのか?」と思われた方もいらっしゃるかと思います。
スイッチプレートにスリットを入れている例としては、例えば、THERMAL*5が挙げられます。

これに対し、今回のこの構造は、音の調整のために考案して採用してみました。
通常、スイッチプレートにスリットを入れてケースにマウントすると、トップマウント的な性格の音がしやすいと思われます。つまり、ケースの方に音が伝わりやすい状態といえるため、ケースからの音が鳴る状態といえます。
一方で、いわゆるガスケットマウントとすると、ケースとスイッチプレートの間にクッションが入るので、ケースとスイッチのアッセンブリが音響的に隔離される場合が多いといえます。そうすると、スイッチのアッセンブリの音が打鍵音全体の印象を決める状態になりやすいといえます。
これらのことは、スイッチのアッセンブリがほぼケースと一体化した状態となったRaven46*6と、やわらかめのガスケットマウントとしたCygSUS*7の音の傾向からなんとなくつかんでいました。また、イベントなどでひっそりとカスタムキーボードを触らせてもらって、だんだん上記の仮説が正しいと思えるようになりました。

ここで、CygSUSはそのケース構造も相まって、かなり打鍵音が響くので多少それを抑えたいと考える一方、Raven46のように一体化してしまうとスイッチの個性を殺すことになりかねないし、そもそも硬い、とも思いました。
そこで、両者のバランスをとるという観点から、スイッチプレートと、ケースにマウントする部材を「若干」音響的に分離しつつ、一定の柔らかさを実現する構造を模索したところ、上記の構成に至りました。

感想

1週間くらい仕事で使ってみてみた感想としては、狙ったことはまあまあうまくいったかな、といった印象です。

人差し指のロータリーエンコーダについては、例えば分割キーボードでちょっと押しにくいCtrl+Y、ブラウザのタブ移動、マウスの戻る・進むボタン等を割り当ててみていますが、使用頻度はそこまで高くないけどちょっと押すのが面倒なショートカット等を割り当てるのにはちょうど良い感じです。

配列については、このタイプの配列は3台目ということもあって、かなり自分の手にフィットするようになってきた印象があります。

打鍵音については、ちょっとなんとも表現しにくいのですが、かなり不思議な音がします。これに関しては実際に触っていただくしかないかもしれません。少なくともやや静かめにはなりました。何とか言語化するなら、全体の音量が下がりつつ、特定の周波数帯の音がかなり減っているような印象を受けます*8
スイッチはBaby Kangaroo*9を採用したのですが、あれ、本当にこのスイッチ? という音がします。ただし、特徴的な高音までが吸われているわけではないので、スイッチの性格は残るのではないかと思います。他のスイッチも差してみましたが、スイッチ毎の違いはそこそこ出るように感じました。

打鍵感については、体感でほとんど沈み込みが感じられませんが、衝撃が手に伝わってこない程度になっているので、狙い通りにできたと思いました。実は下の空間をちょうど埋める専用のフォームも切ったのですが、このフォームを入れるとかなり硬く感じたので、体感ではほとんどわからないなりにも、スプリングプレートとして作用していることは実感できました。
一方で、じゃあスプリングプレートをめっちゃ柔らかくしたらどうなるのか、というのも気になったので、それ用の部材も発注してみました。届くのが楽しみです。

今後について

今回は試作という位置づけで3DPのケースを発注しましたが、組み立ててみて初めて気づく設計上の問題もあったので、試作してよかったなあと感じています。特に、ドーターボードの採用は今回が初めてだったので、その周りの設計上の問題が目立ちました(組み立てる際に結構削りました)。
色々な問題点を調整しつつ、踏ん切りがついたらアルミの削り出しの発注をしてみたいと思います。

なお、この基板自体は、キットとして頒布するか、オープンソースにするかのどちらかにはして、皆さんにも作っていただきやすい形にしようとは考えています。
キットとして頒布するとしたら、おそらくFR4のみ、または、FR4とアクリルのサンドイッチマウントの形態になります。ここで、インサートプレートマウントであれば、ケースに後付けできるとは思いますので、分割型で柔らかい打鍵感を実現したケース付きキット、という形もありうるかもしれない、とは思っています*10
いつになるかはわかりませんが、ご希望等があればお知らせいただければと思います。

アルミの削り出しケースは憧れていたので、使いやすいことが確認できたこのキーボードの形状でそこまで到達できればいいな、と思っています。

Paren48を職場に置いているため、この記事はQuokkaで書きました。

*1:試作といいつつ本番用の真鍮ウェイトを搭載しています

*2:多分他に採用例がないので私が勝手に命名しました

*3:先行例があったらすみません

*4:この分解して見せるやつ、一回やってみたかった

*5: THERMAL SEQ2 Plate – RAMA WORKS®(※URLはプレート)

*6:ハイブリッド積層ケースのキーボードを作った話 - ぴろりのくせになまいきだ。

*7:積層ケースのキーボードを基板から作ってみた - ぴろりのくせになまいきだ。

*8:アッセンブリとなったスプリングプレート全体の共振しやすい周波数帯の音が吸収されていると予想しています。

*9:Gateron Baby kangaroo / Tactile

*10:実は、当初アクリル積層のケースにしようと思っていたので、アクリル積層ケースの設計自体は終わっています。仮にサンドイッチのキットのみを頒布するにしても、このケースデータは供養も兼ねて公開する予定です。