Extended Display Identification Data (EDID) and Enhanced EDID (E-EDID) are metadata formats for display devices to describe their capabilities to a video source (e.g., graphics card or set-top box). The data format is defined by a standard published by the Video Electronics Standards Association (VESA).

The EDID data structure includes manufacturer name and serial number, product type, phosphor or filter type (as chromaticity data), timings supported by the display, display size, luminance data and (for digital displays only) pixel mapping data.

DisplayID is a VESA standard targeted to replace EDID and E-EDID extensions with a uniform format suited for both PC monitor and consumer electronics devices.

Background

EDID structure (base block) versions range from v1.0 to v1.4; all these define upwards-compatible 128-byte structures. Version 2.0 defined a new 256-byte structure but it has been deprecated and replaced by E-EDID which supports multiple extension blocks. HDMI versions 1.0–1.3c use E-EDID v1.3.

Before Display Data Channel (DDC) and EDID were defined, there was no standard way for a graphics card to know what kind of display device it was connected to. Some VGA connectors in personal computers provided a basic form of identification by connecting one, two or three pins to ground, but this coding was not standardized.

This problem is solved by EDID and DDC, as it enables the display to send information to the graphics card it is connected to. The transmission of EDID information usually uses the Display Data Channel protocol, specifically DDC2B, which is based on I²C-bus (DDC1 used a different serial format which never gained popularity). The data is transmitted via the cable connecting the display and the graphics card; VGA, DVI, DisplayPort and HDMI are supported.

The EDID is often stored in the monitor in the firmware chip called serial EEPROM (electrically erasable programmable read-only memory) and is accessible via the I²C-bus at address . The EDID PROM can often be read by the host PC even if the display itself is turned off.

Many software packages can read and display the EDID information, such as read-edid for Linux and DOS, PowerStrip for Microsoft Windows and the X.Org Server for Linux and BSD unix. Mac OS X natively reads EDID information and programs such as SwitchResX or DisplayConfigX can display the information as well as use it to define custom resolutions.

E-EDID was introduced at the same time as E-DDC, which supports multiple extensions blocks and deprecated EDID version 2.0 structure (it can be incorporated in E-EDID as an optional extension block). Data fields for preferred timing, range limits, and monitor name are required in E-EDID. E-EDID also adds support for the Dual GTF curve concept and partially changed the encoding of aspect ratio within the standard timings.

With the use of extensions, E-EDID structure can be extended up to 32 KiB, because the E-DDC added the capability to address multiple (up to 128) 256 byte segments.

EDID Extensions assigned by VESA Timing Extension () Additional Timing Data Block (CTA EDID Timing Extension) () Video Timing Block Extension (VTB-EXT) () EDID 2.0 Extension () Display Information Extension (DI-EXT) () Localized String Extension (LS-EXT) () Microdisplay Interface Extension (MI-EXT) () Display ID Extension () Display Transfer Characteristics Data Block (DTCDB) (, , ) Block Map () Display Device Data Block (DDDB) (): contains information such as subpixel layout Extension defined by monitor manufacturer (): According to LS-EXT, actual contents varies from manufacturer. However, the value is later used by DDDB.

Revision history August 1994, DDC standard version 1 – introduce EDID v1.0. April 1996, EDID standard version 2 – introduce EDID v1.1. November 1997, EDID standard version 3 – introduce EDID v1.2 and EDID v2.0. September 1999, E-EDID Standard Release A – introduce EDID v1.3 and E-EDID v1.0, which supports multiple extensions blocks. February 2000, E-EDID Standard Release A - introduce E-EDID v1.3 (used in HDMI), based on EDID v1.3. EDID v2.0 deprecated. September 2006, E-EDID Standard Release A – introduce E-EDID v1.4, based on EDID v1.4.

Limitations Some graphics card drivers have historically coped poorly with the EDID, using only its standard timing descriptors rather than its Detailed Timing Descriptors (DTDs). Even in cases where the DTDs were read, the drivers are/were still often limited by the standard timing descriptor limitation that the horizontal/vertical resolutions must be evenly divisible by 8. This means that many graphics cards cannot express the native resolutions of the most common widescreen flat-panel displays and liquid-crystal display TVs. The number of vertical pixels is calculated from the horizontal resolution and the selected aspect ratio. To be fully expressible, the size of widescreen display must thus be a multiple of 16×9 pixels. For 1366×768 pixel Wide XGA panels the nearest resolution expressible in the EDID standard timing descriptor syntax is 1360×765 pixels, typically leading to 3-pixel-thin black bars. Specifying 1368 pixels as the screen width would yield an unnatural screen height of 769.5 pixels.

Many Wide XGA panels do not advertise their native resolution in the standard timing descriptors, instead offering only a resolution of 1280×768. Some panels advertise a resolution only slightly smaller than the native, such as 1360×765. For these panels to be able to show a pixel perfect image, the EDID data must be ignored by the display driver or the driver must correctly interpret the DTD and be able to resolve resolutions whose size is not divisible by 8. Special programs are available to override the standard timing descriptors from EDID data. Even this is not always possible, as some vendors' graphics drivers (notably those of Intel) require specific registry hacks to implement custom resolutions, which can make it very difficult to use the screen's native resolution.

EDID 1.4 data format

Structure, version 1.4

+ EDID structure, version 1.4VESA E-EDID Standard, Release A, Revision 2. September 25, 2006 ; Bytes Description 0–19 Header information 0–7 Fixed header pattern: 00 FF FF FF FF FF FF 00 8–9 Manufacturer ID. This is a legacy Plug and Play ID assigned by UEFI forum, which is a big-endian 16-bit value made up of three 5-bit letters: 00001=A; 00010=B; …; 11010=Z. E.g.: 24 4d, , "IBM"; "PHL" (Philips). Bit 15 = reserved Bits 14–10 First letter of manufacturer ID (byte 8, bits 6–2) Bits 9–5 Second letter of manufacturer ID (byte 8, bit 1 through byte 9 bit 5) Bits 4–0 Third letter of manufacturer ID (byte 9 bits 4–0) 10–11 Manufacturer product code. 16-bit hex number, little-endian. For Example, "PHL" + "C0CF". 12–15 Serial number. 32 bits, little-endian. 16 Week of manufacture; or model year flag. Week numbering is not consistent between manufacturers. 17 Year of manufacture, or year of model, if model year flag is set. Year = datavalue + 1990. 18 EDID version, usually (for 1.3 and 1.4) 19 EDID revision, usually (for 1.3) or (for 1.4) 20–24 Basic display parameters 20 Video input parameters bitmap Bit 7 = Digital input. If set, the following bit definitions apply: Bits 6–4 Bit depth: = undefined = 6 = 8 = 10 = 12 = 14 = 16 bits per color = reserved Bits 3–0 Video interface: = undefined = DVI = HDMIa = HDMIb = MDDI = DisplayPort Bit 7 = Analog input. If clear, the following bit definitions apply: Bits 6–5 Video white and sync levels, relative to blank: = +0.7/−0.3 V = +0.714/−0.286 V = +1.0/−0.4 V = +0.7/0 V (EVC) Bit 4 Blank-to-black setup (pedestal) expected Bit 3 Separate sync supported Bit 2 Composite sync (on HSync) supported Bit 1 Sync on green supported Bit 0 VSync pulse must be serrated when composite or sync-on-green is used. 21 Horizontal screen size, in centimetres (range 1–255). If vertical screen size is 0, landscape aspect ratio (range 1.00–3.54), datavalue = (AR×100) − 99 (example: 16:9, 79; 4:3, 34.) 22 Vertical screen size, in centimetres. If horizontal screen size is 0, portrait aspect ratio (range 0.28–0.99), datavalue = (100/AR) − 99 (example: 9:16, 79; 3:4, 34.) If both bytes are 0, screen size and aspect ratio are undefined (e.g. projector) 23 Display gamma, factory default (range 1.00–3.54), datavalue = (gamma×100) − 100 = (gamma − 1)×100. If 255, gamma is defined by DI-EXT block. 24 Supported features bitmap Bit 7 DPMS standby supported Bit 6 DPMS suspend supported Bit 5 DPMS active-off supported Bits 4–3 Display type (digital): = RGB 4:4:4 = RGB 4:4:4 + YCrCb 4:4:4 = RGB 4:4:4 + YCrCb 4:2:2 = RGB 4:4:4 + YCrCb 4:4:4 + YCrCb 4:2:2 Display type (analog): = monochrome or grayscale = RGB color = non-RGB color = undefined Bit 2 Standard sRGB colour space. Bytes 25–34 must contain sRGB standard values. Bit 1 Preferred timing mode specified in descriptor block 1. For EDID 1.3+ the preferred timing mode is always in the first Detailed Timing Descriptor. In that case, this bit specifies whether the preferred timing mode includes native pixel format and refresh rate. Bit 0 Continuous timings with GTF or CVT 25–34 Chromaticity coordinates. 10-bit 2° CIE 1931 xy coordinates for red, green, blue, and white point 25 Red and green least-significant bits (2−9, 2−10) Bits 7–6 Red x value least-significant 2 bits Bits 5–4 Red y value least-significant 2 bits Bits 3–2 Green x value least-significant 2 bits Bits 1–0 Green y value least-significant 2 bits 26 Blue and white least-significant 2 bits 27 Red x value most significant 8 bits (2−1, ..., 2−8). 0–255 encodes fractional 0–0.996 (255/256); 0–0.999 (1023/1024) with lsbits 28 Red y value most significant 8 bits 29–30 Green x and y value most significant 8 bits 31–32 Blue x and y value most significant 8 bits 33–34 Default white point x and y value most significant 8 bits 35–37 Established timing bitmap. Supported bitmap for (formerly) very common timing modes. 35 Bit 7 720×400 @ 70 Hz (VGA) Bit 6 720×400 @ 88 Hz (XGA) Bit 5 640×480 @ 60 Hz (VGA) Bit 4 640×480 @ 67 Hz (Apple Macintosh II) Bit 3 640×480 @ 72 Hz Bit 2 640×480 @ 75 Hz Bit 1 800×600 @ 56 Hz Bit 0 800×600 @ 60 Hz 36 Bit 7 800×600 @ 72 Hz Bit 6 800×600 @ 75 Hz Bit 5 832×624 @ 75 Hz (Apple Macintosh II) Bit 4 1024×768 @ 87 Hz, interlaced (1024×768i) Bit 3 1024×768 @ 60 Hz Bit 2 1024×768 @ 70 Hz Bit 1 1024×768 @ 75 Hz Bit 0 1280×1024 @ 75 Hz 37 Bit 7 1152x870 @ 75 Hz (Apple Macintosh II) Bits 6–0 Other manufacturer-specific display modes 38–53 Standard timing information. Up to 8 2-byte fields describing standard display modes.Unused fields are filled with 01 01 hex. The following definitions apply in each record: 38 Standard timing 1: X resolution, = reserved; otherwise, (datavalue + 31) × 8 (256–2288 pixels). 39 Bits 7–6 Standard timing 1: Image aspect ratio: = 16:10 = 4:3 = 5:4 = 16:9 (Versions prior to 1.3 defined as 1:1.) Bits 5–0 Vertical frequency, datavalue + 60 (60–123 Hz)40-41 Standard timing 242-43 Standard timing 344-45 Standard timing 446-47 Standard timing 548-49 Standard timing 650-51 Standard timing 752-53 Standard timing 8 54–125 Display timing descriptor followed by display/monitor descriptors 54–71 Preferred timing descriptor 18 byte detailed timing descriptors or display descriptors 72–89 Descriptor 2 90–107 Descriptor 3 108–125 Descriptor 4 126-127 Extension flag and checksum 126 Number of extensions to follow. 0 if no extensions. 127 Checksum. Sum of all 128 bytes should equal 0 (mod 256).

Detailed Timing Descriptor