Cloning EDID To DVI Debug Tool

Cloning an EDID using the BeagleBone Black and the Tin Can Tools DVI Debug Tool
The following procedure will allow you to capture an EDID from a given monitor, and program the Tin Can Tools DVI Debug Tool with that EDID for testing purposes.

Materials

 * 1 HDMI monitor
 * 1 Bealge Bone Black w/ latest Angstrom image loaded (This procedure was tested with the 09/04/13 image)
 * 1 Tin Can Tools DVI Debug Tool
 * write_edid.py script (listed below)

Steps

 * 1) Boot the BeagleBone Black
 * 2) Copy the write_edid.py file (listed below) to the BBB
 * 3) Connect an HDMI monitor
 * 4) The contents of /sys/class/drm/card0/card0-HDMI-A-1/edid are the 256 bytes read from the EDID EEPROM of the connected monitor, copy this to a file (edid.bin in this example)
 * 5) Disconnect HDMI monitor
 * 6) Activate I2C1 on the BBB with 'echo BB-I2C1 > /sys/devices/bone_capemgr.8/slots'
 * 7) Connect pin 17 on P9 of the BBB to SDA on the DVI Debug tool
 * 8) Connect pin 18 on P9 of the BBB to SCL on the DVI Debug tool
 * 9) Connect ground from BBB to DVI Debug Tool
 * 10) Put a jumper on Write Enable on the DVI Debug Tool
 * 11) Connect HDMI cable from BBB to DVI Debug Tool
 * 12) Run 'i2cdetect -y -r 2', you should see a device at 0x50
 * 13) Run './write_edid.py edid.bin' to write the captured EDID to the DVI Debug Tool
 * 14) run 'i2cdump -y 2 0x50' to compare with the captured EDID to verify the write was successful

write_edid.py
You can download the write_edid.py script

Example dump from /sys/class/drm/card0/card0-HDMI-A-1/edid
0000000 ff00 ffff ffff 00ff 2104 0042 000f 0000 0000010 151f 0301 5980 7832 010a a0c1 4757 2798 0000020 4c12 a14c 0008 4031 4045 4061 8081 0101 0000030 0101 0101 0101 2198 b050 0051 301b 7040 0000040 0036 8440 0063 1e00 1d4c 7200 d051 201e 0000050 286e 0055 8440 0063 1e00 0000 fc00 4c00 0000060 4443 5654 200a 2020 2020 2020 0000 fd00 0000070 3000 0e3e 0f44 0a00 2020 2020 2020 3501 0000080 0302 7025 0150 0302 0504 1190 1312 1f14 0000090 0706 1615 2320 0709 8307 0001 6700 0c03 00000a0 2000 b800 012d 801d 72d0 161c 1020 252c 00000b0 4080 6384 0000 019f 801d 7118 161c 5820 00000c0 252c 4000 6384 0000 0199 001d 52bc 1ed0 00000d0 b820 5528 4040 6384 0000 021e 803a 72d0 00000e0 2d38 1040 452c 4080 6384 0000 021e 803a 00000f0 7118 2d38 5840 452c 4000 6384 0000 ed1e