- Home
- 一覧
- 
USBハブは接続機器の入力遅延を引き起こすか?USBハブにマウス等のゲーミングデバイスを接続したときに、直接USBポートに接続するより良くないのではないか?と考えたことはあるでしょうか。 特に違和感を感じたことがないからとUSBハブを使用している人も、良くないと聞いたから良くなさそうだからと使用していない人も、特に何も気にしたことがない人もいると思います。 USBポートをデスク上に引っ張ってこれるのは単純に便利です。 複数マウスを使用する場合いちいち接続しなおすのもめんどくさいです。 でも接続していいのか?ちょっと気になったりもします。 実際にUSBハブはどうなのか?を雑検証してみたいと思います。 検証方法詳細については下記の記事を参照してみてください。 そこから派生しているというかめんどくさくて放置していた雑ネタです。  前回はマウスとpromicro(qmkによる自作キーボード的なもの)を接続してマウスの遅延を検証する方法を紹介しました。 今回はそれを2つ用意してUSBに直接接続したりハブにつないだりして比較してみます。 仕組みとしてはスイッチを押すと左クリックを入力する装置となっています。 それらが同じスイッチに接続されているため、2つの機器が同時にクリックを行うことができます。 カチカチしているのをdualモードのmousetesterのインターバルグラフで観測し、その入力タイミングポーリングタイミングで比較を行います。 使用するUSBハブはなんかエレコムのやつです。特に選定理由に意味はなく部屋にあったから。またほかのUSBハブを所有していないため、他製品では結果が異なることがあります。 条件①両方ともUSBに直接接続し比較を行います。 刺し直したり、ポートを交換したりしてまあ有意な差がないことを確かめます。 
 ②片方をUSBハブに接続してUSB接続と比較を行います。 こちらも両者交換したり刺し直したりします。この時ハブには他に何も接続していません。 
 ③2番にプラスして、ハブにトラックボールを接続しボールをころころしながら測ったりウェブカメラを接続し映像を送信しながら測ったりしました。トラボとウェブカメなのは手の届くところに転がってたからです。 その他は試したいないためどうなるかわかりません 結果結果のデバイス1(青)とデバイス2(緑)の関係は統一されています。 USB接続同士     どれがどういった条件かはまあいいでしょう(雑)。 とりあえずUSB接続同士だとポーリング間隔に~0.05ms程度私の環境だとありました、ということにします。 ②USB vs USBハブ(promicroのみ)    どれもUSBハブが0.1ms程度遅れていることがわかります。 ③USB vs USBハブ(+トラボ、ウェブカメ)   名前変え忘れてますがまあトラボとウェブカメがつながってます。 ハブにほかの機器を接続してもpromicroのみでも入力遅延の様子は変わらず0.1ms程度であることがわかります。 まとめ今回の検証においては、USBハブは0.05ms程度USB接続よりも入力遅延があることがわかりました。 またUSBハブにほかの機器を接続してもその結果は変わりませんでした。 まあUSBのデータ転送速度を考えればいくつつないでも送信できるかと思えます。差が0.05msということは単純にワンテンポポーリングが遅れているとかではなさそうです。 通信方式がHIDデバイスとは何か違ったりするのでしょうか。(何も知識がないです。) 単純に結果だけを見ると、 USBハブに遅延はない!という主張や、USBハブは遅延するから使うな!という主張はどちらも誤りであるように思います。 遅延は確かにあるため直接USB接続するに越したことないが、0.05ms程度であるため神経質になるほどではない(無線マウスの遅延のほうがはるかに大きいため無線マウス使用時は無視できる)。と適当にまとめます。 元も子もないっちゃ元も子もないです。 バスパワーの不安定さとかUSB多すぎとかのほうが気にしたいところ。 
 今回の検証はすべてが適当であり、鵜吞みにされると責任持てないしそれホントかよと言われたらいやあ……であります。気になったらやり方は全部投げられているのでやってみてください。 検証したのはクリック(on,offのみの2値単発信号)でありマウスセンサーとか継続してアナログな感じのデータ送信したときどうか?はこれだとわかりませんし。変わらんやろと勝手に思ってるけど。 終始適当でしたがそんな時間かけてやろうとも思えなかったのでとりあえず雑に検証してみました。 そのうち何か詳しく検証する機会があったらこれもやろうとは思いますが。 私はUSBハブに1msとか遅延があるのかな?と勝手に思っていたので収穫です。(いままでハブにマウスをつなぐ機会がなかったので放置してました) 入力遅延の検証関連:[マウス]クリックとセンサーの入力遅延を測定してみる promicroで検証関連:[計算機]VALORANTの感度と視野角の仕様を調べてみた 
 
- 
HWiNFOとRTSSでPCのベンチマークを記録してGNU Octaveからグラフを出力してみるゲーミングPCを買ったので紹介します。 せっかくなのでベンチマークを行ってゲーム性能を見たりしたいです。 ベンチマークの結果をGNU Octaveで出力してみます。 測定に使用したMSI AfterburnerとRTSSとHWiNFOを紹介します。 PC買った今までcore i5 8400にGTX1060の10万程度のPCを使っていましたがこの度ちょっといいやつに買い換えました。 なんとなくPCでも買うかという気分だったので。 という記録を残しておきます。どうせまた先5年とか買い換えないんだから 61800円。i5 8400が微妙でCPUはi7にしとこうと。 29980円。Z790で一番安いけど3万なら悪くないと思いたい。 99800円。3080これぐらいしか売ってなかった品薄。流行ゲーム軽いのばかりだし240HzモニターかVR無かったらオーバースペック感ある。 14100円。一か月くらい待ったらgskillsとかかなり安くなってたなど。 
 DDR5言われてるほど高くないと思いましたがDDR5対応のM/Bがとても高かったのでDDR4。13480円と8080円。KIOXIA安い。 17980円。750Wでいいと思ったけど値段変わらんかったので850W。superflowerは安くていいらしい。 13730円。ドライブ付くやつで調べてなんか出てきたやつ。ドライブが下につくのいいね。 16800円。CPUクーラー品薄すぎる。これぐらいしかなかった grease シミオシ OC Master 666円。なんかいいらしいgreaseでどれくらい変わるもんなのかしら。 15200円。今見たら安くなってるなあ。11は慣れ以前に使いづらいUIである。 
 できるだけ安いものを選びましたがそれでも30万円。高い。 ゲームとか重い作業とかしないんだったら8400に1060の旧PCでも何ら不満ないですからこりゃ仕事用かゲーム用かって感じがします。 最新FPSでも大抵1060で60FPSは出ますしね。快適かどうかは置いといて。 VRやらないんだったらいよいよ3080は使いこなせてない感があるし144から240とか360とかに買い換えたほうがいいなと思います。散財の連鎖です。 今見るといろいろ安くなってるし4070ti出てるし時期じゃなかった感がある。間が悪い。 外付けドライブ・内蔵ドライブの話外付けドライブをすっと使用してきましたがあまり好ましくなかったです。 バスパワーは安定感にかけて不安だし、セルフパワーにするとUSBケーブルが2本生える羽目に。 ドライブ用スペースをデスクに用意したりしないのであればCDやBlu-ray使う人は内蔵にした方がいいと思います。 というか今回PC買うかという気分になった半分ぐらいは外付けドライブ怠いなというところから来てる気もします。 買ったのは7kの安いやつですが、内蔵ドライブもスペックとか考え始めるとパイオニアのやつとかこだわったりするんでしょうか、、、何が違うのか気になったりはします。 RTSSとHWiNFOのセットアップFPS測定用とOSD用にMSI AfterburnerとRTSSをインストールします。 MSI Afterburner 4.6.5 (ベータ 4) ダウンロード-Guru3D.com MSI AfterburnerはRTSSを一緒にインストールします。 MSI Afterburnerを起動し設定(歯車)を開きます。   全般->Windowsと一緒に起動、最小化で起動にチェックを入れます。 オンスクリーンディスプレイ->ハードウェアのポーリング間隔で統計の更新間隔を入力します。ベンチマーク記録するときは間隔早めのほうがよさそう(HWiNFOと揃える)。 グラフ->フレームレートにチェック オンスクリーンディスプレイでの表示にもチェックを入れます。 設定を適用しMSI Afterburnerは最小化してしまいます。 
 RTSSを開きます。  Start with Windowsをオンにします。 Show On-Screen Displayをオンにします。 RTSSを最小化してしまいます。 これでゲーム画面にFPSが表示されるようになります。Geforce experienceとかゲームプラットフォームでオンにしてる?じゃあいらんな、、、 
 温度等測定用にHWiNFOをインストールします。 センサーのみ使用するのでセンサーのみ表示にチェックを入れます。  センサー画面で項目設定を行えます。ベンチマークで測定したい項目を残します。 いらない項目を監視を無効にし消す 表示したいけどデータは取らなくていいものをログ無効にする   歯車から設定を行います。 レイアウト->センサー画面に表示する項目を整理できます(消した項目を戻したり)。 カスタマイズ->項目名を変更したりできます。 OSD->RTSSで一緒に表示したいものを設定できます。 センサー設定->ポーリング間隔を設定します。 主な設定->自動起動と起動時最小化の設定を行います。 
 以上で設定完了です。統計の取得とゲーム画面への統計表示ができました。 設定は適当なので参考にならんかも。自動起動最小化しとくだけ  を押してログを開始し、ベンチマークを開始します。 ベンチマーク終了したらログを停止しcsvファイルが保存されます。 csvをじゃかじゃか保存しましょう。 GNU Octaveでcsvファイルを読み込んでグラフを出力するoctaveを使ったのは調べてたら出てきたからというだけですが、きっとpythonとか使えるようになっておいた方が役に立つのだろうなと思ったりします。matlabなんて一生使うことないだろうし。 ダウンロードしインストールします。 matlabのコピーソフトらしいのでmatlabのコマンドが基本らしいです。 困ったらoctaveでなくてmatlabとつけて検索するか、matlabのサイトの検索欄で検索します。 octaveを起動しcsvのlogdataが保存されている場所に適当に.mファイルを保存してグラフを描くように書いていきます。  エディタのところにいろいろ書き込んでいきます。 左に変数に入力されたり計算された値が表示されています。変数名をクリックすると変数エディタのタブに詳細が表示されます。 コマンドウィンドウはコマンドウィンドウです。実行結果やエラーが表示されます。直接コマンドを打ち込むことができます。 使い方はそんな感じです。グラフ出しただけでそれ以外わかってません。なので対象はこれやる前の私みたいななんもわからん人と忘れたころに読み返してる私です。 
 グラフ出すやつ。 まずHWiNFOで出力されたcsvファイルの形式ですが、1列ごとに測定した項目が並んでいます。  ポーリングを0.1秒に設定しましたが実際はずれながら計測されているのがわかります。またパソコン時間での0,1秒なので使用タイマーによって実時間が変動したりします。 そこらへんも厳密に反映するべきなのでしょうがめんどくさいので0.1秒間隔である、としました。(文字列読み込むのめんどくさい) これらのほしい項目を変数に突っ込んでグラフに出力します。 %がコメントアウトです。デフォルト ctrl+r <-> ctrl+shift+r です。 図を出力する部分を関数化しているので、一度関数の下から見たほうがわかりやすいかもしれません。 forの中にforが入りまくるのでぱっと見よくわからんですね また関数化すると変数が関数の外に持ち出せず変数エディタであとから見れずデバッグしにくいので最後に関数化します。 %前回実行時の計算データを消しておきます。 %行列のサイズが固定されたりしてしまった。 clear all %前回実行時の出力グラフを消しておきます。 close all %プロットするコードを関数化しています。 %繰り返し実行するため function plotgraph(fname,lcolor,colnum,colname,line,xratio) %読み込んだファイル数 %length:行列の長さ(ここではfnameにいくつのcsvファイルを読み込んだか) flength=length(fname); %;をつけるとコマンドラインに結果を表示されません(実行が早い) %;をつけなければ計算結果が表示されて変数の中身が確認できます。 %ファイル数だけ繰り返します for i=1:flength %ログファイルごとに行列サイズ微妙に差が出るので繰り返しごとに行列をクリアする clear A B C %csvの中身を読み込んでいきます。 %.name:ファイル情報の「ファイル名」を指定する %dlmread:ファイル内の行列を読み込み(ここではファイル名という文字列) %Aにファイル名を読み込みます。 A = dlmread( fname(i).name ); %matlabの配列は 1 始まり %必要なログデータの列をそれぞれ抜き出す(fps,cputemp,gputemp,・・・みたいな行列) %:でその行や列全部を選択 for j=1:length( colnum ) B(:,j) = A(2:end-2,colnum(j):colnum(j)); end %ログデータの行数がいくつか入れる rownum=length(B); %x軸ずれたとき用 for h=1:rownum x(h)=h.*xratio; end %開始オフセットを求める for j=1 : rownum if B(j,1) > 200 start = j; break endif end for j=start : rownum if B(j,1) < 100 start2 = j; break endif end %fpsが200以上出た後にfpsが100以下に下がったところを開始地点とする %終了オフセットを求める for j=1 : rownum +1 if B(rownum -j,1) >61 stop = rownum -j; break endif end %fpsが最後に60以上出ていたところを終了地点とする %必要なベンチマーク実行中の行を抜き出す(開始~終了まで) C = B(start2:stop,:); %項目の数だけグラフを表示する for j=1:length( colnum ) figure(j) %軸ラベル ylabel( colname(j) ) xlabel('0.1s') %figureにグラフを表示 graph=plot(x(1:stop-start2+1), C(:,j) ); %線の色を変える(ここではベンチマーク条件ごとに色を変えている) set(graph,'Color',lcolor) %線の種類を変える set(graph,'LineStyle',line) %グラフを上書き可能にする(hold offだと毎回消えてしまう) hold on end %plot終わり end %ファイル数分繰り返し終わり end %関数終わり %拡張子含む対象ファイル名のリストを作成 %dir:「ファイルの情報」を読み込みます fname_1 = dir('01-ff14-*.csv'); fname_2 = dir('02-ff14-*.csv'); fname_3 = dir('03-ff14-*.csv'); fname_4 = dir('04-ff14-*.csv'); fname_5 = dir('05-ff14-*.csv'); fname_6 = dir('06-ff14-*.csv'); fname_7 = dir('07-ff14-*.csv'); %読み込みたい項目列の配列を作る(csvの22列目のfps値を読み込む等) colnum=[ 22 10 11 12 13 14]; colname={'fps' ,'cpuTemp' ,'cpuPower' ,'gpuTemp' , 'gpuPower' , 'gpuClock'}; %条件ごとに関数呼び出し %条件ごとに色を変える plotgraph(fname_1,'b',colnum,colname,":",1) plotgraph(fname_2,'r',colnum,colname,":",1) plotgraph(fname_3,'g',colnum,colname,":",1) plotgraph(fname_4,'m',colnum,colname,":",1) plotgraph(fname_5,'k',colnum,colname,":",1) plotgraph(fname_6,'c',colnum,colname,":",1) plotgraph(fname_7,'y',colnum,colname,":",1) hold offなんか見づらいのでコメントなしも載せときます clear all close all function plotgraph(fname,lcolor,colnum,colname,line,xratio) flength=length(fname); for i=1:flength clear A B C A = dlmread( fname(i).name ); for j=1:length( colnum ) B(:,j) = A(2:end-2,colnum(j):colnum(j)); end rownum=length(B); for h=1:rownum x(h)=h.*xratio; end for j=1 : rownum if B(j,1) > 100 start = j; break endif end for j=start : rownum if B(j,1) > 100 start2 = j; break endif end for j=1 : rownum +1 if B(rownum -j,1) >61 stop = rownum -j; break endif end C = B(start2:stop,:); for j=1:length( colnum ) figure(j) ylabel( colname(j) ) xlabel('0.1s') graph=plot(x(1:stop-start2+1), C(:,j) ); set(graph,'Color',lcolor) set(graph,'LineStyle',line) hold on end end end fname_1 = dir('01-ff14-*.csv'); fname_2 = dir('02-ff14-*.csv'); fname_3 = dir('03-ff14-*.csv'); fname_4 = dir('04-ff14-*.csv'); fname_5 = dir('05-ff14-*.csv'); fname_6 = dir('06-ff14-*.csv'); fname_7 = dir('07-ff14-*.csv'); colnum=[ 22 10 11 12 13 14]; colname={'fps' ,'cpuTemp' ,'cpuPower' ,'gpuTemp' , 'gpuPower' , 'gpuClock'}; plotgraph(fname_1,'b',colnum,colname,":",1) plotgraph(fname_2,'r',colnum,colname,":",1) plotgraph(fname_3,'g',colnum,colname,":",1) plotgraph(fname_4,'m',colnum,colname,":",1) plotgraph(fname_5,'k',colnum,colname,":",1) plotgraph(fname_6,'c',colnum,colname,":",1) plotgraph(fname_7,'y',colnum,colname,":",1) hold off実行してみます。グラフが出てきました(これは2条件のみですが)    FPS値のグラフをコマンドラインに軸の範囲等打ち込んで成形してみました。 おまけ ベンチマーク結果こちらRTX3080の電力制限をかけてベンチマークを回した結果です。 横軸が電力制限、縦軸がscore fpsです。(fps値も比較しようとしましたがscoreとほぼ一致しているのを見て途中でやめました)  ゲーム中ずっと300W食われ続けるのもあほくさいし80%ぐらいに制限かけてもいいのかなと思います。scoreやclockの降下幅は5%程度ですし、どうせ最近の軽いゲームだとfpsは十分出ますから。 CPU13700KFは電力制限するまでもなく100W程度しかゲーム中消費せず、PL1をそれ以上に設定しておくだけでよさそうです。またFPS値はHTを切ったほうが明らかに高く出ました。 おわりこれでベンチマークの結果を比較することができるようになりました。 やってることは所詮excelの自動化ですがexcelは有料で高いのだなあ。 こんなことしなくてももっと簡単な方法もありそうだけどどうなんでしょうか 
 
- 
[デスク]FPS向けのゲーミングアームレストを作るSteelcase のオフィスチェア Leap v2 に対応したゲーミングアームレストを3DPで作りました。 使われないがちなアームレストをカスタムし、有効活用することができるようになりました。 ゲーミングアームレストってなんだよいわゆるゲーミングチェアってやつはごっついアームレストがついています。 そのアームレストに腕を載せ、ゲームプレイ中に有効活用している人はどれだけいるのでしょうか。 後傾姿勢でプレイする方やハイセンシの方はアームレストに腕を載せているかもしれません。 しかしそうでない人は、アームレストを下げ、腕をデスク・マウスパッドに乗せるスタイルが一般的なのではないでしょうか。 つまりゲーミングチェアはゲーミングを謳っているにもかかわらず、ゲームに不適なものを搭載してしまっているということです。  このスタイルで問題はないのですが、ベストでもないと考えます。というのが今回の話題です。 1つ目に、普段使いとのギャップです。 ゲームプレイ時に腕を大きく載せるということは普段使いするときより体を前に乗り出して座るということです。マウスやキーボードの位置は奥に置きなおさなくてはなりませんし、モニターに近づきます(モニターが近いのが良いという人もいるでしょうけど)。 2つ目に、デスク・マウスパッドの奥行きです。 乗り出している分、マウスパッドとデスクの奥側にマウスを位置取ることになります。これはそうでないときと比べて奥行きが10~20センチ多く必要になります。 マウスパッドがそれだけ大きなものが必要になりますし、狭いデスクではぎりぎりに、広いデスクでは奥のスペースを有効活用できなくなります。 つまりマウスを滑らせない手前のスペース、腕載せてる部分無駄じゃんということです。 3つ目に、せっかくついているアームレストをゲームプレイ時にどけるために下げなくてはならないことです。 ゲーム時には下げ、普段使いでは上げる方もいるのではないでしょうか。めんどくさいです。 
 しかし、アームレストをデスクの高さまで上げると、ゲームがしづらいという問題が発生します。  というのは、腕が載せられるのは良いのですが肘まで乗ってしまうということが問題となります。 肘がアームレストに乗ると、非常にエイムし辛く感じます。ひじの骨のあたりがいづいですよね。 アームレストをゲームプレイで使用しない主な理由がこれだと思っています。  よってこのような形状にすることで肘を開放してやればよいですよねという安直な考えを3DPで印刷して実現してみました。 ゲーミングアームレスト以前 椅子キ を制作したときのアームレストモデルを流用し適当に作ってみました。 [自キ] えむごっち & panda_micro でキーボードを無線化し椅子キー環境を試作してみた (tsuiha.com) 10センチ程度腕が乗るようになっており、手前側は肘がフリーにできるスペースとなっています。  裏は狭い部分のサポート材を剥がすのに汚くなってしまいましたが、すべすべでPLAこのままでも全然使えそうな質感です。 カッターでバリをとるだけでいい感じ   左手側のキー操作では肘を自由にする意味はないので、椅子キ で制作した傾斜の付いたアームレストをそのまま使います。  いい感じです    
 スチールケース(Steelcase) オフィスチェア Leap リープアームレストを使いながら肘を自由にしエイムのしやすい環境になりました。 またこれによって奥行き45センチのコンパクトなデスクでも狭いと感じることなくマウスを大きく振ることができるようになりました。空間コスパ高いです 普段使いとゲームプレイ時でアームレストをいじる必要がなく、無駄がなくなりました。  おわり今回作ったモデルはgithubに投げてあります。3DP/gaming_armrest at main · Tsuiha/3DP (github.com) 安直な案ではありますがいいものが手に入ったと感じます。 とりあえず思いついたまま実行してみました。またここから理解度を深めステップアップしていけたらよいと思います。 次の記事:省スペースなアングル・スライドPCデスクを自作する 
 
- 
「巻き取り式USBケーブル」でデスク上をスッキリ&取り回し良くデスク上においてキーボードのケーブルは動かさないにしても動かすにしても割と邪魔なものです。 またデスク上をずらしたり、引いたり、押したり、移動させることを考えるとケーブル長には余裕がなければなりません。 すると余っているケーブルはデスク上を占有します。コイルケーブルを利用すればケーブルが暴れることはないですがコイル部分によって動かし方が制限されると感じます。 柔らかいものやコイルケーブル等試してきて、今のところ巻き取り式ケーブルに落ち着いているので、気に入っている製品を紹介します。 使ってる感じデスクまで適当な長さのUSB延長ケーブルで引っ張ってきて、デスク上にリールコードを配置しています。  押したり引いたりしても煩わしくありません。   FPS等のゲームでキーボードと別に左手デバイスを利用する際にも移動しやすいです  良さげなやつ紹介するのはケーブル長70cmのコンパクトな巻き取り式ケーブルです。 コンパクトなものが無かったら巻き取り式も微妙でした。 micro-USBはエレコム、type-cはホワイトナッツのものです。販売元は異なりますがモノとしては同じOEMと思われます。 
 
 直径28mm程度でコンパクトです。  ほかの巻き取り式ケーブルと比較するとサイズの小ささが分かります。 また端子の向きが置いたときに水平で、キーボード等に接続した際にねじれません。  引き出し量が多いと丸まってしまいます。 まだ断線はしていませんが、根元の耐久性が不安に思えるのでシリコン系で補強しようかなと思います。  おわり自作キーボード系などではtrsでもusbでもリール式の使用例は多そう。 デスク系デバイス系の面で見てもすっきりコンパクトに収まり優秀だなと感じます。見た目にこだわる人には向いてないかもしれません。 この70cmのタイプの製品が探した中では最も小さくて端子の向きもよく、根元がやや不安ですがよいと思っています。 
 
- 
intime 碧 Ti3 イヤホンの断線修理する根元が断線した intime 碧 Ti3を入手したので修理しようと思います 最初の筐体を開けるところでだいぶ手間取ってしまいました。 一般的にどう開けるのがよいか分からなかったのでペンチでつかんだりして傷ついてしまった。 最終的にニッパーでつかんで開けました。割と楽に開いたので良さげ。  分解しました。根元が断線してるので何センチか詰めます。 ケーブルごと交換しようかなとも思ったけどとりあえずこのまま使ってみようかしら。  詰めたケーブルをはんだ付けしました。 はんだは普通のやつですがオーディオ用とどれくらい差があるのでしょうか。 リッツ線は370度で予備はんだと皮膜溶かして320度ではんだ付けしました。温度これぐらいでいいかしら? はんだ付けは熱を避けて低温で行うよりもやや高めでさっとやるほうが簡単だと感じます。うまい人は低温でうまくやるのでしょうね。  接着剤で固定して元に戻します。  傷がついてしまいましたが修理完了です。 数年前にとても評価されていたようで気になっていたのですが、とてもよい音が鳴りますね。 修理に特別費用も掛からずお得感あります  
 
 
  
  
  
  






![[BF6]視野角と感度の設定について](https://tsuiha.com/wp-content/uploads/2025/10/image-36-3.jpg)
![[自キ]KS-33B Gateron LowProfile 3.0スイッチに希望はあるのか](https://tsuiha.com/wp-content/uploads/2025/09/IMG_3528.jpg)
![[自キ]チルトテントアルミケースな左手デバイス作る③修正](https://tsuiha.com/wp-content/uploads/2025/09/image-2.png)
![[自キ]チルトテントアルミケースな左手デバイス作る②ケース](https://tsuiha.com/wp-content/uploads/2025/08/image-26.jpg)
![[自キ]チルトテントアルミケースな左手デバイス作る①基板](https://tsuiha.com/wp-content/uploads/2025/08/image-24.jpg)


![[自キ]遊舎工房のレーザー加工サービス利用してみた](https://tsuiha.com/wp-content/uploads/2025/08/image-5-1.jpg)


![[自キ]磁気キーボードを作りたい。6週目](https://tsuiha.com/wp-content/uploads/2025/07/image-2.jpg)

![[自キ]磁気キーボードを作りたい。5週目](https://tsuiha.com/wp-content/uploads/2025/06/image-27.jpg)

![[自キ]磁気キーボードを作りたい。3週目](https://tsuiha.com/wp-content/uploads/2025/05/image-15-1.jpg)
![[自キ]磁気キーボードを作りたい。2週目](https://tsuiha.com/wp-content/uploads/2025/05/image-9.jpg)
![[自キ]磁気キーボードを作りたい。1週目](https://tsuiha.com/wp-content/uploads/2025/04/image-25-1.jpg)
![[自キ]50%オーソリニアのキーボード作った OSPREY59O](https://tsuiha.com/wp-content/uploads/2025/03/IMG_2343.jpg)








![[デスク]VESA拡張してモニターを増設した](https://tsuiha.com/wp-content/uploads/2025/01/IMG_2567.jpg)
![[デスク]充電ケーブルを天板裏に移動してすっきりした](https://tsuiha.com/wp-content/uploads/2025/01/IMG_2565.jpg)

![[自作マウス]マウスシェルモデリング その2](https://tsuiha.com/wp-content/uploads/2024/11/IMG_2288.jpg)

![[イヤホン]moondrop 水月雨 KadenzとKatoの雑話](https://tsuiha.com/wp-content/uploads/2024/11/IMG_2385.jpg)

![[オーディオ]ジェネリックER-4B化モジュールを作る②](https://tsuiha.com/wp-content/uploads/2024/08/er4switch1.jpg)






![[デスク]整理しやすく邪魔にならない天板裏配線](https://tsuiha.com/wp-content/uploads/2024/05/85b45e10dc9fd157c5f37b4c91b0d26e.jpg)