Cassette42

【追記】新基板には表面実装部品のパターンもありますが、ProMicroを使う場合はこのページに従って組み立ててください。

meishi展という最高に楽しい企画に乗っかってカセット42というメディアキーパッドを設計しました。

カセット42の42はErgo42をパクった究極のパッドという意味ではもちろんなく、4つのキー+2つのエンコーダから名付けられています。

カセットテープを模している理由は、これが音楽を楽しむためのガジェットだからにほかなりません。

カセットで新譜を買って聴くという積極的な音楽ファンも一部にはいますが、一般的な音楽消費はフィジカルメディアから配信やサブスクへと移行してしまいました。実際、PCやスマホで無限にある音楽を気軽にザッピングできるのは非常に便利で楽しいですよね。

次々に提案される関連曲やプレイリストを聴きながら作業するのに便利なのがメディアキーというやつです。メディアキーはアクティブウィンドウでなくても、つまりバックグラウンドで再生中の音楽再生ソフトを操作することができます。カセット42には再生ポーズ、一曲前、一曲後のキーとともにロータリエンコーダによる直感的なボリューム操作が可能になります。これがものすごく便利でして、一度使うと手放せなくなります。やはりボリュームは回すのが良いです。

カセット42にはまたアンダーグロー用RGB LEDとOLEDを搭載可能です。RGB LEDには5050サイズのWS2812Bを選びました。WS2812Bは比較的熱に強いため、はんだ付けもそれほど難しくありません。これらは必須ではないので、まずはProMicroとスイッチだけ付けて、後からロータリエンコーダーやOLEDなどを付けていくことも出来ます。ただし、いったんスイッチなどを取り付けてしまうと基板をひっくり返した際に水平を取ることが難しくなりますので、できれば
WS2812Bだけは一番最初に付けた方がいいでしょう(光らなくてよいなら付ける必要はないです)。

 

ビルドガイド

  1. WS2812Bの実装(オプション)
    • 最初からRGB LEDを付ける場合はProMicroの実装より先にはんだ付けした方が楽です
    • WS2812Bには取り付ける向きがあります。4つ角のうち、斜めに切り込みが入っている部分が右上に来るように配置します。写真を参考にしてください
  2. ファームウェアの焼き込み
    • Remapから直接ファームウェアを書き込むことが出来るようになりました。下記リンクから直接Cassette42のファームウェアページに飛ぶことが出来ます。書き込みにはChromeもしくはEdgeからのアクセスが必要です。
      https://remap-keys.app/catalog/SMY5J7ZDDnhHJHdnnmme/firmware

      「FLASH」を押すと下記のダイアログが現れます。

      ProMicroがショートしないように電気を通さないテーブルなどに設置し、USBケーブルを使ってPCと接続します。ここでも「FLASH」ボタンを押します。

      COMポートに接続されているデバイスの一覧が出ますので、該当するもの(ここではProMicro)を選んで接続を押します。

      上図のように書き込み結果が表示されれば書き込み終了です。
    • 従来通り、QMK ToolBoxなどのツールを使って書き込む場合は、デフォルトのキーマップを設定した初期ファームのhexファイルをページ下部に置いておきますので、このファイルをProMicroに焼いてください(最初から自分でビルドすることも出来ます。リポジトリは後ほど紹介します)
  3. ProMicroの実装
    • ProMicroは上面側に取り付けます。USB端子が右側に出るように、また、ProMicroの部品面が上になるようにします
    • ProMicro付属のピンヘッダをカセット42の基板との間に挟むようにしてはんだ付けしてください
    • ピンヘッダは、黒い樹脂部分を中心として接点部分の長い方と短い方があります。どちらを上にしても(下にしても)構いません。気になる場合はニッパーでカットします。カットを前提にするのであれば、長い方を基板の下に突き抜けるようにすれば、カットの出来不出来を気にしないで済みます
    • コンスルーを使う場合も同じように部品面が上になるようにします(一般的なキーボードキットで指定されている方向と反対です)
  4. OLEDの実装(オプション)
    • OLEDはピンヘッダメスを基板に、オスをOLEDモジュールに実装し、脱着可能にします
    • OLEDモジュールとピンヘッダオスを先にはんだ付けします。その際、ピンヘッダの長い方の端子をOLEDモジュール側(上側)にし、短い方の端子がメス側(下側)に来るようにします。
    • OLEDモジュールにはんだ付けされたピンヘッダオスの端子をメス側に差し込んだ状態にして固定しながら、基板裏からピンヘッダメスを実装します。一度に全ピンをはんだ付けせず、まずは1ピンのみはんだ付けして位置がずれていないかどうかを確認した方が失敗がないです
  5. ファームウェアテスト
    • USBケーブルでPCと接続して動作確認をします
    • 正常ならばOLEDやLEDが点灯します
    • 点灯しない場合ははんだ付けをよく見直してください
  6. スイッチの実装
    • MX互換スイッチもしくはKailh Chocスイッチをはんだ付けします
    • MX互換スイッチの場合はPCBマウント用の方がかっちり固定されるので好ましいです
  7. リセットスイッチの実装
    • タクトスイッチをはんだ付けします
  8. ロータリーエンコーダの実装
    • 固定用の金属部分をうまく差し込んで基板に取り付け、はんだ付けします
    • エンコーダの軸にノブを被せます
  9. アクリルプレートの取り付け
    • アクリルの保護紙を剥がして金属スペーサーをねじ止めし、スペーサーの反対側に基板を載せて上面からねじ止めします
    • アクリルの底面側にクッションシールを貼ります
WS2812Bは5個実装。斜めの切り欠きが右上になるように
ProMicroのピンヘッダは長い方を下に。余った部分をニッパでカットしてもいい
ProMicroは部品面が上、USB端子が右を向くように配置
オス側は長い方の端子を上側に。OLEDは先にオス側ピンヘッダを仮止めしてからメス側をはんだ付けすると楽
ここまで付けたらいったん動作確認。点灯しない場合ははんだをチェック
スイッチとロータリーエンコーダを実装したらノブを取り付け。方向があるので注意
キーキャップはDSAなど低めがおすすめ

操作方法

デフォルトのファームウェア(※QMK本家にマージされているデフォルトキーマップのファームウェア)では4つのキーが以下のように機能します。

[前曲] [再生/ポーズ] [次曲] [スペース]

ロータリーエンコーダは次のように設定されています。

左側:ボリューム(押し込むとミュート/ミュート解除)
右側:アローキー上下(押し込むとエンターキー)

また、4つのキーと左側ロータリーエンコーダの組み合わせによってRGB LEDの変更を行うことが出来ます。具体的には、変更するパラメータに対応するキーを押したままにして、ロータリーエンコーダを回します。
※追記:VIA用ファームウェアでは、RGBレイヤーに移行後に操作します。詳しくは後述。

[HUE] [SAT] [VAL] [MODE]

なお、このLEDの変更は電源オフによって消えてしまいます。EEPROMにストアするには一番右のMODEボタンを押しながら右側のエンコーダを押し込みます(※下記のNEW VIA対応ファームでも同じ)。

【NEW】VIA対応ファームウェア

ATTACK25rev3基板と同様の手法でロータリーエンコーダーの設定も可能なVIAファームウェアを作成しました。
主な変更点としては、新たに5つのレイヤーを追加し、マクロパッドとしての機能を向上しています。これに伴い、従来のRGB LED操作用の4つのレイヤーへは、RGBレイヤーを通じてアクセスするようになりました。一方、MAINレイヤーの4つのキーはそれぞれFN0~FN4のLT(押している間だけレイヤーが切り替わる機能)となります。これらは主としてFN0~FN4に割り当てたエンコーダーの操作を行う場合に役立ちます。

レイヤー構造は以下になります(左の列はVIAやRemapでのレイヤー番号)。

0 MAIN    デフォルトレイヤー(従来のファームではOLEDにaudio modeと表示されていたレイヤー)
1 RGB     RGB LEDの設定レイヤー(6-9)にアクセスするためのレイヤー
2 FN0     自由にお使いください
3 FN1     自由にお使いください
4 FN2     自由にお使いください
5 FN3     自由にお使いください
6 HUE     以下RGB LED設定用(従来のファームと同じ)
7 SAT
8 VAL
9 MODE

レイヤーの移動には左側のロータリーエンコーダーを使用します。左のエンコーダーを押し込むとレイヤー変更が可能になり、OLEDのレイヤー/モード表示が、rgb mode >> RGB layerのようになります。押し込んだままノブを回すとレイヤーの表示が変化しますので、移動したい先を選んで押し込んでいたノブを放しますと確定します。移動できる(常駐可能な)レイヤーはMAIN~FN3です(HUE以降は移動不可としています)。これにより、シーンによってよく使うキーをFN0~FN3にそれぞれ設定しておけば、簡単に切り替えることができます。

VIAなどによってすべてのキー割り当ての変更は容易に可能ですが、通常はFN0~FN3のみをカスタマイズすることをおすすめします。また、すべてのレイヤーにおいて左側エンコーダーの押し込みの変更をするとレイヤー間移動の操作が行えなくなりますのでご注意ください

なお、当面はQMK本家、VIAへのPRは行いませんので、VIAアプリからjsonファイルを読み込むか、Remapを使用してください。VIAではマクロの設定も使えます。

※Remapから書き込み可能になりました!
ChromeやEdgeから下記リンクにアクセスしてください。
https://remap-keys.app/catalog/SMY5J7ZDDnhHJHdnnmme/firmware


※開発中のファームですので不具合などあるかもしれません。ご了承いただける場合のみご使用ください

ファームウェア&リンク

デフォルトファームウェアのhexファイル

VIA用ファームウェアのhexとjsonファイル

VIAファームウェアのリポジトリhttps://github.com/monksoffunk/qmk_firmware/tree/feature/cassette42_via/

回路図:cassette42

頒布サイト:25KEYS (BOOTH)
https://25keys.booth.pm/items/1419380

投稿者: monksoffunk

Cassette42」に4件のコメントがあります

    Leki

    (2019-09-02 - 11:29 PM)

    お世話になります。
    先日失敗したWS2812Bの付け直しをしようとしていたところ、D5のVDDとDOUTの配線を破損してしまいました。
    VDDの方はPro MicroのVCCピンからリード線でジャンパしてリカバリー出来ることは分かりましたが、
    データ通信の末端となるD5のDOUTはどこにジャンパしたらいいのでしょうか?

    実用上はD5だけ死んだ状態なのでさほど問題ないのですが、出来れば直してみたいと思っています。
    ここで問い合わせていいかどうか分からないですが、ご教示いただけたら幸いです。

      monksoffunk

      (2019-09-02 - 11:42 PM)

      こんにちは!
      D5ということは5個全て点灯しているということですよね?
      最後のLEDのDOUTはどこにもつながっていませんので、そのままで大丈夫です

        Leki

        (2019-09-03 - 11:13 PM)

        早速の返信ありがとうございました。
        別途買ってた未使用の基板にテスター当てて必死にD5のDOUTのショート先を探し回ってしまいました(汗
        先ほど新品部品を半田付けしてVCCからVDDにジャンパさせて無事に完全動作となりました。

        なお、ここまで至った顛末は以下の通りとなります。

        1)最初に組んだ時にD3のWS2812Bを焼いてしまって不完全点灯状態に
        2)秋月に行ってWS2812Bをまとめ買い→ん・・・?マイコンチップの形がちょっと違う?
        3)秋月で買ったほうのチップをD3につけてみたところ、D1~D2までしか点灯せず。
        4)調べてみたところWS2812Bは型番そのままでフルモデルチェンジがあったとのこと。ということで新旧タイプを同じラインで共存出来ないことが発覚。
        5)仕方ないのでD1~D5まで全部外して秋月の方のチップに付け直し→D5から古いチップを外す際に基板のVDD端子が剥離・・・orz
        6)遊舎工房さんとこでキット同梱と同じタイプのWS2812Bが普通に売ってることが発覚。しかも秋月よりちょっと安い→ズコーッ
        7)ほぼ諦めていたが、ダメもとでVCCからジャンパ線通したらD5のVDDに電源供給されて一応の点灯成功。
        8)だけどD5のチップもちょっと焼いていた手応えなので、チップ交換しようとしたら今度は基板のDOUTも剥離。
        9)今回の助言に沿ってもう一度新品チップ付けてVDDにジャンパ通してやっと完全点灯。

        以上のgdgdな有様でした(ちゃんちゃん

        まだ組んでない2枚目の方はD1から順々に点灯確認しながら慎重に付けて行こうと思います。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください