lcd panel edid eeprom error supplier
I"m faced with an interesting issue! One of our client Dell laptop does not show POST/Dell splash screen when powered on. Eventually, after a minute or two, the Windows login screen appears. I"ve replaced the LCD panel, updated BIOS, drained power, reseated everything possible, and even re-imaged the HD. Dell diagnostics gives me this error: LCD EDID - Unable to access EDI EEPROM, even after replacing the LCD panel. I"m beginning to suspect that the motherboard is the culprit here. Anyone seen this type of issue before?Just out of curiosity, what does Dell Support have to say about that error?
I"m faced with an interesting issue! One of our client Dell laptop does not show POST/Dell splash screen when powered on. Eventually, after a minute or two, the Windows login screen appears. I"ve replaced the LCD panel, updated BIOS, drained power, reseated everything possible, and even re-imaged the HD. Dell diagnostics gives me this error: LCD EDID - Unable to access EDI EEPROM, even after replacing the LCD panel. I"m beginning to suspect that the motherboard is the culprit here. Anyone seen this type of issue before?Just out of curiosity, what does Dell Support have to say about that error?
SOLVED! I replaced the LVDS cable, and I am now able to see the Dell splash screen and also access BIOS and PXE boot. Diagnostics no longer reports an error. It"s a beautiful day - birds are chirping, flowers are blooming, people are happy. Thank you all for the support!!!
Does anybody happen to have a full EEPROM dump (4 KB) for the AUO B156HTN03.8 LED panel? I"d need not only the EDID part (first 128 bytes), but also the rest of the LCD FW, which seems to be located on the same EEPROM chip as the EDID but from offset 0x100.
Interestingly, it seems as though the EEPROM was "randomly" overwritten at offsets 0x0, 0x100 and 0x200 with some garbage data of ca 15-16 bytes. Could be, that the previous owner had removed the connector, while still under power and thus wiping some EEPROM address areas with garbage...
The panel does light up and changes the backlight, but only with a black screen with no picture. I wonder if those wiped areas within the FW might contain the detailed timing infos needed to provide the right timing data.
My LCD panel has worked at last! I think EDID is the key problem.Kernel won"t drive the lcd if it can"t get the panel information by EDID port or the built-in bin files.Unfortunately my board has neither of those.After I made my own edid file based on the panel"s datesheet ,the lcd got work!Here is what I did:
What I did is to download the EDID files from https://github.com/torvalds/linux/tree/master/Documentation/EDID to my BeagleBone Black and make it. An error happened here see output below. I know I must miss some thing, can tyrael or anyone help me about this?
This topic describes how vendors and manufacturers can override the Extended Display Identification Data (EDID) of any monitor through an INF file, and provides a sample INF file (Monsamp.inf).
All monitors, analog or digital, must support EDID, which contains information such as the monitor identifier, manufacturer data, hardware identifier, timing info, and so on. This data is stored in the monitor’s EEPROM in a format that is specified by VESA.
Monitors provide the EDID to Microsoft Windows components, display drivers, and some user-mode applications. For example, during initialization the monitor driver queries the Windows Display Driver Model (WDDM) driver for its brightness query interface and device driver interface (DDI) support, which is in the EDID. Incorrect or invalid EDID information on the monitor’s EEPROM can therefore lead to problems such as setting incorrect display modes.
The better solution, described here, is for the manufacturer to implement an INF file that contains the correct EDID info, and have the customer download it to the computer that is connected to the monitor. Windows extracts the updated EDID information from the INF and provides it to components instead of using the EEPROM EDID information, effectively overriding the EEPROM EDID.
In addition to replacing the EDID information, a vendor can provide an override for the monitor name and the preferred display resolution. Such an override is frequently made available to customers through Windows Update or digital media in the shipping box, and receives higher precedence than the EDID override mentioned here. Guidelines for achieving this can be found in Monitor INF File Sections.
Each block is numbered, starting with 0 for the initial block. To update EDID info, the manufacturer’s INF specifies the number of the block to be updated and provides 128 bytes of EDID data to replace the original block. The monitor driver obtains the updated data for the corrected blocks from the registry and uses the EEPROM data for the remaining blocks.
The monitor manufacturer implements an INF that contains the updated EDID information and downloads the file to the user’s computer. This can be done through Windows Update or by shipping a CD with the monitor.
The monitor driver checks the registry during initialization and uses any EDID information that"s stored there instead of the corresponding information on EEPROM. EDID information that has been added to the registry always takes precedence over EEPROM EDID info.
The block number is a zero-indexed value of the EDID block to override. The data bytes should be formatted as 128 hexadecimal integers that contain the binary EDID data. The "0x1" value after the block number is a flag indicating that this registry value contains binary data (FLG_ADDREG_BINVALUETYPE).
Manufacturers must update only those EDID blocks that are incorrect. The system obtains the remaining blocks from EEPROM. The following example shows the relevant sections of an INF that updates EDID blocks 0, 4, and 5. The monitor driver obtains blocks 1 - 3 and any extension blocks that follow block 5 from EEPROM:
The trouble started when I activated Intel"s integrated, on-board graphics controller. I connected the digital output and made it the primary adapter in the BIOS. The screen remained dark. I switched monitors around and realized why: The EDID from the digital input was broken.
After some research, I realized that EDID issues are actually fairly common. The EEPROMs used to store the information are not always write-protected. Some people say hot-plugging the cables can cause corruption.
First off, let me mention that the Linux kernel has a great way to deal with the issue. It can load EDID information on a non-permanent basis like firmware via the kernel command line. In my case, I included the EDID file in the initrd and reconfigured my bootloader with:
It worked great! I simply used the EDID data from the analog input, even though monitors present slightly different EDID data on their analog and digital inputs. I am not sure why or when it matters.
Going through these steps with the kernel is good for two reasons. Firs, it shows you if the EDID you are about to flash actually makes your monitor perform better. (Without EDID data, most systems offer only lower VESA resolutions.) Second, it will give you confidence that there is an acceptable backup solution in case you break the EEPROM, although I think that particular risk is small.
All monitor connectors, such as VGA, DVI and HDMI, have dedicated pins that do nothing but read the EDID information from monitors. They use the I2C protocol. It was designed for serial communications between integrated circuits. All graphics cards can read this bus, and many can write to it.
For example, I successfully overwrote the digital EDID for my ViewSonic monitor with the analog version, but it ended up not working. In retrospect, it was probably a cabling issue (more on that later) but I chose to restore the original digital version, which was surprisingly easy.
You can use cat to store each piece of information in a separate file. I inspected the files with parse-edid and wxedid and gave them meaningful names such as:
Please do not forget to switch your cables around to get the other inputs also. For each monitor that is fully functional you should have two EDID files—one for the analog and another for the digital input.
The method above seems to work only for the EDID that were recognized as valid. For any others (and hopefully it is just one) we will use the eeprom driver:
The folder contains a bunch of devices and buses but we only care about those with a start offset of 0x50. The data is similar to the edid data above, but here you get the actual hardware contents. In my case, all monitors used 256 byte EEPROMS.
Once again I used cat to save the data returned by each of the eeprom devices. Unlike the EDIDs, which can be of variable length, all data here was 256 bytes long (although all higher bytes were empty).
Use tools like parse-edid, hexdump or wxedid to figure out which eeprom corresponds to the broken EDID. (You may have to tell wxedid to ignore the checksum.) Make a copy of the broken file.
An early version of the service manual for my monitor stated that both analog and digital EDIDs were identical. Initially, simply programmed the working analog data into the broken digital input. Still, the monitor was not recognized on reboot (although I now think it was a cabling issue). That is how I ended up patching the digital file.
I opened up two instances of wxedid. One was for the working and another for the broken EDID, respectively. (Again, you may have to tell the program to ignore the checksum on the broken file.) I then adjusted a few parts of the broken digital data to look more like the working analog copy.
When I asked wxedid to compute the checksum—hey presto—it matched the existing record. The data I added probably restored the EDID to what it was once. I used wxedid to save it as a *.bin file. The length was 128 bytes long, which was what I expected.
Some of the hexdumps can look a little different from one to another. In my case, some were on a byte basis, while another used two-byte words. Just make sure you are looking at the same thing. Again, the broken EDID should be in the bus number you memorized above.
Writing to EEPROMs is a very dangerous operation. You can literally destroy your computer. You just have to write to the wrong place, or perhaps write too much data. There is particular risk with your DRAM chips.
Serious EEPROM programmers should use other software options instead. The i2c-tools maintainers only ship a version that changes a single byte, but it is enough for us.
Finally, please verify with i2cdump that the EEPROM contains the correct data now. Reboot to see if your BIOS and the Linux kernel agree with your assessment.
In my case, I encountered a vexing problem. Even though the data in the EEPROM was clearly correct, neither the BIOS nor the kernel accepted the first EDID during reboots (and dmesg showed it was defective).
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.
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 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 0x50. 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-edidMicrosoft Windows and the X.Org Server for Linux and BSD unix. Mac OS X natively reads EDID information and programs such as SwitchResX
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 supports dual GTF timings and aspect ratio change.
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 wide screen flat panel displays and liquid crystal display televisions. The number of vertical pixels is calculated from the horizontal resolution and the selected aspect ratio. To be fully expressible, the size of wide screen 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.
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.
The CEA EDID Timing Extension was first introduced in EIA/CEA-861, and has since been updated several times, most notably with the 861-B revision (which was version 3 of the extension, adding Short Video Descriptors and advanced audio capability/configuration information), 861-D (published in July 2006 and containing updates to the audio segments), 861-E in 2008, and 861-F which was published on June 4, 2013.
Version 1 of the extension block (as defined in CEA−861) allowed the specification of video timings only through the use of 18-byte Detailed Timing Descriptors (DTD) (as detailed in EDID 1.3 data format above). In all cases, the "preferred" timing should be the first DTD listed in a CEA EDID Timing Extension.
The invention discloses an extended display identification data (EDID) burning method for a Display Port liquid crystal display. In the method, the EDID is burnt onto port storages of the liquid crystal display by a personal computer (PC), a burner, a burning program and liquid crystal display MCU (singlechip) software. In the method, the EDID is first burnt onto VGA and DVI port storages according to an IIC communication protocol and then directly burnt onto a Display Port port storage through the VGA port according to a DDC/CI communication protocol. The method provided by the invention has the advantages that: the EDID data can be burnt onto the VGA, DVI and Display Port ports by simply one burning system; and the burning of the EDID is accurate, convenient, efficient and low in cost.
Technical field the present invention relates to the data burning field of LCD, relates in particular to the method for a kind of liquid crystal display (LCD) DDC off-line burning.
The background technology LCD generally comprises VGA (Video Graphics Array) analog signal interface, DVI (Digital Visual Interface) digital signal interface; These interfaces carry out data communication through DDC (Digital Display Channel DDC) with main frame; The data of DDC transmission are called EDID (Extended Display Identification Data extending display identification data); EDID comprises the basic parameter of display device, like data such as manufacturer, name of product, maximum row field frequency, supported resolution.
Novel LCD also has additional digital signal Display Port interface; DisplayPort is the interface specification by VESA (VESA) approval, and its main advantage is to have very high message transmission rate, connects easily, perfect content protecting and based on the data transfer mode of packet switch.The EDID data length has two kinds of 128 bytes and 256 bytes, and the EDID data of VGA, DVI and Display Port interface memory stored all are 128 bytes at present.
Every LCD all need be write the EDID data in each interface memory through burning program; Existing technology generally is through the homemade cd-rom recorder of manufacturer and supporting burning program each interface of every machine to be carried out burning; Because the structure of VGA, DVI interface is different with the structure of DisplayPort interface; Burning Display Port interface need increase an independent burning of interface card extender, its burning efficient is low, needs the special-purpose programming system of many covers, burning cost height again.
Summary of the invention the object of the invention provides a kind of low cost, high efficiency Display Port liquid crystal display EDID method for burn-recording.
The present invention adopts following technical scheme: the present invention utilizes PC computing machine, cd-rom recorder, burning program and LCD MCU (single-chip microcomputer) software EDID to be burnt in each interface memory of LCD; The present invention according to IIC (Inter-Integrated Circuit is the I2C bus) communication protocol with the EDID data burning in VGA, DVI interface memory, more directly through the VGA interface according to DDC/CI communication protocol with the EDID data burning in Display Port interface memory.DDC/CI communication protocol is based on a semiduplex communication protocol of IIC communication protocol, and each interface memory type is generally EEPROM.
Describedly directly through the VGA interface according to DDC/CI communication protocol with the EDID data burning to the flow process in the Display Port interface memory be: burning program sends the flag of EDID data earlier and gives LCD MCU software; LCD MCU software is prepared to receive after receiving flag; Burning program is divided into 7 transmissions with 128 bytes of the EDID data of LCD Display Port interface; Transmit 20 byte datas to LCD MCU software according to DDC/CI communication protocol is each, every the data that LCD MCU software will receive are again all deposited the corresponding memory location of EDID in the Display Port interface memory.
After described burning program has transmitted data; Burning program check (CRC) (the Cyclic Redundancy Check CRC) flag of redispatching; LCD MCU software calculates the CRC check sign indicating number after receiving flag; Return to burning program to verify whether burning is qualified to the CRC check sign indicating number again, remove flag, show qualified information, just remove flag and show the burning error message as verifying that burning is defective like the qualified back of checking burning.
Adopt method provided by the invention, only need to use the EDID data the writable VGA of cover programming system, DVI interface and Display Port interface, burning EDID data are accurately convenient, efficient is high, the burning cost is low.
Embodiment is as shown in Figure 1; The present invention adopts PC computing machine 1, cd-rom recorder 2, burning program 3 and LCD MCU software 4 EDID to be burnt in each interface memory 5 of LCD; The present invention according to IIC communication protocol with the EDID data burning in VGA, DVI interface memory 51, more directly through the VGA interface according to DDC/CI communication protocol with the EDID data burning in Display Port interface memory 52.
As shown in Figure 2; Directly through the VGA interface according to DDC/CI communication protocol with the EDID data burning to the flow process in the Display Port interface memory be: burning program sends the flag of EDID data earlier and gives LCD MCU software; LCD MCU software is prepared to receive after receiving flag; Burning program is divided into 7 transmissions according to DDC/CI communication protocol with 128 bytes of the EDID data of the Display Port interface of LCD; 20 byte datas of each transmission are given LCD MCU software, and LCD MCU software is deposited the corresponding address of Display Port interface memory EEPROM 24C16 with the data that receive.After data transmit and accomplish; Burning program sends the check (CRC) flag; LCD MCU software calculates the CRC check sign indicating number after receiving flag; Return to burning program to verify whether burning is qualified to the CRC check sign indicating number again, remove flag, show qualified information, just remove flag and show the burning error message as verifying that burning is defective like the qualified back of checking burning.
1. Display Port liquid crystal display EDID method for burn-recording; It is characterized in that: utilize PC computing machine, cd-rom recorder, burning program and LCD MCU software EDID to be burnt in each interface memory of LCD; According to IIC communication protocol with the EDID data burning in VGA, DVI interface memory, more directly through the VGA interface according to DDC/CI communication protocol with the EDID data burning in the DisplayPort interface memory; Describedly directly through the VGA interface according to DDC/CI communication protocol with the EDID data burning to the flow process in the Display Port interface memory be: burning program sends the flag of EDID data earlier and gives LCD MCU software; LCD MCU software is prepared to receive after receiving flag; Burning program is divided into 7 transmissions with 128 bytes of the EDID data of LCD Display Port interface; Transmit 20 byte datas to LCD MCU software according to DDC/CI communication protocol is each, every the data that LCD MCU software will receive are again all deposited the corresponding memory location of EDID in the Display Port interface memory; After described burning program has transmitted data; The burning program check (CRC) flag of redispatching; LCD MCU software calculates the CRC check sign indicating number after receiving flag; Return to burning program to verify whether burning is qualified to the CRC check sign indicating number again, remove flag, show qualified information, just remove flag and show the burning error message as verifying that burning is defective like the qualified back of checking burning.
I get the above error message and bluescreen when the computer is just sitting idle does nothing. Usually, it"s when the internet is open, but not surf. Can someone help me understand this. The graphics card is an Intel 82945 G express shipset family and I checked to see if it is up-to-date and the pilot said he is up to date.
Service driver or defective peripheral system. A chauffeur service or defective peripheral system could be responsible for this error. The hardware problems, such as BIOS incompatibilities, conflicts of memory and IRQ conflicts can also generate this error.
If the verification of the message bug list a driver by name, disable or remove that driver. In addition, disable or remove drivers or services that have been recently added. If the error occurs during the startup sequence and the system partition is formatted with the NTFS file system, you may be able to use Safe Mode to rename or to delete the faulty driver. If the driver is used as part of the start-up procedure of the system Safe Mode, you must start the computer by using the Recovery Console to access the file.
If the problem is associated with Win32k.sys, the source of the error may be a third-party remote control program. If this software is installed, you can remove the system startup service using the recovery and then Console by removing the offending system service file.
Check the system log in Event Viewer for additional error messages that might help identify the device or driver responsible for control of bug 0x1E. You can disable the cache in memory of the BIOS to try to resolve the error. You must also run the diagnostics of material, especially the scanner memory, which provides the manufacturer of the system. For more information about these procedures, see the manual of your computer.
The error that generates this message may occur after the first reboot during Windows Setup, or after installation is complete. A possible cause of the error is lack of disk space for installation and the system BIOS incompatibilities. For any problems during the installation of Windows that are associated with lack of disk space, reduce the number of files on the hard disk drive target. Search and delete temporary files that you do not have to have, files hidden Internet, application backup files and files saved.chk, which contain fragments of files on disk scans. You can also use an another hard disk drive with more free space for the installation.
I also tried holding the "D" key and powering up. The LCD flashed a series of solid color screens (Red, Green, Blue, White, Black). I assume that this means that the backlight is good. Does it also mean that the cable is good?
Not sure what else to check. I am guessing that it is eiter the LCD screen (controller board) itself or the cable. Any advice? I am comfortable replacing parts.