Monitor I2C Data over DVI and VGA Signals Using the Beagle I2C/SPI Protocol Analyzer

I2C Protocol Used in Video Signals

The I2C protocol has been used as a basis for various different video standards and interfaces, including DVI, VGA, or HDMI. Particularly, these interfaces utilize a signal called the Data Display Channel (DDC), which allows the graphic adapter in the video source to interact with the monitor by sending Extended Display Identification Data (EDID) and High-bandwidth Digital Content Protection (HDCP), which solely affect the overall video display appearance including color definition, screen sizing, and resolution settings within monitors.

DDC is built based on I2C communication and uses its master's serial clock and serial data pins to perform a data exchange between the video source and video display monitor. Within cables like VGA, DVI, or HDMI, there are wires that host a collection of protocols, also known as the Data Display Channel which transfers the needed communication between the two devices.

The EDID that is transferred over the DDC standard is stored within the monitor’s memory device such as a PROM or EEPROM. When a video monitor and video source connect using a VGA, DVI, or HDMI cable, the EDID standard is sent from the video monitor to the video source, presenting its characteristics, capabilities, and what criteria it can support; this criterion can include manufacturer, native resolution, refresh rate, display size, and color depth. If supported, the HDCP data is also sent intended to protect digital copyrighted content coming from a device to the video monitor, and is also exchanged between the devices upon enumeration. This knowledge will allow the source to generate a matching signal, so there is successful interoperability between video devices; users simply need to plug in the cable and start using immediately without having the need to manually adjust the monitors.

Although I2C is a reliable protocol for communication occurring in integrated circuits embedded within a device, when used in video applications where the devices are connected via a long wire signal, issues can arise. The protocol may not function as expected and it can produce corrupted EDID data signals, producing video display issues such as incorrect color or screen sizing, or it can also produce a corrupt HCDP signal that can prevent any signal at all.

Monitor I2C Communication used within VGA or DVI Signals

When experiencing such issues over the Display Data Channel, it can be hard to pinpoint the exact bug that is affecting the display. Because this transfer of data is based on the I2C protocol, using an I2C protocol analyzer, such as the Beagle I2C/SPI Protocol Analyzer, will allow engineers to capture the I2C data in real time and display any errors occurring on the bus related to this channel. The Beagle I2C/SPI analyzer is easy-to-use, can non-intrusively monitor I2C data up to 4 MHz and SPI data up to 24 MHz, and also offers bit-level timing down to a 20 ns resolution.

Total Phase provides two breakout cables supporting the VGA and DVI interfaces, including the DVI DDC Breakout Cable and VGA DDC Breakout Cable to help access the DDC data being transferred via I2C communication between your video devices. 

 

 

To monitor the Data Display Channel with a Beagle I2C/SPI Protocol Analyzer:

 

  1. Connect the DVI or VGA DDC Breakout Cable to the Beagle I2C/SPI Protocol Analyzer using the pitch keyed box connectors.
  2. Connect your video source device to the DVI or VGA DDC Breakout Cable.
  3. Open the Data Center Software and connect to the Beagle I2C/SPI Protocol Analyzer.
  4. Start Capture.
  5. Now connect the other end of the DVI or VGA DDC Breakout Cable to the video display monitor.
  6. Immediately view the I2C data transfers taking place between devices in real time.
 
 
 

If we click on the Read transaction within the Data Center Software, we can see the data that was exchanged between the two devices, and that it was successful with no flagged errors. Within the Details pane, we can also see the data in hex and ASCII. In ASCII, we can see the word DELL, which is the video monitor used for this example.

Any errors would be flagged red and could be investigated further in the bus tab and details pane.

Users can also use an Aardvark I2C/SPI Host Adapter and a DVI DDC Breakout Cable to Read EDID data from a DVI Monitor EEPROM as seen here.

For more information on the Beagle I2C/SPI Protocol Analyzer and its capabilities, please contact us at sales@totalphase.com.