⌨️

フレキシブルPCBで立体的な自作キーボードを作ってみたレポート

2023/11/12に公開

meishi Trackball Moduleを搭載した立体的なキーボード Tober35 を作成しました。
こちらのキーボードではJLCPCBで発注可能なフレキシブルPCBを用いて作成しましたが、フレキシブルPCBを利用した自作キーボードの作例がまだまだ少ないので製作中の気づきなどをまとめておきます。
フレキシブルPCB結構使えそう!と思ってもらえたら嬉しいです。

https://twitter.com/daisu826369/status/1722758969138315569

https://twitter.com/daisu826369/status/1722902967614140802

ぺらぺらです

作ろうと思ったきっかけ

keyball39 + 3Dキーキャップの組み合わせで快適に過ごしていました。
そうすると3D形状のトラボ付きキーボードを使ってみたくなるわけで…
↓例えばCHARYBDIS
https://bastardkb.com/charybdis/
ただ、keyball39 + 3Dキーキャップ に満足している & 購入価格がかなり高くつくということもあり購入には至っていませんでした。(円安もえぐいですし…)

そんな中、fabcrossさんの記事でフレキシブルPCBを個人でも発注できるとの記事を発見!
(かなり参考になるのでまだ読んでいない方はぜひ!)
https://fabcross.jp/category/make/order_in_person/20230711_flexible_board.html

meishi Trackball Moduleを搭載したキーボードを作ってみたいとも思っていたので作るしかないとなったわけです。

PCBデータの作成手順

fabcrossさんの記事のように汎用的なPCBではなく、一つのキーボードに特化したPCBを作成する例です。

  1. まずは3DCADでケースデータ作成
    ケースの3Dデータが確定していないとPCBに必要な寸法が確定しないので、まずはケースデータを作成します。
    キーキャップ同士の干渉が無いように
    (ケースについては別の機会があればそちらで…)

  2. 基板のどこまでをフレキシブルPCBとするか決める
    今回作成したキーボードでは、親指部分も含めたキーマトリクス部分をフレキシブルPCBとしました。
    左のキーマトリクス、フレキシブルPCB
    親指部分を通常のPCBで作成しコネクタで接続することも考えましたが、フレキシブルPCBの柔軟性がかなりありそうだったのでこの部分は一体としました。
    コネクタによる接続を減らすことができ、ここの判断は正解でした。

    ぐにゃりと曲がります
    promicroを搭載するPCBをメインPCBとし、そこへキーマトリクスのフレキシブルPCBをコネクタで接続する方式としました。
    (この辺りは CHARYBDIS のビルドガイドを相当参考にさせてもらっています。脚注追加しようとしましたがリンク切れでした…)
    フレキシブルPCBとメインPCBの接続
    フレキシブルPCB側にもコネクタを付ける予定でしたが、スペース的に厳しかったので配線をハンダで直付けとしました
    Tobler35では以下のものもメインPCBにコネクタで接続しています。
    ・meishi Trackball Module
    ・ロータリーエンコーダーとOLEDを搭載するサイドのPCB
    ・LEDテープ

  3. フレキシブルPCBのアウトラインを作成する
    KiCADでフレキシブルPCBの複雑なアウトラインを作成するのは苦行なので、3DCADでフレキシブルPCBのアウトラインを作成しました。

    本来ならスクショのような方法ではなく、より厳密にPCBのスイッチ間距離を求めることのできる方法が好ましいです

    dxf形式でFusion360から出力しKiCadに読み込ませる

この時にフレキシブルPCBのメリットが存分に発揮されます。
通常の固いPCBで立体的なキーボードを作る場合、0.8mm、1mmなどの薄いPCBをしならせる必要があるようです。
そうすると基板の曲率をしっかり計算して、きちっとした寸法精度でないとスイッチの取り付けができません。
曲率の制限もあるので形状の工夫もそれなりに必要と思われます。
(この方法で作ったことがないので難易度は予想ですが…)
その点フレキシブルPCBであればスイッチ間の距離寸法の大きさは曲がることで多少吸収できます。
むしろ縦のスイッチ間の距離寸法を+1~2mm程度大きくとると、スイッチの足にフレキシブルPCBをはめる作業が楽になります。

試しにジャストよりスイッチ間の距離を多めに取った箇所

  1. KiCADでPCBデータを作成する
  • PCBのアウトライン、穴付近の配線はいつも以上に気をつける
    • スイッチ足の穴付近はPCBをはめる際に曲がりやすいのでギリギリを攻めない方が良さそうです
    • 先述の縦のスイッチ間の距離寸法を多めに取るという方法も対策として有効です
      スイッチ穴の広がり
      取り外したフレキシブルPCBですが、スイッチセンター横の穴が広がっています
  • 曲がるべき場所に部品があると曲がらなくなるので極力部品を配置しない
    • そのためダイオードは水平方向に配置するのが多くのケースで良いと思います
  • 紙にプリントアウトして最終チェック

    なのでケースの実物が完成した状態でPCBを作り始めた方がいいですね
  1. フレキシブルPCBを発注する
    2023年時点で個人発注のコストを考えるとJLCPCB一択に思えます。
    通常のPCB発注と同じ手順で発注可能でした。
    厚みの選択については悩みましたが、JLCPCBでもデフォルトの 0.11 を選択。
    実際に組み立ててみて 0.11 で問題ありませんでた。(予算が許せば 0.2 も試してみたかった)

組み立て時の注意点

  • スイッチの半田付けは手早く行う
    PCB自体は320℃設定で半田付けを行っても問題ありませんでしたが、chocスイッチ内部の樹脂を溶かしてしまい2つのスイッチをダメにしてしまいました。
    実はスイッチの脱着をしたのでその時にダメにした可能性が高く、普通にはんだ付けする分には問題ないかもしれません。
    ですがPCBの厚みがない分スイッチへ熱が伝わるのが早いので、手早く半田付けする方がトラブルを避けられそうです。

フレキシブルPCBで立体的なキーボードを作るメリット、デメリットまとめ

デメリット

  • 通常のPCBと比較して製造コストが高い
    • Tobler35では、片側 5pcs で約30ドルかかりました。なかなか慎重になる金額です。
  • スイッチのホットスワップ対応が難しい
    • スイッチの半田付け以外で基板とケースを固定する方法が必要になります
    • スイッチのホットスワップが必要であれば、無限の可能性基板がより適していそうです
  • キーごとにLEDを搭載することは難易度が高い
    • 私は部品の配置、配線のスペースの問題から諦めました
    • Charybdis はこれをクリアしているので作り方次第ではあると思います

メリット

  • 通常のPCBでの設計と比較して、PCBの曲率をシビアに考えなくても良い
    • これだけで制作難易度がぐっと下がった実感があります
  • ケース内の半田付けのスペースとして、スイッチの半田付けのみ考えれば良い
    • 手配線でぐったりするようなスペースでも、1スイッチ2箇所だけのハンダなら組み立てがかなり楽になります
    • 手配線だと諦めるようなタイトなケース設計も可能になります
  • 手配線の立体キーボードよりも頒布が現実的

最後に

制作した Tobler35 の頒布もしくはオープンソースでの公開をできればしたいという気持ちはあるのですが、改善しなければいけない部分が複数あり、試作コストも高いので当分先の事になりそうです。
(他にも作ってみたいキーボードがありますし…)
ですが制作をしてみてフレキシブルPCBが立体形状のキーボード制作のハードルを下げるきっかけになるんじゃないかと思い記事にしてみました。
この記事をきっかけに、フレキシブルPCBで自作キーボードを作る方が1人でもいてくれたら嬉しいです。

Discussion