ロードヒポキシス

可憐、無意識

ぺかそちゃんmeishi基板を作った話

この記事は キーボード #2 Advent Calendar 2022 - Adventar の21日目の記事です。

20日目は段々畑さんの「Blenderモデリングしたキーキャップの話」でした

scrapbox.io

Blenderは定期的に始めては挫折しているのでこれを操ってものが作れる人はすごいなぁという気持ちです。

今年はまとめじゃないの?

さてこのブログの一つ前の記事を見てわかるように、ここ数年は毎年この時期に一年のキーボード活動の振り返りをする場となっています。

今年も同じことをする羽目になるかと思いきや、今年はアレとコレが大部分を占めており、なおかつそれらは来るべき時が来るまで口外できず、万が一したら所有するキーキャップすべてを再生ペレットにされる契約書面に同意しているため同じノリで記事を書くことができなくなってしまいました。

というわけで今年は以下の「ぺかそちゃんmeishi基板」を作った話をします。

meishiとは

自作キーボードにおいてmeishiとは、びあっこ氏が設計し、現在は遊舎工房で初心者向けの自作キーボードキットの「meishiキーボード」からきています。元々は同人名刺からの流れでびあっこ氏が自己紹介するために作成した4キーのシンプルなキーボード基板です。自作キーボード=はんだ付けするやつみたいな風潮の強いこの日本において、ちょうどよいはんだ付け初心者向け練習としてベストセラーキットになっています。

このmeishiキーボードの功績にならい、meishiキーボードベースにカスタマイズするか各自約55mmx91mmのサイズの基板を設計し、1キー以上のキーボードとして動作するものを作る「meishi展」という奇祭が遊舎工房によって過去2回行われました。1回目は2019年に、コロナ禍があり間が空きましたが2回目が今年2022年に開催され、多くの人達によって個性の強いmeishiが展示されていました。

今回作成したものはその2回目のmeishi展に出店するために設計したものです。

名刺≒ネームプレート

今回、というか1回目もそうだったのですが名刺は名刺でも首から下げるネームプレートとして設計しました。というのも実際何かしらのイベントで文字通りの名刺として配る人も中にはいますが、正直かさばるし単価が紙のそれと比べて高いため個人的にはあまり好みではありませんでした。ならばイベントで見せびらかせられるように、かつオタク特有の顔が区別できないために首から下げるネームプレートのほうが使い勝手が良いのではという考えからです。(実際の名刺は紙でやりたかったし

余談ですがイベントのとき、顔だけで誰だと判別が本当にできないです。向こうから話しかけられても自分の視界の右上に表示される名前とその確度が良くて6割程度をふらふらしています。なので全人類首からTwitterスクリーンネーム書いた札を下げていてくださいお願いします。

meishiデザイン

というわけでmeishiもとい名札を作るため、必要な情報をまとめてみます。

  • ぺかそちゃん、一番重要。
  • 名前、一番重要。
  • 連絡先(メールとかURLとか)、一番重要
  • キーボードの回路、meishi展のレギュレーション的に一番重要

以上より構成を考えてみた結果、ぺかそちゃんを基板のデザインで表現する「レジスト芸」を使って表現し、かろうじてキーボードとしても動作する基板を作成することにしました。

基板で絵を表現するには

基板に絵を描く方法として、最も簡単なのは通常部品番号とかを乗せるためのシルクを使うのが一般的です。白色で一色だけの表現になりますが、基本的に画像一枚を変換して(基板CADツールのKiCadには画像から変換するツールが付属している)作ることができるので簡単です。実際2019年のmeishi展1回目はこの方法でmeishiのネームプレートを作っています。

もう一つの手法、というか上級者向けの方法として「レジスト芸」があります。レジストとは基板に塗られている緑色や赤色をしているインクのことを指します。通常は基板の表面を腐食などから保護するためのものですが、デザインとしてあえてレジストを塗らない領域を作ることにより、その下にある銅箔や基板の地の色を出すことができ、この色の差を使って5色程度の表現を行うことができます。

一方でこれを作るためにはやや難易度が高いです。KiCadでも作成するためにはファイルをメモ帳で手動編集しなければならない等面倒な作業が多いです。そんな面倒なことをやる人たちの行為を指して「レジスト芸」と呼びます。

レジスト芸の概念と実際の方法についてはe3w2qさんが詳しくまとめているのでそちらを読むことをおすすめします。

e3w2q.github.io

ぺかそちゃん on 基板

実際に今回レジスト芸をしてぺかそちゃんを基板上に作り上げていく過程を紹介します。まずはパワポを使って学生服のぺかそちゃんの絵を描きます。

ほぼ週刊キーボードニュースで使わなかったので全身は初出

次にmeishi向けにグラデーションや細かい装飾を取り除いて基板に落とし込みやすいデザインにしたものをPDFで書き出します。

目のデザインなど細かい部分は表現できないのでデフォルメする

PDFになったぺかそちゃんをイラレにぶちこみます。この時点でパワポのパスと塗りがいい感じに分離しなかったりしたりするので、ここを教団の秘術でなんとかします。

そして銅箔やレジストを避けるためのマスクと呼ばれるレイヤーにそれぞれ分け、画像として出力します。後はこれらをKiCadでシルク部品に変換した後、手動で各レイヤに書き換えKiCadに読み込み直します。そのあたりの手順は上で紹介したe3w2qさんの記事を参考にしてください。

その他の部品とともに出力

ネームプレートなので短辺上部にネックストラップを取り付けるための長穴を外形で入れました。

キーボード部分づくり

meishi展に出展するためのレギュレーションでは、「最低でも1キーのキーボードとして動くこと」とされているためキーボード回路をつくらないといけません。

ATmega32u4は単品で手に入らないし(持ってはいるけど)、Raspberry PicoベースでRP2040を使うのは大げさだなぁと思っていたところ、とある人から中華マイコンのCH55Xシリーズを紹介されました。このマイコンは安く在庫もあるし、最小レベルのパッケージ/製品であるCH552Eは10ピンでありながら内蔵クロックを持ち外付け部品がほとんど不要のままUSBデバイスにもなるというなんとも都合の良いマイコンです。しかもch55xduinoと呼ばれるライブラリを使うと、一部成約はあるもののArduinoと同じ使い勝手でプログラムできます。

github.com

実際に作った回路はこれ。スイッチとLED類を除いたら3.3V作るLDOだけでほとんど部品がありません。でもコレでUSBキーボードとして動きます。ちなみに最初は裏面のタクトスイッチだけの1キーで通そうと思っていましたが最後の最後で日和ってキースイッチのCherry MXとChocスイッチソケットを実装しました。しかし当日斜めの人さんがタクトスイッチだけで出してました。負けた。

meishi回路図

実装は無限に在庫を持っているUSB Type-Cコネクタを除いたすべてをJLCPCBにお願いしました。それでも1枚$6.5ぐらいでした。余談ですが今回緑色レジストで発注しましたがこれとは別に紫色レジストでも発注しましたがシルクがきれいに出ずに失敗しました。レジストの色によってはシルクのインクの乗りが全然異なるため、最もノウハウのある緑色以外を使う場合は要注意です。JLCPCBの場合は高品質シルクのオプションがあるのでもうちょっとマシになるかも?

3Dプリンタでフレームづくり

これはなくても良いのですが、紙とか柔らかいプラスチックのネームプレートとは違い、それなりに硬くて鋭利なエッジが首からぶら下がるのでやや危険です。なので3Dプリントで周囲を保護するためのフレームを印刷しました。色合いと丸いデザインのためにシリコンみたいで柔らかそうですが、普通のPLAなのでそこそこ硬いです。

完成

そんなこんなで完成したmeishi展向けの「なふだ」ですが、普通にイベントとかに毎回持っていっているアイテムになって気に入っています。おそらくコミケにも持っていくので来られた方はぜひ。原稿はまだ書いています。

この記事はHHKB HYBRID Type-S雪で書きました。

キーボードとUSBについて

この記事はキーボード #1 Advent Calendar 2021 16日目の記事です。 このブログ一年の締めくくりだけ更新される感じになっちゃってますね。

adventar.org

今回は内容的にはあんまりキーボード関係ないけどみんな使ってるUSBについて書いてみました。

USBってご存知ですか

正式名称はユニバーサル・シリアル・バスUniversal Serial Bus)、その名前の通り汎用的なシリアルバス規格として1996年に誕生しました。それ以来四半世紀に渡って高機能化し、身の回りの周辺機器デバイスでは一般的なものになりました。

そんなUSBはみなさんがお使いのキーボードにも使われています。「Bluetooth専用です!」とかケチつけなければ大抵USBで接続されるはずです。さてUSBとキーボードはとても相性が良いです。コネクタのサイズも丁度いいし、通信速度もそんなに必要ないし、消費電力も大きくないからおあつらえ向きです。

しかしながら近年自作キーボードが一般家庭に普及した[要出典]結果、やたらとLEDで光らせるような治安の悪いキーボードが目立ってきました。

↑治安がやや悪い例

これはお気持ちですが、キーボードに限らず世の中はUSBを「なんか5Vの電圧を簡単に取れるいい感じの電源」扱いしてるんじゃないかと思っています。自作キーボードで電子工作始めた方とかはあまりにカジュアルに電源入れてるのであんまり気にしてないかもしれません。

しかし一歩間違えるとキーボード壊すどころか根本のパソコンまで壊しちゃう可能性が無いこともないので、今回はUSBの「電源」について書いてみました。あんまり技術詳しくなくても明日からあなたの身の回りのUSBポートをいたわる気持ちになって貰えればと思います。

USBが扱える電力

USBはコネクタ、通信、電源に分けてもそれはそれで巨大な規格の集合になっているので全部書いていたら本ができてしまうし実際分厚い本は既に存在します。

そこからUSBの電源について至極ざっくり言うと、今でも多くのパソコンに付いていて四角くて向きがわからないことで有名なUSB Type-Aと呼ばれるタイプのUSBポートは、USB2.0で電圧が5Vで最大500mA(ミリアンペア)、USB3.0でも900mAです。

f:id:kou014:20211215232448p:plain

ほぼすべての自作キーボードはUSB2.0で動いているので規格通りであればキーボードとして動いているそれは最大5V/500mAまでしか流すことが出来ません。

あまりピンとこないと思うので自作キーボードでよく使われるRGB LEDを見ると、実測で1個あたり消費電流は最大50mAです。単純計算でたった10個でいっぱいですし、キーボード分の消費電流もあるのでこれを考慮したら10個もつけられないです。

akizukidenshi.com

ここで「USB Type-Cってやつはパソコンも充電できるしこれよりもいっぱい光らせられるんだよね!」と思った奇っ怪な人もいるかも知れません。ちょっと丸くて上下の向きが関係なくて最近のパソコンは大抵ついているUSB Type-Cと呼ばれるコネクタ(USBポート)は、電源周りが拡張されてType-C Currentという規格で最大5V/3A(3000mA)まで流せるようになりました。

f:id:kou014:20211216000035p:plain

ここで注意してほしいのは、Type-C Currentはあくまでポートの両側(パソコン側とキーボード側)がどちらもType-Cであることが条件です。これはより大きい電力を安全に使うために「ちゃんとType-Cでつながっているよね?」と確認する仕組みが入っているからであり、例えばType-A → Type-Cなケーブルを使った場合は普通にUSB2.0の最大500mAになります。

でも動いてるけど?

上記の消費電流の測定はRGBすべての色を最大の明るさで光らせたとき(=白色)なので、実際はみなさん思い思いの色で光らせているのでそれよりも低いですし、QMK Firmwareの中を見ると、RGBLIGHT_LIMIT_VALで最大の明るさを制限していたりする場合もあるので実使用上は問題ないことが多いです。

また、USBポートを搭載しているパソコン側も治安の悪い周辺機器が使われることを前提として電源周りを強力にしているパターンも多いです。結構前のAppleMacBook Pro光学ドライブが搭載されなくなった頃、外付け光学ドライブをケーブル一本で使えるようにするため数A流せるようになっているとかなっていないとか。

実際超えるとどうなるの

大抵の場合、パソコン側で設計以上の電流が流れた場合は保護回路によって遮断されてOSに通知がいく仕組みになっています。Windowsだと「USBポートの電力サージ」というポップアップが出てきたりします。

どちらかというとこれに引っかからないけどギリギリな電流を消費しているパターンが厄介かもしれません。パソコンメーカー各社もそういったことを考えて設計していないわけでも無いですが、あまり質の良くない設計だと余計な発熱をして無理に電流を流し続けた結果、じわじわと電源回路が劣化してある日突然キーボードを認識しなくなる…ことも。

そうでなくてもドッカンドッカン電力を食っていると挙動が不安定になり、切断と認識を繰り返してOSも不安定になっちゃったりするパターンもあるのでできるなら省電力であるべきです。

じゃあ壊れるのか壊れないのかはっきりしてよ

まとめると、今どき壊れることもそんな無いけど自作キーボードで消費する電流は大きくても500mAに収めたほうがいいよという感じの話でした。

今回は電流値の話をしましたが、LEDの光らせすぎとか関係なく自作キーボードの組み立て途中でうっかり金属の机に置いてショートさせちゃったとか、コネクタのはんだ付け微妙にミスってわずかにショートしてるとか自作ならではのトラブルも考えられます。

気になる人は「USBテスター」とかで検索して出てくるようなUSBポートに挟んで使うテスターで自分のキーボードがどれだけ電力を食うのか見てみるのも良いかもしれません。

なんかUSBハブついたキーボード作ってたじゃん(今年のまとめ)

正直現在進行系で忙しいせいで今年はキーボードあんまり作ってない感じの1年でした。そんなかちまちま作ってたのが「Tabula TKL」という名前のキーボードです。

kou014.hateblo.jp

アルミ削り出しテンキーレスキーボードというこれまで(自分が)作ったことなかったキーボードを作ってみたかったのと、あんまり自作キーボードでもついてないUSBハブを付けました。

f:id:kou014:20210131160014j:plain
Tabula-TKL(最終版)

f:id:kou014:20210131150217j:plain
上の方にあるのがUSB2.0ハブの回路

個人的にはわりとよく出来たとは思ってましたが、正直余り面白くなかったのと、半導体不足でUSBの保護回路のICが無くなり、USBハブICも値段が5倍ぐらいになってしまったのでこのままお蔵入りです。かなしい。

来年こそはちゃんと面白いのが出せるといいなと思っていますがあまり出せるネタが無いのでUSBの話をしてしまいました。おわり

この記事はFortitude Pro Prototypeで書きました。