hyousi

  • Home
  • 一覧
  • HC-KP designed by ぽぽぽーよ 自作マウス

    ぽぽぽーよさんの設計されたマウス「HC-KP」を紹介します。

    ぽぽぽーよ@Po_Po_Pyo_

    今まで作ったやつとか まとめ

    HC-KPはRoccat Kone Proのサイドをそれぞれ1mm狭くしたものと、くぼみをつけたLogicool G Pro X SuperlightのMBのような形状だそうです。

    シェルはナイロン3Dプリント製でPCBはPro Xを使用したゲーミングマウスです。

    小型つまみ持ち向け設計でサイドボタンは使用できません。

    キットを組み立てて使ってみました。

    キット内容

    シェルひっくり返し

    2024/2/18時点のものです

    シェル、骨組み、左右MB、調整用テープ、ソール

    そのほか必要なものはproxから調達します

    組み立て

    ProXを分解します。

    ProXを分解するのは機会がなくて初めてなのですが、固いところがなくなってポロポロ外れてProWirelessよりも分解はしやすくなっている気がします。

    気を付けるところはバッテリーを抜くところ剥がすところ、フレキシブルPCBを剥がすところですね。

    PCB剥がすのはヒーターで温めながらやりました。私的には組み立てで一番気を使うのここだと思います。

    SMD部品を剥がさないように気を付けます。パターン断線させたらめんどくさいけど手修正しましょう

    使うもの

    説明書通りに組み立てます。下から積んでいくのでひっくり返したりせず組み立てはしやすかったです。

    調整とか

    クリック感が根本的に気になるようであればシェルに合わせてスイッチを交換するのがいいと思います。左omron-rz、右huanoの透明なやつにしました。

    スイッチの乗ったPCBのネジ止め固定位置でもクリック感が変化します。今回は自然な状態に落ち着きました。プリトラベル長いスイッチとかだとPCB前めにしないと押せなかったりしました。

    スイッチとMB押下部が浮いている場合は付属のテープでクリアランスを適度に埋めます。今回は左MBにテープを2枚貼りました

    押下部の左右にMBのラトリング防止の構造がついています。MBのネジ止めの際はこれが左右に寄ったりするとクリック感変わるので、クリックしながらいい感じの位置を探りながらフィッティングしました。

    MBのヒンジの押し付け具合を癖をつけながらいい感じに調整しました。

    クリックのばね感の原因になるのでシェル-PCB-骨組みと重なっているところに隙間を調整用テープで埋めました。

    形状

    サイドは-1mmずつしたKPA、MBはくぼみをつけたproXとのこと。触ってみると、そんな感じ

    KPUをそこまで浅くないつまみ持ちしていた時はもっと幅が広くて少しだけMBが低ければなと思っていたので、そういった点からとても好きな形。

    POM-1は細く低い形状であったためサイズ感は2回りほど大きく感じる。

    上下

    左右

    前後

    写真

    使用感など

    付属の汎用4点ソール込みで実測35gでした。

    開放的で部品点数も少ないが剛性は十分で過失なく破損することはないと思う。

    マウスを置いたときにがたつきはなく底面のフラットさは十分と感じる

    ボトムは開放的で電源スイッチにアクセスしやすい。

    PCBはProXで性能に文句を言う人はいないだろう。

    クリック感は調整が必要かも

    ドングル収納スペースはありません

    使っていて楽しいのでとてもよいと思います。

    おわり

    ぽぽぽーよさんに感謝


  • 汚れた接点をきれいにする

    昔から使い続けている、普段使いしている、中古で購入したイヤホンやヘッドホン, 機器の接続ケーブルなど

    プラグに白さび等発生してしまっていることがあります。

    サンハヤトの接点ブライトと接点復活王を使用してきれいにします

     サンハヤト 接点ブライト・・・中性タイプの接点復活除錆剤

     サンハヤト 接点復活王・・・接点復活と防錆・潤滑

    接点ブライトを貼付して放置した後ふき取り、接点復活王を貼付し拭き取ります。

    傷と剥げもあるし写り悪くてわかりにくいけれどきれいになりました。

    精神的にも汚れたプラグ使いたくはないので持っておいて損はないかもしれません。旧いものは気を付けていてもどうしてもくすんでしまうものですし。

    使用できないものもあると思うので注意。

     


  • QMKでキルスイッチ機能をキーボードに実装する

    東プレさんから発売されているゲーミングキーボード GX1にはキルスイッチという後入力優先機能が搭載されています。

    QMK firmwareを用いて自作キーボードに同等?の機能を搭載してみたところ結構反響があったため残しておこうと思います。

    そのため今回紹介する方法はqmk対応キーボードで自分でファームウェアを入れることができるものすべてに導入することは可能だと思います。

    qmkの環境構築に関しては調べれば色々出てくると思うので割愛します。

    下記は実際にqmkの環境構築からキルスイッチを導入された方の備忘録になります。一から始める方には参考になるのではないでしょうか。

    Keychron k3 proにキルスイッチを導入した備忘録

    Monsgeek M1にQMKでキルスイッチ機能を実装したので注意点とやり方を紹介 & Monsgeek M1 with Durock splash brothersの所感

    市販のメーカー品だと色々カスタムされていてちょっとややこしそうです。

    qmkでキルスイッチを実装する

    どのようにして導入するのかというとカスタムキーコードという機能を使用します。

    カスタムキーコードをどこに実装するかというと、keymap.cにキルスイッチ機能を書き加えます。

    Build software better, together
    GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over…

    下記部分を書き加えるだけで実装することができます。

    プログラムすることに関して私は素人でこれが最適なのかはわかりませんが動作はしているのでまあ

    static bool wkeep = false;
    static bool akeep = false;
    static bool skeep = false;
    static bool dkeep = false;
    
    bool process_record_user(uint16_t keycode, keyrecord_t *record) {
        switch (keycode) {
    /*
    aka killswitch
     */
    
        case QK_KB_0:
            if (record->event.pressed) {
    			wkeep = true;
    			unregister_code(KC_S);
                register_code(KC_W);
            } else {
    			wkeep = false;
                unregister_code(KC_W);
    			if (skeep) {
    				register_code(KC_S);
    			}
            }
            break;
    
        case QK_KB_1:
            if (record->event.pressed) {
    			akeep = true;
    			unregister_code(KC_D);
                register_code(KC_A);
            } else {
    			akeep = false;
                unregister_code(KC_A);
    			if (dkeep) {
    				register_code(KC_D);
    			}
            }
            break;
    
        case QK_KB_2:
            if (record->event.pressed) {
    			skeep = true;
    			unregister_code(KC_W);
                register_code(KC_S);
            } else {
    			skeep = false;
                unregister_code(KC_S);
    			if (wkeep) {
    				register_code(KC_W);
    			}
            }
            break;
    
        case QK_KB_3:
            if (record->event.pressed) {
    			dkeep = true;
    			unregister_code(KC_A);
                register_code(KC_D);
            } else {
    			dkeep = false;
                unregister_code(KC_D);
    			if (akeep) {
    				register_code(KC_A);
    			}
            }
            break;
    
    
        }
        return true;
    };

    下記部分はキルスイッチの判定に用いる変数を定義しています。

    true, falseの二値の変数でW,A,S,Dをそれぞれを押しているかどうかを判定します。

    static bool wkeep = false;
    static bool akeep = false;
    static bool skeep = false;
    static bool dkeep = false;

    この中に記述することでカスタムキーコードを設定することができます。

    どのキーを押したときに、どういった処理をするか入力をするか記述します。

    bool process_record_user(uint16_t keycode, keyrecord_t *record) {
        switch (keycode) {
    
    ・・・
    
        }
        return true;
    };

    これがキルスイッチの部分となります。

    QK_KB_0はあらかじめqmkで設定されているカスタムキーコード名で、QK_KB_[数字]のキーコードはremap等で自由に出し入れすることができます。

    case QK_KB_0: でキーコードQK_KB_0を押したときにどうするか

    if (record->event.pressed) {押したときにどうするか} else {離したときどうするか}

        case QK_KB_0:
    //キーを押したときの処理
            if (record->event.pressed) {
    			wkeep = true;    //←wを押しているときにwkeepはtrue
    			unregister_code(KC_S);    //←sの入力を強制オフ
                register_code(KC_W);    //←wをオン
    //キーを離したときの処理
            } else {
    			wkeep = false;    //←wを離しているときにwkeepはfalse
                unregister_code(KC_W);    //←wをオフ
    			if (skeep) {    //←もしsが押しっぱなしだったら
    				register_code(KC_S);    //←sをオン
    			}
            }
            break;

    ここではwを押したときにsの入力を強制的にオフにする処理が必要です。

    またwを離したときに、sが押しっぱなしで会った時には強制的にオフにしたsの入力を再度オンにすることが必要です。

     

    あとはキーマップに作成したキルスイッチ用キーコードをWASDの位置にキーバインドすれば完了です。

    [0] = LAYOUT(
      KC_0, KC_1, KC_2, KC_3, KC_4, KC_5,
      KC_TAB, KC_Q, QK_KB_0, KC_E, KC_R, KC_T,
      KC_J,  QK_KB_1, QK_KB_2, QK_KB_3, KC_F, KC_G,KC_H,
      KC_LSFT, KC_Z,    KC_X, KC_C, KC_V, KC_B,
      KC_LCTL, 		    KC_ESC, KC_LALT, KC_SPC, KC_N
      ),

    remapで入れ替えたりするためにはremap用のjsonファイルに設定する必要があります。

    QK_KB_Xだと名前がわかりにくいので名前を付けます。

    するとremapのfunctionのvia user keyに変更した名前が反映されます。

      {
        "name": "nitingale_lit",
        "vendorId": "0x0121",
        "productId": "0x0012",
        "lighting": "none",
        "matrix": { "rows": 5, "cols": 7},
      "customKeycodes": [ 
    {		"name": "WkS", "title": "press W + release S", "shortName": "WkS"},
    {		"name": "AkD", "title": "press A + release D", "shortName": "AkD"},
    {		"name": "SkW", "title": "press S + release W", "shortName": "SkW"},
    {		"name": "DkA", "title": "press D + release A", "shortName": "DkA"}
    	],
        "layouts": {
          "keymap": [
    [		"0,0","0,1","0,2","0,3","0,4","0,5"	],
    [		{"w":1.5},"1,0","1,1","1,2","1,3","1,4","1,5"	],
    [		{"w":1.75},"2,0","2,1","2,2","2,3","2,4","2,5","2,6"	],
    [		{"w":2},"3,0","3,1",{"x":0.5},"3,3","3,4","3,5","3,6"	],
    [		{"w":1.25},"4,0",{"x":2.5},"4,3","4,4","4,5","4,6"	]
    ]
        }
        }

    おわり

    常に理論値で減速せずに切り返しをするのだ


  • [マウス]Nitro Factory-devices nTechFit vg-a1 レビュー

    Nitro Factry-devicesから発売されているゲーミングマウスLogicool pro X向けのアフターパーツ「nTechFit vg-a1」を紹介します。

    nTechFit vg-a1

    内容物は本体と粘着シールです

    外観はこんな感じ

    感触はカッチカチで固く、表面はざらざらしているながらもかなり滑らかです。

    nitroさんのツイッター上で製造の様子が公開されていますので見てみると面白いと思います。

    両面テープを貼り付けてマウスに装着します。

    テープ込みで重さは2.46gでした。マウスのバランスは変化しますが重さ自体は使用するソール面積で前後するような範囲であり軽量です。

    貼り付ける際はフロント側から沿わせていき、ぴったりはまらせるのが良いと思いました。

    当然ぴったりの位置でないとくっつけることはできてもカタカタ動くので、位置を変えたりほかのマウスにつけることは、間を埋めるようなものを使用しない限りぼくはおすすめはできません。

    深めに持てば小指を突っ立てるように、浅めに持てば自然に小指を曲げてホールドする感じかしら。

    pro X形状は小指は添えるだけになりがちだった点が、小指からも右サイドをホールドできます。

    形状の変化としては左右非対称系やNP-01系の感じではなく、G303やG303SHのような印象を受けました。ビクトリー持ち?を意識しているそうです。

    Steelseries Sensei系のようなくびれが施されることで逆テーパーなくぼみに小指がフィットします。

    G303やG303SHは親指や薬指も逆テーパーが強くかなり癖の強い形状と思っています。vg-a1は小指だけG303系のような印象を受け、小指でマウスを引き付ける用にグリップしながらも他の指はのっぺりとしたpro X形状をグリップできると感じました。わしづかみしやすくなった印象です。


    しばらく使ってたんですが剝がしてみました。べったり接着でなく3点でくっついていたため剥がしやすくて糊も残らずよいと思いました。

    剥がすとpro X君はやはり小指が手持無沙汰なのですがグリップテープを張ると大きくなりすぎるんですよね。pro X持つと小指が遊んでしまうという人にもお勧めできます。

    おわり

    現時点でMM720的なものやハイハンプなものが他に発表されています。幅が広がり楽しみですね。形状をカスタムできるものが市販されるというのはすごい楽しいですね。

    クオリティもすごくてすごい。

    販売ページこちら

    【nTechFit】VG-a1
    ▶Other shops・PC one's(WEST JP-関西)・Amazon.co.jp(JP)・Lethal Gaming Gear(US)・JP Gaming(US)・Max Gaming(EU) ・Aus modshop(AUS)…

     

    個人でもこういった製品に触発されて自分用にカスタムパーツを作ってみたりする動きが増えるといいですよね。おゆまるとかグリップテープ盛ったりもありましたし。個人的にはハーフセラ造形+グリップテープ表面保護の組み合わせをお勧めしています。軽くて硬くいカスタムパーツが作れます。

    なんか特殊な持ち方として1-3-1持ちの人向けに持ち上げやすい小指フックや2-2-1持ちの人向けの人差し指フックとかあると面白いなと思ったりしていますがこれはどちらかというとsospacer的な方向かしら。

    前の記事:マイクロスイッチテスターを作る


  • 平滑型のマウスパッドを作る②#CRAFTMOUSEPAD

    artisanのtaharaさんが#craftmousepadという企画を行っていまして、そこでartisanで使用しているベースを提供いただきました。#craftmousepadで検索すると多くの人の作例を見ることができて勉強になります。

    平滑型のゲーミングマウスパッドを作ってみる

    自作マウスパッドに関して前回試しに作ってみて感触がいいようなどうだろうという感じで終わりました。

    今回はartisanさんのベースを使用して#CRAFTNOUSEPADしようと思います。

    ベース含めて部材を一新して制作し、私の中で割と好感触なマウスパッドを作ることができました。

    平滑型マウスパッド

    何の話かというのは前回の記事を見てほしいのですが、今まで触れてきたソフトパッドには不快な沈み込みが存在しそのために布より弱いと感じながらも不快さの無さからハードパッドを愛用しています。(それだけではないですが)

    その不快さを取り去り気持ちよく布パッドを使いたいという試みです。

    想像の中ではそのために必要なものとして、沈み込みのいいところだけを取り出すために上側は固く、下側に行くにつれて柔らかくなるような グラデーション構成のベースを想像しましたがそんなものは売っていないので布とベースの間に沈み込みの平滑化を行う層を挟みむという構造で達成できないかと取り組んでいます。前回まではカーボンファイバーやプラ板、ビニールなどを使用しています。

    artisan・ベース

    ベースは提供いただいたartisanさんのものを用います。今までのartisanのPORONベースと新しい高弾性オレンジラバーをいただきました。

    数年前PORONをベースにマウスパッドを作った時には、10cm幅のPORONを並べて貼り付けていました。

    マウスパッドサイズのものはなかなか売っていないですしサイズのあるスポンジはスカスカで沈み込みに対して戻りが遅いものばかりなのでマウスパッド・ベースとして販売されることがあれば非常にうれしいことだと思います。

     

    ・PORONはムラがなく均一な滑りを得られることと沈みこみに対して戻りが早い優秀なベースだと思っています。ベースのとても柔らかいマウスパッドでまともなものはartisanのxsoftしかないという認識です。

     

    ・新しい高弾性オレンジラバーは分厚いスポンジゴムになっています。まるでゴムのようでありながらきめの細かい発泡でスポンジでもあるといった風で、今まで全く想像したことのない新しい感覚でした。

    ゴムとスポンジのいいところを足し算したような素材と感じ非常に面白いです。

    実際にartisanでマウスパッドとして販売されるのが楽しみです。

    アムンゼン・布地

    今回大塚屋というところで色々買ってみました。どのお店がいいのかも何もわからないので、Twitter上の#CRAFTMOUSEPAD情報なども参考にしながら布探しは続けていきます。

    artisanは特注という話は有名ですし市販品でどこまでできるのだろうかという風に考えてしまうところもありますが。

    今回採用したのは普通のアムンゼン生地です。ゲーミングマウスパッドとして売られているものは固めのものが多いですが、これはアムンゼンの中では比較的柔らかいと思います。その分耐久性が低かったりするのだろうか。

    触ってみて感じたのは、いろいろ採用されているしアムンゼン生地が優秀であるというよりアムンゼンが最も無難にどれもマウスパッドとして使いやすいんじゃないかなと思いました。

    グラスファイバークロス・中間層

    色々とネットショップを漁り使えるかもと思ったら購入しを繰り返し、使い道のない中間層候補を積み上げているわけですが、今回使用するのは耐熱グラスファイバークロスです。

    これが最適とは思いませんが、今まで触ってきた中では固すぎず柔らかすぎず厚すぎず

    スポンジに沈み込ませつつ、張りがあり沈み込みを制御してくれそうです。

    制作

    実際に載せてみたところ、コンセプト的にも感触的にもPORONの方があっていると感じたため今回はPORONベースを使用します。

    制作の様子はとりあえず一回目ということもありあまり凝っていません様子見が多いですので誰かの参考にはならなさそう。

    前準備として布地と中間層をカーペットの下に敷いて数日、しわを伸ばしておきました。

     

    poronベースにスプレーのりを吹きかけます。55番がおすすめされていましたが家にあったので3M スプレーのり 77を使用しました。

    コロコロして中間層を貼り付けます。PORONはがそうとするとすぐボロボロになるので一発で決めます。

    スプレーのりを吹き付けます。

    布地を貼り付けます。コロコロします。

    今思うとコロコロしただけなのでここでもっとしっかり圧着したほうが良かったかもしれません。

    剥がれ防止に接着剤を際に塗ってみました。でもこれ中間層と布地の間は剥がれ防止されてないので何ともですね

    端処理どうしようかなと思ったのですが一点ものだし引っかからない工夫をしようと思いました。

    布地を若干残してカットします。

    布地を貼り付ける前に中間層グラスファイバークロスをカットしてないのできれいに切れません。切っておけばよかったですね

    布地に接着剤を塗り側面に張り付けます。

    今回適当にベタ塗しましたが引っかからなければよいので貼り付けるというより

    マウスパッドを置いたとき余った部分が下側に向けばいいだけなので際に接着剤を塗り癖をつけることを念頭に置けばよかったかも。

    マステで固定して待ち

    見た目は汚いものですが機能的にはステッチ加工の上位互換ができました。

    こういう事は他の方もやっていたので常套手段でしょうか。

    ステッチは布より低ければマウス可動域は確保できますが腕やケーブルは触れるのでこの方が良いですね。

    完成です

    感想

    どれも手探りでの作業だったのでまずは反省点だらけですね。端的に言ってクオリティ最悪です、見た目あまり気にしないのでいいのですが。

    若干逆巻くように持ち上げたところでしわのように跡ができてしまいました。はがれやすくなっているのは圧着が足りなかったせいなのか、もっと密着性が良く柔らかい接着剤が必要なのか、伸縮しない中間層があることが原因なのか

    端処理はまあ非常に汚いので次やるときはピシッとさせたいですしほつれも出さないようにします。

    マウスパッドづくりは知らないことだらけなので途方に暮れながらも楽しいですね。

    LEKさんなど個人ではいろいろ研究されているのは拝見していましたが、自作マウスパッド界隈として広さは無いので開拓していくだけでも大変ですね、、、私こそ何もしていない中の一人なのですけども。

    次作ろうと思うと布も、中間層も、ベースも接着剤や加工も、どれもまだまだ調べて考えてしないといけないですね

     

    使用感としては、かなり好感触です。前回もとっかかりはつかめましたが、プラ板は固すぎ厚すぎでしたがそれと比べると実用できる出来と思います。

    写真撮ってもわかりにくいのでないですが、指で押してみると中間層のおかげで張りのある感触です。それもしっかり沈み込みもありつつで布パッドとしての特性も死んでいません。

    逆に感触は硬質になっていると言え、沈み込みだけに影響を与えるのでなく表面の滑走特性自体変化している部分はあります。

    通常のソフトパッドは沈み込みに対してマウスが不安定なのだなと確かに気づきました。大げさに言うとソールが沈み込み、そこから力を加えたときにムニッといいう感触があります。

    ソールと接触面が1:1でなく無数の面と面が接触している感じでそれぞれ局所的に力が加わり不安定です。平滑型のマウスパッドは表面に張りがあるため、過度な沈み込みを抑えるだけでなくソールと接触面が1:1です。よくわかりませんがそんな印象です。

    例えると砂浜を歩くのと、トランポリンの上を歩くような違いを感じました。マウスを動かしたとき非常に安定していると感じます。 ハードパッドは地べたを歩いている感じでしょうか。

     

    不快さに関しては0とは言いませんが大分軽減されていると思います。この不快さ自体が私的なもので特殊なこだわりでしかないので細かく言いませんがが、、、

    いつもは布を使い始めて数分と立たずに戻してしまうのですが、これを数日使い続けているだけでもかなり好感触であるのだとおもいます。

     

    そのほかよく気にされるソールとの擦れ等も、沈み込みすぎないため比較的気にせずに済みます。割と重要かもしれない。

    おわり

    まったくもってべた褒めできるものではありませんが自分の中で大きく収穫がありました。

    ほかの形式もあるかもしれませんが、やはり私はコンセプトとしてはこういった趣向でマウスパッドを作っていきたいなと思います。

    布パッドも選択肢の土俵に立たせたいところです。

    ベースの提供と自作マウスパッド活性化していただいたartisanさんtaharaさんに感謝です。

    関連:平滑型のゲーミングマウスパッドを作ってみる

    前回:ゲーミングマウスパッド収納バインダーを作る