コンビネーションメーターを リバースエンジニアリングしてみた Miz
背景 なぜリバースエンジニアリング? 2 / 25
急に話が変わるが 1、2か月前位からETS2というトラック 運転シミュレーションゲームをやって いる 脱ペーパードライバーしようとペー パードライバー講習に通ってた (もう通い終わった) 結構運転感がリアルなゲームとのこ となので、補助的に使えるかな?と 3 / 25
めちゃくちゃ燃料計が見づらい... 4 / 25
何とかできないか? SCS Telemetry SDKってやつで ゲーム内のテレメトリデータが取得できるらしい 実際のコンビネーションメーター買って マイコン制御すれば出力できるんじゃね? 5 / 25
と言う訳でヤフオクで落札 (¥2,800) 6 / 25
落札したはいいものの... (当然っちゃ当然だが) データシートがない リバースエンジニアリングするしかない 7 / 25
というわけで コンビネーションメーターを リバースエンジニアリングしてみた (タイトル回収) 8 / 25
とりあえず解体、どう進めようか... 9 / 25
Claude に手順を聞いてみた 1. ICや主要部品を確認する 2. ICのデータシートを探す 3. 電源ライン (Vcc/GND) を特定する 4. パターン (配線) を確認しながら、回路図を起こす 5. 動作確認する 10 / 25
1. ICや主要部品を確認する 11 / 25
問題発生 型番の文字が剥げてどのICなのかわからない... 画像解析が得意なGeminiに任せて解決! 残っている印刷 ピン数 コンビネーションメーターの基板 という情報から型番を特定してくれた 12 / 25
2. ICのデータシートを探す 型番を元にWeb検索する 名称 型番 マイコン MB90552B EEPROM ST93C56 アクチュエータードライバー MLX10407 LCDドライバー MSM6786 5V LDO レギュレーター TLE4279G インバーター 74HC04 シュミットトリガーインバーター 74HC14 13 / 25
3. 電源ライン (Vcc/GND) を特定する 調べたデータシートからVcc/GNDのピンを特定する 今回の場合、アクチュエータードライバーは12V、それ以外は5Vだった 14 / 25
テストピンを当てやすい位置を求めて... 以下の観点から、Vcc/GNDを当てやす いビアなどをテスターの導通モードを 利用することで探した QFP (Quad Flat Package) のような ICだとテストピンが当てづらく、 効率的に解析が進められないため 何度もテストピンを当てていると圧 力がかかってはんだ割れが発生する 恐れがあるため 15 / 25
4. パターン (配線) を確認しながら... いや、ムリゲー過ぎる\(^o^)/オワタ 16 / 25
17 / 25
Gimp(画像編集ソフト) のレイヤー機能を使って奮闘! 18 / 25
Gimp(画像編集ソフト) のレイヤー機能を使って奮闘! 19 / 25
Gimp(画像編集ソフト) のレイヤー機能を使って奮闘! 確認できたパターンは赤線でなぞる 分岐点が出てきたり深追いすると迷子になりそうな箇所がたびたび出てくる セーブポイントとして黄色い点を置いて、後から確認を再開できるようにする 20 / 25
4. パターン (配線) を確認しながら、回路図を起こす 今のところ進捗はここまで 21 / 25
因みに... 今回の目的: インターフェースのどのピンがどの役割かを知りたい 各ピンがどこにつながっているかさえ分かればよい 今回はハードの勉強も兼ねているので、丁寧めに各ICの配線を確認している 効果的・効率的に進めるためにも リバースエンジニアリングする目的は明確化しておこう! 22 / 25
まとめ 23 / 25
手順 1. ICや主要部品を確認する 2. ICのデータシートを探す 3. 電源ライン (Vcc/GND) を特定する 4. パターン (配線) を確認しながら、回路図を起こす 5. 動作確認する 24 / 25
ポイント とりあえずIC型番を確認してデータシートを探そう 困ったときは生成AIに聞いたら割と補助してくれる 肉眼では追いきれないので、Gimpなど画像編集ソフトを活用しよう 最初はテストピンを当てやすいVcc/GNDの位置を探しておこう リバースエンジニアリングする目的を明確化したうえで、挑もう 25 / 25