雑多な小物たち

[Menu]

EDID EEPROM ボード

[目的]
PC などのモニターコネクタに挿すことで、そこにモニターが繋がっているように偽装する

[見た目]

[基板配布サイト]

[ハードウェア構造]

モニターインターフェイスに含まれる I2C バスに EEPROM を接続している。また、モニタの接続を検出させるために、プルアップした端子を提供している
また、上記の[目的]を実現するためには以下の項目を満たす必要がある

[使用方法]

  1. 上記回路図に示すようなハードウェアを用意する。実装する部品は部品表を参照する
  2. 別途 EEPROM に希望の EDID 情報を書き込んでおき、ハードウェアに載せる

  3. モニターインターフェイスに接続する
EEPROM に書き込む EDID を用意するには、以下のツール、サイトが有用である

[動作確認環境]

[ちょっと細かい対応範囲]

ハードウェア構造により、以下の制約がある

[なんとなく豆知識]


MCP2221A ボード

[目的]
主たる目的は、EDID EEPROM ボードに使う I2C EEPROM に、用意したデータを書き込むこと。及びデータを読み出すこと
二次的な目的として、MCP2221A が提供する I2C、GPIO、シリアルに各種デバイスを繋いでソフトウェアでテスト動作等をすること

[見た目]

[ハードウェア構造]

MCP2221A 周りの回路に特別なところはない。3.3V レギュレータを載せ、ジャンパで切り替えることで、MCP2221A 及び EEPROM に供給する電圧を 5V と 3.3V で切り替えることができる。また、I2C バスは 4.7KΩでプルアップされている。データシートによると MCP2221A の I2C の最大速度は 400Kbps なので、この値くらいがちょうどよいと判断した
MCP2221A は、DIP と、表面実装品を 600mil の変換基板に載せたものと、どちらも使える。[見た目]の完成品は、SOP を変換基板に実装したものを載せている
また、I2C EEPROM を載せるための 8pin ソケットと、MCP2221A の GPIO、シリアル、I2C 及び、5V 及び 3.3V 等を取り出すことのできるパターンが用意されている。

[基板配布サイト]

[使用方法]

利用可能なソフトウェア : mcp2221_i2ceeprom.py (拙作の python スクリプト)

  1. 上記回路図に示すようなハードウェアを用意する。実装する部品は部品表を参照する。この時、以下の点に注意すること

  2. J6 に、シルクの情報に従って 2つのジャンパを取り付ける。(5V設定 / 3.3V設定)これにより、MCP2221A と EEPROM の電源電圧が決まり(5V あるいは 3.3V)、MCP2221A の GPIO, シリアル、I2C の信号電圧も決まる。J3 の VDD ピンへの電圧供給も決まる。ジャンパ設定にかかわらず 5V 及び 3.3V を得たいときは、J2 から取る。
  3. 書き込み、読み込み対象の EEPROM を 8pin ソケットに載せる
  4. USB ケーブルで PC に接続し、拙作の mcp2221_i2ceeprom.py を使用する。利用方法はリンク先のドキュメントを読むこと

[動作確認環境]

使用した I2C EEPROM は以下のもの

その他の I2C EEPROM にも対応できるよう mcp2221_i2ceeprom.py を作成しているが、上記の EEPROM 以外は未検証である

検証プラットホームは Windows10 の PC、python 3.11.1、hidapi 0.12.0.post2、mcp2221_i2ceeprom.py である
ハードウェア的には USB2.0 (12Mbps) のホスト機能を持つ環境から利用できると思う