Steam Controller の自動充電:CV を用いたパワートランスファーによる磁気チャージングパックへの給電

2026/07/04 7:39

Steam Controller の自動充電:CV を用いたパワートランスファーによる磁気チャージングパックへの給電

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

このオープンソースアプリケーションは、ウェブカメラと Web 技術のみを用いて Steam Controller を充電用パッドへ自動で誘導し、外部ハードウェアや複雑なドライバーの必要性を排除します。コンピュータビジョンと WebHID API を組み合わせることで、システムはコントローラーに直接通信し、非対称なハプティックパルスによって精密な磁気ドッキングを実行します。重要な点は、「近接クリープモード」を採用しており、デバイスが充電器に近づくと動作を減速させ、衝撃による損傷を防ぐことです。ソフトウェアはリアルタイムでバッテリーデータをインターセプトし、ブラウザインタフェース自体に電圧と充電進行状況を表示します。既存のクリエイティブプロジェクトに触発されたこの解決策は、Chromium ブラウザおよび WebAssembly モジュールを活用することで、オブジェクト回避のような高度なロジックをクライアントサイド全体で実行します。Windows、Mac、Linux すべてで統一ビルドシステム(Nix)経由で互換性を備えおり、開発者からゲーマーまで充電プロセスを簡素化し、日常的なデバイスの保守を簡単かつワンクリック操作に変革するなど、アクセス可能でブラウザネイティブな自動化への重要な転換をもたらします。

本文

Steam Controller 自動充電システム (AutoDock)

光流法を用いたコンピュータービジョンと WebHID テレメトリを活用し、Steam コントローラーを磁気充電パッドに自動的に誘導・ドッキングさせることを目的としたオープンソースのウェブアプリケーションです。

🌟 主な特徴

  • 光学フロー追跡: Overhead カメラを通じて、コントローラーおよび充電パッド上の指定点を OpenCV.js を用いて追跡します。
  • WebHID テレメトリとハプティックナビゲーション: WebHID API を介して Triton コントローラーにネイティブ接続し、入力情報およびレポート ID 67 のテレメトリをストリーミングします。内部のデュアル Linear Resonant Actuators (LRAs) を駆動し、70Hz の非対称なハプティックパルスを発火させます。これによりコントローラーをパッド方向へ誘導します。
  • 近接クリープモード: コントローラーが充電パッドから 150 ピクセル以内になると、ハプティックパルスの周波数を自動的に 50% 減衰させ、穏やかな磁気ドッキングを実現します。
  • バッテリー状態のポーリング: レポート ID 121 (0x79) をインターセプトすることで充電成功を確認し、レポート ID 67 (0x43) を解析してリアルタイムのバッテリー残量および電圧 (mV) を表示します。

🔧 セットアップ

要件

  • Nix パッケージマネージャー: ビルド依存関係として唯一必要です。Windows、Mac、Linux すべてで動作します。
  • WebHID API をサポートする Chromium ベースのブラウザ。
  • デスク上に向けられたダウンワーズ指向のオーバーヘッドウェブカメラ。

インストール方法

ウェブカメラをデスクの真上に取り付け、デスクに向かって指し向けてください。以下のコマンドを単一の実行でプロジェクトを開始します(自動的に依存関係がフェッチされ、WASM モジュールがビルドされます)。

nix-shell --run "npm install && npm run dev"

🎮 使用方法

  1. ウェブカメラをデスクの真上に設置し、デスク側へ向けます。
  2. デスク上に Steam Controller 自動充電用パッド を設置します。
  3. Steam コントローラーをアップライトにしてデスクの上に置きます。
  4. ウェブインターフェースを開き、「Steam コントローラー接続」をクリックして WebHID を介してペアリングします。
  5. 「✨ Auto-Track」ボタンをクリックして自動追跡を起動します。
    • ボタンが有効な状態で点灯中は、ページリロード後にも自動的に追跡が再開されます。
    • 再度クリックすると自動追跡を解除できます。

ナビゲーションについて

コントローラーは、ブラウザ上で動作する Rust/WASM CNN を用いた物体回避機能を組み合わせた Lucas-Kanade 光流法ループにより、パッドに向かって自律的にナビゲートします。

⚠️ 注意: マニュアル追跡も可能です。 好みの方法で、以下の順序でクリックするだけで追跡を開始できます。

  1. パッドをクリック
  2. コントローラーの上部をクリック
  3. コントローラーの下部をクリック

🏗️ アーキテクチャ

  • App.vue
    : カメラストリームの処理、UI のリアクティビティ、PID 制御ループ、および OpenCV.js ベースの Lucas-Kanade 光流法(
    calcOpticalFlowPyrLK
    )のロジックを担当します。
  • steamController.ts
    : WebHID の抽象化クラスです。標準的な API コールを Steam コントローラー固有のバイトペイロード(LRA パルス送信やバッテリーポーリングなど)にマッピングします。
  • objectDetector.ts
    &
    objectWorker.ts
    : 物体検出処理を Web Worker にオフロードすることで、メインの追跡ループを滑らかに保ちます。
  • wasm-object-detect/
    : Rust で実装し WebAssembly にコンパイルされた高速な視覚処理モジュールです。

🙏 謝辞

本プロジェクトに触発を与えてくださった Very Lazy Pixel に心から感謝申し上げます。

📜 ライセンス

本プロジェクトは MIT ライセンスの下でライセンスされています。詳細については

LICENSE
ファイルをご参照ください。

同じ日のほかのニュース

一覧に戻る →

2026/07/04 7:40

巨大な木は問題なく水を上枝に送ることができます。

## Japanese Translation: エクセター大学とカーディフ大学が主導する新研究で、Science誌に発表された内容により、世界最高位の熱帯ティトロカルプ属(Dipterocarp)の樹木は、極めて高い位置での水分輸送課題を完全に補償できることが明らかになった。アジアの雨林を支配し、80 メートルを超える高さまで成長する巨大なティトロカルプ属の木々は、より低い木々に比べて旱魃に対する感受性を示さない。これは進化した水理学的適応によるものである。本研究は、2023 年~2024 年の激しいエルニーニョ現象を背景としてマレーシア・ボルネオで行われたものであり、7 メートルから 71 メートルの幅を持つ樹木が旱魃を通じて幹の成長速度を維持したことが見出された。これは、重力と導管の長さが高大型種における光合成および成長を制限するという長年の信念に挑戦するものである。より高いティトロカルプ属の木々は、地面付近で広く水分を運ぶ導管を持つことと、萎れる前により大きな水ストレスに耐えるように適応した葉を持つことによりこれを実現する。これらの適応は、80 メートル以上高く水を移動させるために必要な極めて低い圧力の下でも液体水の形態を維持することを可能にする。これらの結果は、特にアジアの地上バイオマス炭素の半分を貯蔵するティトロカルプ属森林において重要であり、水理学的システムが弱く高大型種では旱魃による急速な死に瀕するという以前の理論を矛盾させるものである。共同著者であるパウロ・ビッテンコート博士は、これらの希少樹木がマレーシア・ボルネオにおける生態学的中心性であることを強調しているが、研究者らは同様の特性を他の高大型樹種においても検討すべきであると指摘している。研究チームには、マレーシア、イギリス、チェコ共和国、ドイツ、スペイン、ブラジル、アメリカ合衆国の機関が含まれており、資金供与は自然環境研究評議会(NERC)からのものである。今後の研究では、ティトロカルプ属を超えた水理学的システムと旱魃耐性の調査を通じて、全球的な旱魃リスク評価および保全戦略を精査していく予定である。

2026/07/04 7:33

Leanstral 1.5:全データに対する証明の豊富さを実現

## Japanese Translation: Leanstral 1.5 は、60 億のアクティブパラメータと全パラメータとして 1190 億を持ち、競合製品のごく一部のコストで最先端のパフォーマンスを達成する無料の Apache-2.0 ライセンスモデルです。このモデルは miniF2F でサチュレーション(検証セットとテストセットで両方 100%)を達成し、PutnamBench の問題のうち 672 問中 587 問を解決します(25k トークンの予算では 44 問から、4M トークンの予算では 587 問へ向上)。FATE-H ベンチマークでは 87% の精度、FATE-X ベンチマークでは 34% の精度を達成しています。中学習(mid-training)、監督微調整、CISPO を用いた強化学習、特定の定理に対する安全性チェックを経て訓練された Leanstral 1.5 は、複数回のターンにわたる定理証明および生ファイルシステムでのコードエージェントにおけるエージェント型証明工学において卓越しています。ターゲットとなる定理のリストを用いて SafeVerify のフォーク版で検証され、このモデルは問題あたり約 $4 のコストがかかります(Seed-Prover の $300 以上や Aleph Prover の $54–68 に比べて著しく低く)、かつ大きなトークン予算と共によくスケーリングします。実際の運用では、オープンソースライブラリにおける微細なバグを検出し、57 リポジトリにわたって以前に知られていなかった 5 つのバグを発見しました。その例として、datrs/varinteger ライブラリにおいて `(value + 1)` が `Std.U64.MAX` 入力に対してオーバーフローした整数オーバーフローがありました。このモデルは Hugging Face で重みファイルおよび無料の API エンドポイント(leanstral-1-5)として利用可能です。ユーザーは Mistral Vibe(`uv tool install mistral-vibe`)で実行でき、Lean LSP MCP の設定をオプションで行うことで、その能力を活用し、高次の定理証明やバグ探索を行えるようにしながら、莫大なコストなしに動作させられます。

2026/07/04 6:49

AMD MI355X 上で GLM5.2 を実行し、コストは Blackwell よりも 2 倍以上低減してノードあたり 2626 トークン/秒を達成

## Japanese Translation: AMD の新しい Instinct MI355X アクセラレータは、NVIDIA の B シリーズ GPU に対して魅力的な代替手段を提供しており、B300 と比較して約 2.75 倍安い GPU 単価で同様のハードウェア仕様を備えています。また、B200 には 2 倍以上安いです。歴史的に CUDA エコシステムを通じて「day-0」の優位性を保持してきた NVIDIA ですが、AMD はこの格差を急速に縮めています。ROCm は当初、MI355X 上で GLM-5.2 のような frontier モデルに対してネイティブなサポートがなかったものの、ターゲットされた最適化によって B200 のノードあたり性能の約 80% を対価の少なさで実現しました。主要なブリークスルーとしては、AMD Quark を用いて損失のない MXFP4 量子化を実現し(公式の FP8 の制限を上回る)、出力劣化を伴わずに堅牢なネイティブ MXFP4 サポートのために sglang を選択し、モジュールプレフィックス不一致を修正したり、ROCm メタデータ カーネルガードを追加したりする特定のパッチを適用することで推測デコーディングの利点を解放(約 3 倍)した点があります。戦略的な構成チューニング(例えば TP4×DP2 への移行)や fp4 シェイプ用の MoE カーネルの最適化を通じて、カスタムカーネルを書かずにシングルノードデプロイメントで 2626 tok/s/node という SOTA の総通量を実現しました。この戦略は推論ワークロードに対して有効であり、AMD が NVIDIA の市場的地利を成功裏に侵食し、低コストで高計算能力を実現していることを示しています。また、マルチノードスケーリングに関する課題がまだ残るものの、よりバランスの取れた競争環境が育まれていることを意味します。