
2026/07/05 14:36
HDMI to VGA アダプター「$2.58」のアナログオーディオ設定修正
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
最も重要な教訓は、任天堂 Switch 向けの安価なレトロゲーミングソリューションとして市場に登場した超高価な AliExpress HDMI 接続-VGA DAC ドングル(NTSC, ~2.58–2.71 ドル)が深刻な電気的な欠陥を持っていることである:必須のフィルタリングコンデンサを備えていない(足形は存在するが空)、IC の高内部抵抗 (570–598 Ω) に依存しており、これにより実効的なローパスカットオフ周波数が目標とする>50 kHz ではなくわずか2.6 kHz と制限されており、またビデオ/オーディオトレースの配線も不適切である。オシロスコープによるリバースエンジニアリングでは、ノイズ成分が最大 50 MHz に及ぶおよび 20 ns も短くても存在するサブ振動を伴う生 SIGMA-DELTA DAC 出力 (>600 mV ピーク対ピーク) が確認され、これはグラウンドループまたはミキサーによって音響的な歪みに変調された超音波スイッチングノイズを生じている。持続的な 60 Hz のハムは、Sleep モードにしていないときに接地されたヘッドフォンジャックを介して Switch から発信されていることが追跡された。他の問題としては、不正確なトレース配線によるステレオチャンネルの反転(銅を削り、36 番ゲージの磁気線で作動し、UV ソルディングマスクを適用することで手動で再接続)や DC ブロックコンデンサの欠如によるプラグ挿抜時のポップ音、DAC の過熱(接着剤の failure やペーストによるシフトを回避するためにダブルサイドの熱伝導テープが使用される)、そして電源ストリップへの叩きや HDMI スプリッターの USB ケーブルが未接続状態に起因する脆弱なビデオ信号動作が含まれる。このプロジェクトは、I2C プルアップが省略された損傷した Icy-Box IT6892FN デバイスから始まり、後に I2C ラインをブリッジして EDID 検出を強行しようとする試みも、同期トレースが破断した後に不可靠になった。2 次フィルタリング(例:Sallen-Key)はノイズリジェクト性能を改善できるが、オペアンプ、カスタム PCB の再設計、または NX3303X チップのホットエアデソルディングが必要であり、これは限定的な利益に対する大きな作業量である。代替となる AliExpress オーディオエクストラクタは品質が低く、オーディオファイルアールオプションが高すぎた;MX9291/9292 などのチップは統合されたオーディオを提供するが、互換性のない PCB レイアウトが必要である。結局のところ、この分析は愛好家に、最低価格を追うことはしばしばレトロな画面とのクリーンなオーディオ/ビデオ互換性を達成するために高度なハードウェア改修を強いるという事実に警告しており、レトロモッディングにおけるコストとエンジニアリングの信頼性 사이의難しいトレードオフを浮き彫りにしている。
本文
任天堂 Switch の CRT モニター接続用 HDMI DAC:ノイズ・歪みと改良記
オープニング:古い HDMI DAC の修理
ICy-Box 社製の HDMI から VGA に変換する DAC(デジタル・アナログコンバータ)を購入しましたが、オーディオ出力端子からマイクジャックに深刻なノイズが発生しました。インピーダンス問題やデルタ・シグマ型 DAC のフィルタリングを検討し、PCB を再加工して高品質音を実現しようと試みました。
基板の損傷と GIMP で学ぶ I2C
- 当初は Switch ドックに直接接続する計画でしたが、I2C バスのパッチング中に基板配線が損傷し、コンポーネントも欠落していました。
- GIMP を使用して I2C ラインをトレースし、基板構造を実質的に再構築する必要がありました。
- 原本の抵抗配置:
ラインには「5V プルアップ抵抗」と「チップ側グラウンド引き込み抵抗」が使用されていましたが、これらのオミットが原因の一部でした。SDA/SCL
- 原本の抵抗配置:
練習としてのハンダ付け(ソルダーマスケ使用)
- 基板修理前に、Switch モドチップインストール用の練習として36 ゲージマグネット線と3 秒硬化型ソルダーマスケを使用しました。
- キナール製エナメル被覆: 溶けにくく厚みがあり、端子引き剥がしを避けられました。
- ソルダーマスケの活用: 露出したパッドへの接着は苦手でしたが、「完了した」ハンダ継ぎ目の保護や固定に役立ちました。
- テースティング中に基板のトップ面・ボトム面の切り替えで失敗しましたが、KiCad の参照写真機能を使うことでモデル化が可能になるかもしれません。
スイッチをオーディオミキサーに接続:グラウンドループ問題
干渉電流とハムノイズの原因
- ICy-Box DAC はオーディオ出力を持っていません(ITE IT6892FN チップはアナログ音声出力しないため)。
- スイッチのヘッドホンジャックからは、オーディオミキサーへ面倒な干渉電流が流れ込み、グラウンドループによる 60Hz のハムノイズが発生していました。
- 結論: スリープモードになっていない場合、この回路がハムを取り込み増幅している状態でした。
検討された解決策とその難しさ
以下の方法が提案されましたが、どれも実現には困難やコストが伴いました。
- グラウンドループ断絶器(分離トランス): 小型物は低周波を減衰、大型物は高価。安価な製品を検討する価値あり。
- バランス型微分オーディオ: プロ仕様だが機器が高価。DI ボックスは電圧低下でノイズ感受性を高める逆効果になる可能性。
- HDMI オーディオエキスTRACTOR: AliExpress 製は品質が悪く、フルビットストリームレシーバーとして高コストとなる傾向。
- 負帰還型オーディオ光断絶器: Discord サーバーでは推奨されましたが、原理が不明確。
- 微分増幅器: 入力対応方法や共モードノイズ抑制能力の低さから撤退しました。
見つけた回避策とその限界
- 簡易対策: Switch 音量ジャックを**最大(リミッター OFF)**にし、ゲーム音よりもハムノイズを小さくしてミキサーで下げる方式。
- 問題点: ドックへの挿抜毎回ヘッドホンジャックの抜き差しが必要で、コンソールアンプへの悪影響が懸念されました。
- Apple USB-C オーディオ Dongle: 出力が得られず失敗。
注意: 「友人の Switch 2」でも同様の音buzz が発生しましたが、これはサードパーティ製 HDMI ドングルの問題だと判断しました。任天堂の訴訟対応姿勢(資金調達や GitHub フォーク削除など)から、将来的には独立系開発者のハードウェアを利用することを避ける意向を示しています。
オシロスコープによる信号解析:MHz 帯域の超音波ノイズ
驚異的なノイズレベル
- ブリークケーブルをオシロスコープで測定したところ、500~600 mV のノイズがオーディオ信号全体を覆い、高調波は 50 MHz に達していました。
- デルタ・シグマ DAC の生出力特性: ピーク・トゥ・ピーク振幅 600 mV 超え、周期約 80 ns の波形に**20 ns という短い周期的なサブ振動(ギッチー遷移)**が含まれていました。
問題の正体:スイッチングノイズ
- MHz 帯域の超音波 DAC スイッチングノイズが非線形増幅器によって可聴歪みとして変調されていました。
- 内部チップの確認からNX3303Xと判明しました(データシート未発見、ブロック図のみ入手)。
チップ見直し:MX9291 の可能性
プロジェクトでは、同じ AliExpress DAC から回収された NX3303X を使用。DC ブロックコンデンサはあってもトレブルフィルタリング lackedしていました。HDMI2SCART- 同様の音質問題でチップ出力とグラウンド間にコンデンサを追加する解決策が見つかっています。
- オンラインで「NX3303X の置き換え」としてMX9291(デルタ・シグマ搭載)が見つかりましたが、ピン配置が異なるため採用断念しました。
ローパスフィルターの構築と内部抵抗の発見
カットオフ周波数の決定
- 50 kHzのカットオフを持つ 1 次ローパスフィルターを設計。
- **20 kHz(聴覚上限)**での高音域損失と、5~10 MHz帯でのスイッチングノイズ抑制をチェックしました。
計算によるコンデンサ容量
> f = 1 / (2π RC) > R = 31 Ω > C ≈ 102.68 nF → 実用値として 100 nF (MLCC) を選択
- しかし、X7R セラミックコンデンサは圧電効果(音波を振動に変換)を持ち、低周波ノイズ源になる可能性があります。
データ分析:時定数から内部抵抗へ
- オシロスコープ波形解析から、ローパスフィルターの**時定数(τ)**が約 60.11 µsと算出されました。
- カットオフ周波数は以下のように計算:
f_c = 1 / (2π τ) ≈ 2.647 kHz - 驚くべき発見: ダイヤモンドのゲームプレイ(数時間)でこの低カットオフに気づかなかったのは、Switch のスピーカーが「ズレッ」とした音の原因を内部抵抗の低減ではなく外部フィルターだと誤解していたからでした。
内部抵抗(Rint)の算出
チップの出力ピンは理想的な電圧源ではなく、オーム的内部抵抗を持つ電源として振る舞います。
- 電圧分圧法:
Rint ≈ 598.7 Ω (理想 DAC 3.35V vs 実際 1.675V スイングから算出) - RC フィルター時定数法:
Rint + 31Ω = τ / C → Rint ≈ 570.1 Ω
- 両者の平均で内部抵抗は約 584 Ωと判定。意図したフィルター抵抗(31 Ω)と比較すれば圧倒的に大きいため、コンデンサの充電速度が DAC 内部抵抗によってボトルネックされていたことが分かりました。
フィルタリング手法の改善:C0G セラミックコンデンサ導入
最適な容量の計算
- 目標: 50 kHz カットオフの実現
- 必要な電荷量(C):
C = 1 / (2π * 584Ω * 50kHz) ≈ 5.39 nF → 実用値として 5.1 nF を採用 - PCB 改修: 既設の未使用フットプリント(0402 サイズ)を利用。
- 容量増(10 nF)による直流オフセットのドリフトは許容範囲内ですが、圧電性の低いC0G コンデンサを使用するのが望ましいです。
- LCSC: 5.1nF C0G (0402 サイズ) を小数円で購入。
配線図への追加指示
- フィルター用コンデンサを追加する場所:
とC2
(オーディオソースとグラウンドの間に設置)。C5
とC1
はヘッドホンジャック側であり、0 オーム抵抗が実装されています。C4
DC ブロックについての発見 電源投入時に「ポン」という爆発音が聞こえる場合、メーカーは DC ブロック機能を省き、受信デバイス側の機能に依存していたようです。追加コンデンサは容易ではありません(1 uF が必要だが C0G は大容量非対応、電解コンデンサはパッドサイズ不適合)。全体的に見て、コスト削減工事は否定的です。
ステレオチャンネルの入れ替え修正
- 現象: Splatoon 3 などで爆発音が方位と逆(左で右側からの爆発)に聞こえる立体感欠損。
- 原因: DAC がステレオチャンネルを入れ替えている可能性。
- 解決手順:
- PCB 背面・前面を貫通する配線をクロスオーバーする。
- イソプロピルアルコールで基板を洗浄し、X-Acto ナイフで銅配線切断。
- 36 ゲージマグネット線で接続し、フラックス付着、ハンダ付け完了。
- **ソルダーマスケ(紫外線硬化型)**で埋め込み固定。
- 結果:ステレオ問題は即座に解決。
その他のハードウェア改修
- VGA ネジの短縮: Dremel とサンドペーパーを使用し、ドングルが振動する問題を解消。
- 冷却対策: チップ過熱(指触火傷レベル)に対し、二重接着型熱伝導テープでヒートシンクを固定。回転剛性不足による傾斜には注意が必要。
- VGA エミュレーション: CRT モニターに 1080p を認識させるため、ICy-Box DAC の I2C ラインを切断し、同期トレースのみブリッジしました。しかし数週間で継ぎ目が脱落する問題が発生しました。
将来の展望:2 次ローパスフィルターの設計?
カットオフ周波数の限界
- 5.1 nFコンデンサでもスイッチングノイズ(±20 mV)が漏れ、26 kHz ローパスは高音域を過度に減衰(-1.9 dB)させます。
- 2 次フィルター(級聯 RC)も内部抵抗の制約により効率が低下します。
インダクタかオペアンプかの選択
- Sallen-Key フィルター: 抵抗・コンデンサのみで構成可能だが、既存 PCB に追加する工事が困難。
- 4 層 PCB 作成: Sallen-Key フィルターのフットプリントとトレースを持つ新基板の設計。
- メリット: HDMI2SCART 並みの難易度だが、既存ケースとネジを再利用可能。
- デメリット: ヒートアワーによる DAC チップ移植作業が必要。
推奨: より簡単なアップグレードとして、**HDMI パイプル型(VGA プラグ内蔵)**のドングルがコネクタ折損防止に適しています。チップ見直しの余地があるため、ステレオ問題のないモデルを探す価値があります。
まとめ:現状の結論
- 3 つの DAC チップもすべてステレオ逆転という欠陥を持っていました。原因はテスト不足と回路コピーによる設計ミスと考えられます。
- 現在では5.1 nF C0G コンデンサを追加し、内部抵抗を考慮したフィルタリングが完了しています。
- さらに高品質な音質を求める場合は、新しい基板(4 層 PCB)への移植を検討すべきです。
"低コストの電子工作は、多くの場合、設計者の妥協点であることに気づく。"