reverse engineering lcd display made in china

The current marketplace allows hobbyists to easily find inexpensive, well-documented displays, but what if you wanted to interface with something more complicated, such as the screen on an iPod Nano 6? [Mike] has given us a detailed and insightful video showing his process for reverse engineering a device with little-to-no documentation. Here he covers the initial investigation, where one scours the web in search of any available information. In [Mike’s] example, the display uses an MIPI D-PHY interface, which he has never worked with. He learns that the MIPI Alliance will provide design specs in exchange for a signed NDA (Non-Disclosure Agreement) and a modest $8000 fee. Nice.

[Mike] shows off some serious hardware hackery, tackling some extremely difficult soldering in order to set up a proper test platform. He then demonstrates how to use a rather awesome oscilloscope to better understand the display protocol. We found it fascinating to see the video signals displayed as waveforms, especially when he shows how it is possible to count the individual binary values. The amount of information he uncovers with the oscilloscope is nothing short of amazing, proving these little devices are more complex than they seem.

reverse engineering lcd display made in china

Next check the display response by changing the signal inputs and recording the response. You don’t need to record everything the display does just if it changes or not and if the display goes out. Since Pin 1 is negative voltage and no signal, and pin two is 0 voltage and no signal we can assume they are Vss. and ground.

Pin 3 and 4 are fixed high so start with Pin 5 checking one pin at a time, fix the voltage too high, or in this case 2.3 volts and observe what happens to the display.

Record the response of pin 5 then move to Pin 6 fixing it to high then observe the response on the display and record it. Continue with this process for pin 7 and pin 8. The changes on the display were funky symbols in the alphanumeric segments and random lighting up of the custom bar. You may notice the response only affects the custom bar or the alphanumeric bars make note of that because the pin data inputs may be bar specific.

Starting with Pin 3 start checking one pin at a time, fix the voltage to low or in this case 0 volts and observe what happens to the display. Pin 3 and 4 when set low shut down the display, pins 5 to 8 when set to low or 0 volts made different symbols in the alphanumeric segments, and different random lighting up of the symbols in the custom bar.

reverse engineering lcd display made in china

Welcome to what will probably be the last in the series of articles in which I reverse engineer one of the Nokia QVGA cellphone displays from the pre-smartphone era. I think that by now I’ve covered every possible aspect of these incredibly cost effective little displays and hopefully opened up new avenues for hobbyists needing a richer display experience than they can get with a simple character LCD.

If you’ve been following these articles then you’ll know that I’ve successfully reverse engineered the 2730, 6300, N82 and N95 8Gb displays. Each one is readily and cheaply available on ebay making them ideal for incorporation into your microcontroller projects. All of my reverse engineering efforts have been accompanied by free, open-source libraries for the Arduino and the STM32.

In this final article I will tackle the N93 2.4″ display, which at the time of writing is available for just a few pounds, dollars or euros on ebay. Let’s see how I get on.

The physical LCD is the same layout as all the previous Nokia LCDs that I’ve tackled. A short FPC cable runs from the LCD and is terminated by a board-to-board connector at the end.

The type of connector is usually a primary source of concern when reverse-engineering a cellphone LCD. Fortunately for me I discovered early on that the 24-pin 0.4mm pitch connector is made by a company called JST. The part number is 24R-JANK-GSAN-TF. Here’s the datasheet.

Determining the connector pinout was not difficult. A little googling quickly unearthed the cellphone repair manual and schematic. Once the LCD connector was located in the schematic it was a simple matter of matching up pins 1..24 with the physical device.

It’s become something of a tradition for me to prove the reverse engineering by designing a development board for the Arduino Mega and I’ll continue that tradition here.

Before producing the LCD development board I verified that the level conversion strategy would work by hacking up some wires to the leads of the IC and verifying that an input level of 5V would be correctly converted down to 3.3V.

The schematic image shows the display connector, level converter, backlight circuit and arduino connector all linked together. I decided to add a small amount of capacitance to the active-low RESET line to enhance its stability. I’ve never seen any unexpected resets in any of my boards but I note that all the official Nokia schematics add capacitance here so I’ve followed suit this time.

The most critical part of this layout is the positioning of the LCD connector. It has to be accurately placed so that the LCD, when connected, wraps around the board and sits perfectly on the other side mounted on double-sided sticky pads to lift it clear of the board traces. In the above image pin 1 of the LCD connector is down the bottom right.

Only now, several weeks after starting do I get to see if the whole thing works. I’m hopeful though, given the success of the previous reverse-engineering efforts.

I quickly determined that the LCD controller is much the same as the 2730, 6300 and N82 with only minor differences around the commands that control the orientation. We don’t really know the official identity of this controller but it’s close enough to the MagnaChip MC2PA8201 that we can work from its datasheet with a high degree of confidence.

Here’s a short demo video on YouTube that shows the LCD board in action. Click on the ‘YouTube’ logo at the bottom right to watch it in a larger format at the YouTube site.

I’ve constructed the remaining PCBs that I have and am selling them on a first come first served basis. The price including delivery is £16.90 for UK and £18.49 for anywhere else in the world. They come with the LCD fitted and are ready to plug in and play. The LCD is one of the high quality ‘original Nokia’ models described in the above article.

reverse engineering lcd display made in china

OK, “reverse engineering” is a bit of an exaggeration here, but that was essentially the vibe when I first hooked up my mystery LCD component to an Arduino Nano.

I’m not big on either Fritzing or Eagle, so I made a sketch of the wiring for you in Excalidraw :) The only thing that might need some explanation here is the 330Ω resistor between GND and the Nano board’s 3.3V output. I’m powering the board over USB, which is 5V. The 3.3V output comes from the on-board voltage regulator, but with no load I’m getting a higher voltage. The LCD component doesn’t like that: the off segments are turning black at a normal viewing angle. So I just did the easiest hack I could think of and added the resistor to create some load on the 3.3V VCC pin. This helps just enough, so I’m leaving it at this.

That is actually... splendid news! The board can clearly talk to the LCD component, information is getting transmitted, and the display’s segments get turned on and off in response.

All that’s left is to figure out which bit in the library’s buffer corresponds to which segment on my display, because apparently this component is wired very differently from what Valerio was working with.

The original library has a 6-byte buffer, and always transmits all of it when updating the display. For some related display drivers that can control more segments this makes sense. But with my 32-segment LCD, only 4 bytes are ever used, so I reduced the buffer and don’t transmit the always-zero 16 bits during updates.

I removed all functionality related to encoding digits and characters and moved that to a separate class. I consider that a different, higher layer; my HT1621 class only deals with controlling the display’s segments based on the bit values in a 4-byte buffer.

reverse engineering lcd display made in china

We received an inquiry about fridge PCBA reverse engineering project.We got 4 PCBA samples, two of them are LED PCB, another two boards are main control board and LCD board. We have rich experience of PCB and PCBA reverse engineering and we have a professional engineer mainly do reverse engineering work.

The PCB are all single layer,board material is FR4, with green solder mask and white silk print. The surface finishing is HASL. The board size is 208*36mm and 197*148mm.The LCD board also a FR4 PCB, single layer, with green solder mask and white silk print. But the LCD component is not very common. It"s a order made type,in future batch order, we must open a mould to make that LCD screen. The two LED boards, those are aluminum base material, just for light on when open the door of fridge. so we mustn"t make same as the samples. Our engineer found ones with same dimension, this way could save lot of cost for our customer.

There are two main difficulty in this reverse engineering project. One is that LCD screen, as this component is a order made one, there"s no a same one in the market. If customer want to clone a same one, we must to open a mold. But at the first step ,our customer only want make 1 sample to check if it could work well, they don"t want spend so much money on this sample checking step. So our engineer suggest use the LCD screen on the sample that customer sent us before. In this way, we needn"t to open the mold, this way save time and money for our customer. Our customer feel it"s a good idea and agree with us.One more difficulty is IC Decryption. There are two IC on the main control board. All of them need do IC Decryption. Chip decryption is also known as single-chip decryption (IC decryption). Since the MCU chips in the official product are all encrypted, the program cannot be read directly by using the programmer. Chip decryption is to directly obtain the burned file in the encrypted MCU through certain equipment and methods. You can copy the chip yourself or disassemble your own reference research. This time we have to do the chip decryption, the program is complex, and both exist at the bottom of the chip, which adds a lot of difficulty to our chip decryption. After decryption, we can guarantee that the function of the sample is the same as that of the original customer. It can be obtained by burning the file (machine language) to the customer, and the customer can freely write it.

reverse engineering lcd display made in china

But it has started me down a rabbit-hole of looking into LCD Panel technologies, as there are a lot of otherwise cool 486 laptops out there (or even older) that could possibly be capable of color, if not an Active Matrix Panel.

STN Monochrome screens typically have 14-16 pin connections on a single wire, the 14 pin units don"t have an on-board ballast on the screen for the CCFL backlight(s). Those with more pins do. I did some digging and found a article on salvaging LCDs and found a general pinout to go by that might work....typically it consists of sync for halves of the screen - https://www.instructables.com/Salvaging-Liquid-Crystal-Displays-LCDs/

DTSN Screens are similar but include 2 Latches - per the Sharp LM64C031 640x480 9.4" LCD Single Scan STN LCD Pinout below - this is a Color LCD - it has 18 pins and the Ballast for the backlights, I assume, is an external part.

The Graphics chipset is likely near the center, on the other side of the board. The connectors are right under the keyboard, and like the NEC Versa, there are THREE of them, each going to their own connectors. These three plug into a board inside the screen assembly that splits off into one 14 pin cable that runs to the LCD, and then a series of chokes and a transformer for the power to the CCFL backlight. The idea I have is if I can figure out the pinout to the graphics cables, and match the data lines up to a NLt6448AC30 - I could very likely put a TFT Active Matrix NEC panel in this laptop computer. The screw holes even seemed to match (are industrial panels standardized in hole placement?).

reverse engineering lcd display made in china

Reverse Engineering Stack Exchange is a question and answer site for researchers and developers who explore the principles of a system through analysis of its structure, function, and operation. It only takes a minute to sign up.

reverse engineering lcd display made in china

Random LCDs are notoriously hard to reverse engineer, and not worth it unless you have a stack of 10,000 of them. Consider using a more common part with lots of support, like a Nokia 5110, 1602 LCD, or one of the many modules that are brought up with a quick search on eBay. These are dirt cheap, have pre-written drivers, and are going to actually work.

If you"re dead set on reverse engineering it, I would start here http://www.eevblog.com/forum/projects/reverse-engineering-lcd-from-ipod-nano-v6/ to learn what you"re up against.

reverse engineering lcd display made in china

No point being irked by the epoxy blobs, they are every bit as good (or better) than having the same IC in a DIP package. Either you have the datasheet, or you do not. Does the LCD have another chip on it? I suspect from your description that by "LCD" you mean the actual glass display unit itself, in which case it is pretty much a waste of time considering driving it with the necessary voltages even if you knew what they were. The chip in the "blob" is already made to drive them, and that is it.

reverse engineering lcd display made in china

This is an intro to the FPD-Link display interface, commonly used in laptop and monitor LCD panels. Information surrounding the exact nature of this interface is scattered all over the internet, so I wrote this article to try and make it easier to understand, and potentially useable in your own projects!

FPD-Link is also known as simply "LVDS", although this is technically incorrect since this refers to just the electrical interface, and LVDS is used for many other interfaces too. The actual interface is called FPD-Link (or also FlatLink by some manufacturers), and describes a general interface for connecting LCD panels to graphics controllers, much like VGA or DVI. However it doesn"t describe an exact data format, so many different options exist for different panels, making it not quite as inter-operable as VGA or DVI.

Fortunately you"ll find most (old) laptop LCD panels will use a de-facto format, so it"s actually not too hard to re-use the screens out of that old stack of laptops you have in the basement!

Flat Panel Display Link (FPD-Link) was created by National Semiconductor as a free and open standard for connecting the output of a GPU or video processor to an LCD panel"s timing controller. It superseeds TTL/CMOS parallel interfaces which were very limited in the resolution they could achieve[1]. Although FPD-Link itself is becoming outdated with the rise of next generation LCD monitors (2440p and 4K!), it is still used in most current generation laptops and desktop monitors. You can read more about the FPD-Link standard in Texas Instruments" app-note[2].

At it"s core, FPD-Link uses a number of Low-Voltage Differential Signalling (LVDS) pairs in order to transfer video data over a high speed link, which is then de-serialized in the LCD panel and used to drive the display. Even though it has less wires than a parallel interface, it allows for much higher speeds due to increased noise tolerance and capabilities of the LVDS pairs (much like how SATA proivdes faster speeds for hard disks than IDE/PATA).

The video data sent to the display consists of raw RGB pixels, plus synchronization and control signals (HSYNC, VSYNC, and DE). This is the same as other video interfaces such as TTL Parallel, VGA, DVI, etc.

FPD-Link serializes this data into channels containing 7 bits of data per clock cycle, as shown in Figure 2. For a typical video interface with 18 bits per pixel (bpp), there are 21 bits of data per clock serialized into a total of 4 LVDS channels (3 data + 1 clock, or "3D+1C"). There are of course many other configurations possible depending on the number of links and data bits. For example, a dual-link 24 bpp interface (common in desktop monitors) would use 2x 4 LVDS data channels + 2 LVDS clock channels, or "8D+2C". Looking at the pairs of wires on the LCD"s circuit board can provide a very good hint as to which format it uses!

The actual layout of bits in this serial stream varies depending on how the manufacturer has decided to implement it, and is described in the Data Framing section below. For 18 bpp displays there is only one specfic format used, but FPD-Link itself is not limited to just 18 bpp video.

FPD-Link has a maximum bandwidth of somewhere around 130Mpps (Mega pixels per second)[3] depending on the transceiver, while the LVDS channels operate at 7x this rate. This limits the maximum allowable resolution to about 1280x800@60Hz. It is usually not possible to drive a 1920x1080p display at 60Hz with just one FPD-Link channel, so two channels are doubled up to support higher resolutions. Some extra high resolution monitors may even use up to 4 FPDLink channels, or eDP (embedded Display Port, a completely different protocol) to further increase the bandwidth.

Most old laptop LCDs will likely be 18 bits per pixel (6 bits per colour), and thus use 3 LVDS data pairs and 1 LVDS clock pair (3D+1C). A total of 21 bits are serialized, and the layout inside the LVDS stream is shown in the following timing diagram:[4] [5]

Some transceivers may even support 30 bit RGB data[6], which use an additional channel (5 LVDS data channels in total). I"m unsure on the exact format of this data as I don"t have any 30 bit LCD panels.

The data framing format is only half the story when interfacing with an FPD-Link display; the synchronization and timing are also important to ensure the pixels the panel receives actually match the physical panel! This is done through the HSYNC, VYSNC, and DE synchronization signals. It"s not immediately obvious, but not all pixels transmitted are actually displayed - some end up in the so called "blank-time" interval. This is a leftover artifact from the days of CRT monitors when the electron beam actually needed time to move between rows and frames![7] For backwards compatibility the blank-time is still present in DVI & VGA outputs, which is sad because it"s not required at all in digital panels!

If you have a datasheet for your LCD panel, it will usually include a timing diagram specifying the values you should use to display a valid picture. This information is also reflected in the panel"s EDID (if present). Generally this information can be represented in the form of a Coordinated Video Timing (CVT), a VESA standard specifying common timing formats for different resolutions[9].

Some next-gen monitors are moving to a eDP (embedded Display Port), which is pretty much just display port, so it is possible to connect such a display directly to a display port capable video card. I will not go into more detail about it here since I don"t have any of these types of display panels, and my computer doesn"t have display port anyway! However I have heard you can obtain iPad displays cheaply online which use eDP, and can be used as a secondary high-DPI monitor with a simple re-wired display port cable and backlight driver.[12] [13] [14]

MIPI DSI is another protocol widely used in current-gen smartphone/tablet LCDs. It is lower power than FPD-Link and supports higher resolutions. Unfortunately the standard isn"t available to the public so it"s shrouded in mystery, although I have seen one project successfully interface such a display through the use of an FPGA[15], and another project reverse engineering the iPod nano LCD[16]. The popular Raspberry Pi also has a MIPI DSI connector for driving an LCD, but as of the time of writing there is no information on how to use it.

Extended Display Identification Data (EDID) is used as a way to tell the host computer how to drive the panel, and what formats it supports[17]. It"s simply a 256 byte EEPROM chip that communicates over I2C, and both VGA and DVI cables provide signals for this. It makes it possible to connect a panel to a computer and have the computer automatically know what resolution it should output.

This makes re-using an LCD panel a lot easier, since the computer will know exactly how to drive your panel! (provided you have an appropriate LVDS driver)

DISCLAIMER: Reverse-engineering is tricky buisiness. You may permanently damage either your panel or laptop, so don"t do it on anything important! You are responsible for your own safety.

If you don"t have a datsheet for your LCD panel, it is still possible to re-use it with some reverse-engineering skills. This is easiest if you have the LCD connected to a working laptop so you can probe the signals.

The LVDS wires should also be easy to locate - they are always routed as pairs on the PCB, and the wires may be twisted or shielded. For a laptop LCD there should be 3-4 pairs.

There are two main types of backlighting in LCD panels: CCFL (Flurorescent), and LED. CCFL was widely used in older laptops before LED backlights came around, and are pretty obvious because you will find a large inverter module with a transformer on it, probably covered in "Warning: High Voltage!" stickers. These transformers usually have multiple pins: +V, GND, and Enable/Dimming pins. +V is usually either +12V or +5V.

LED backlights result in much thinner displays, and usually need a dedicated driver, which may or may not be built into the LCD panel. LED backlights may be split into an Anode and several Cathode wires, consiting of several "strings" of LEDs.

If you want to use an LVDS LCD panel with a computer or SBC, you will need to find a way to interface it with your device. Since most computers/SBCs don"t have LVDS outputs, you will probably need an HDMI/DVI to LVDS converter board. Here are some options for interfacing:

Apparently you can ask the seller to match the driver board to your LCD"s datasheet, although I"ve never tried this. It should mostly just work with your panel provided it has an EDID chip.

It is very straight-forward[23] - all it does is convert HDMI to TTL parallel to LVDS. There is no on-screen display or scaling involved, so whatever your computer outputs is what is displayed!

In all the above cases you will need to ensure the data format of your LCD panel matches the data format of your LVDS driver. As mentioned earlier, the most common format for old LCD panels is 18bpp (3D+1C), which is compatible with a 24bpp LSB driver (since the 4th output channel Y3 can be ommitted)

reverse engineering lcd display made in china

Let’s put it like this: by using only publicly available sources, to undertake the virtual reverse engineering of the original device MX-5200 and end up with the design of a consumer-class single-channel high-frequency waveform oscillator with the output power of 80W, which will replicate the functionality of the original soldering station as much as possible.

Let’s quickly consider some common circuit design solutions. For example, the circuit can be powered with a low-frequency toroidal core transformer. Hold on, let’s rather use a resonant LLC transformer with a rare microchip HiperLCS from Power Integrations: I’ve long been meaning to work with it. Let’s also take a more up-to-date step-down transformer to control the output power and see if we can possibly get 5A out of a SO-8 package. Wait a minute, can a project survive without an Arduino, a sketch, and a LED? Let’s also add a STM32 chip and a small display for showing the current output power. To make things simple, we’ll measure the power in the HF generator power circuit; as for efficiency, we’ll take it into account (or shall we ignore it) in the software. We’ll use a metal case of the right size, which will serve both as a shield and a heatsink at the same time.

To power the driver and pre-amplifier, let’s take the 12V unregulated voltage off the second coil of the LLC converter. The current drain on the rest of the board will be negligible, so to power the 5V controller and to light up the LCD display, we’ll use the domestically produced linear regulator KR142EN5A, whereas the 3.3V line for the MCU will be regulated by the miniscule LD2985.

Well, just a few more things to do. The original station has an LCD which, for the price you’ve paid, displays a resemblance of the output power. Let’s do something similar: we’ll take the STM32F030 controller in its minimum configuration (in a TSSOP-20 package). One of the inputs of the A/D converter will measure the supply voltage of the output stage in the HF generator, while the other input will measure the current. To avoid breaking the ground circuit, we’ll attach the current sensing resistor to the positive wire and implement level shifting using the special-purpose INA138 chip, a design of Burr-Brown in its glorious days. To display information, let’s use a text OLED with a 16x2 resolution made by WinStar. That’s it in a nutshell. Wait, we have left one processor pin unoccupied. Well, let it blink a LED then. Don’t ask me why.

The controller firmware was written in C language using STM32CubeMX and the free version of IAR Embedded Workbench. The code is quite trivial. At the tick of the system timer, once in 300ms, the main loop reads data from the two channels of the A/D converter, multiplies them and sends to the display as the power reading. In the bottom of the screen, the power value gets visualized in a bar rendered with customized fonts. Upon the switching-off of the soldering tip, the handler of the interrupt coming from the output of the load detector stops the reference timer of the HF oscillator. To insure against any freezing or fault in the MCU, I have added handlers for hardware errors and the watchdog timer signals; the firmware also employs the CSS (Clock Security System) technology that, in case of a damp in the oscillations of the primary crystal resonator, switches to the built-in RC oscillator and relaunches the microcontroller. The total size of the firmware is 10 KB. I uploaded the source code of the firmware together with the other project files to GitHub for the most curious of you to take a look (but don’t expect anything extraordinary there).

The diagram and PCB layout were prepared using DipTrace, with the drawings converted to the Gerber format for further dispatch to the manufacturing plant. The PCB layout is made to fit closely into the device case, with one entire layer covered with a ground plane to shield fragile low-current circuitry. Such layout makes it much easier to manufacture the board at home, as it does not require any precise alignment of photo templates: you can fill almost the entire reverse surface of the board with one solid plane and then use a thick drill to make hole bevels around those pins that do not need to be grounded.

Unfortunately, the idea of connecting a more contrast OLED instead of an LCD came to me well after I had sent my PCB order to the manufacturing plant. The input CMOS levels of an WEH001602AGPP5N00001 OLED from WinStar are different from the standard TTL levels of an LCD, so the trick with feeding +5V to the display controller and its lighting, and then reading the logic signals from the microprocessor powered from +3.3V won’t work here. I had to connect the display to a 3.3V line using a separate wire.

To reduce noise, I installed 390 Ohm interference-suppressing resistors into the bus connecting the PCB and the display, and covered the microcontroller with a copper foil shield. Under normal operation, the programming connector must be covered with a female part that grounds the debug pins directly and the NRST pin – via a capacitor.

reverse engineering lcd display made in china

SEOUL (Reuters) - Chinese flat screen makers, once dismissed as second-class players in the global LCD market, are drawing envious looks from big names such as LG Display Co Ltd and Samsung.A man walks out of the headquarters of LG Display in Seoul, October 20, 2011. REUTERS/Jo Yong-Hak

While the Korean giants were busy developing next-generation organic light emitting diode (OLED) TVs, little-known Chinese companies have started selling a type of display that are sharper than the standard LCD and cheaper than OLED.

Until last year, the UHD market had been almost non-existent, with just 33,000 sets sold in the 200 million-unit LCD TV market. Since then, shipments have soared around 20-fold, thanks to China, data from research firm IHS shows.

Chinese consumers who want brighter and sharper images but can’t afford OLED screens made by LG and Samsung Display, a unit of Samsung Electronics Co Ltd, are turning to UHD.

But its slow introduction into the market and austere prices have thrown open a window of opportunity for UHD makers, in this case Chinese companies like BOE Technology Group Co Ltd and TCL Corp’s LCD unit CSOT.

“We assumed it’ll be too early for this type of display to take off, and thus didn’t think much of having diverse UHD product line-ups, especially in the low end. But I think we are not late just yet and we are working hard to lead the market here.”

By comparison, Japanese flat-screen pioneer Sharp Corp reported a razor-thin 0.5 percent margin. LG Display, the world’s No.1 LCD maker, posted a 5.6 percent margin.

Samsung Display, a unit of Samsung Electronics, had a margin of 13 percent, the biggest in the industry. But excluding its fledging OLED business, its LCD margin is between 3 and 7 percent, according to a Bernstein forecast.

Jolted by the reality of a growing UHD market, Samsung Electronics unveiled a 110-inch UHD TV in January. Interestingly, the UHD displays were not made by Samsung Display, but were produced by Taiwan’s AU Optronics.

“Even with some expansion of the Chinese panel suppliers we do expect Samsung and LG Display to stay dominant and continue production in LCD,” said Sweta Dash, director at IHS.

While Samsung and LG Display are investing billions of dollars in OLED this year, the two giants are also broadening their product lineups to include more popular 50 to 60-inch UHD models.

BOE Technology is now planning to raise 46 billion yuan ($7.5 billion) in the biggest Chinese equity offering this year, to build panel production lines and increase its stake in its LCD venture BOE Display Technology.