Monday, April 22, 2013

Connecting an iPad retina LCD to a PC

 Update: please read this post

This project was born at the Warsaw Hackerspace, it was funded by my friend Spin, who wanted to use the display in a project of his.

In short, I've managed to drive the iPad retina display at maximum resolution from a regular PC with DisplayPort, no additional electronics required!

This is just a prototype, I'm working on a professional PCB with a DP connector so no wire splicing will be required in the future. :)


The screen

The "retina" LCD panel is LP097QX1-SPA1 manufactured by LG.
It's a 9.7" panel with a resolution of 2048x1536!
It's not exclusive to Apple, it can already be found in a couple of Chinese tablets.


What is great about this panel (except its resolution) is that it has an eDisplayPort interface (which is supposed to replace LVDS in the near future), and as this hack proves it is compatible  with traditional DisplayPort outputs found on all modern video cards.

The panel is also surprisingly cheap - I got mine on ebay for $55, shipped from China.

Hoping that eDisplayPort is compatible with regular DisplayPort (I couldn't find conclusive proof of this), I went on to interface the panel with a DP cable.

The interface board






The FPC of the panel has 51 really tiny pins, and requires a special connector to mate with a PCB. You can find it online just by looking for "ipad3 lcd connector", but I've figured out that it's a Molex 502250-5191 connector. The cheapest I could find was $14 for two of them at aliexpress.


Creating the PCB was fairly straightforward, I just had to route all the FPC connector pins out to pads where I would solder DP cable wires. It was possible on a single-sided home-made board.
I tried to make the traces for DP lanes to be of the same length (that's very important for high speed differential signals), and as it turns out, either my PCB design is pretty good, or DisplayPort is very forgiving. :)

Soldering everything was a little difficult, the FPC connector has tiny pins, but they stick out a little bit, so it's doable with a regular soldering iron.
After the PCB was done, I cut open a DP cable and soldered all the wires in their places.
Unfortunately there is no standard for wire colors, so I had to open up the DP plug to trace them to the correct pins.

You can find the schematics and PCB layout on github.

Power and backlight

The panel itself can be powered from the DP connector, as it should provide 3.3V at 500mA, which is enough for the logic. Although that power is meant for an active cable, so I had to solder an additional wire to a regular "dumb" cable I was using.

The backlight requires some external power source, as it can consume up to 4.4W.
The datasheet is very misleading about driving the backlight, it only mentions something about "12V driver voltage", which is not the proper voltage (fortunately it's too low).
After finding iPad3 schematics, I've found out that the backlight actually requires 20V for operation, as it consists of 12 LED strings, with 6 white LEDs in series, each.

For the prototype, I didn't bother with a proper LED driver, just attached 68R resistors to each cathode, which resulted in a current draw of about 17mA per string.
The 20V was generated from a 5V using a TPS61175 step-up converter.

Results

It works! No glitches at full resolution.
The whole thing cost about $70 in parts.
Here are some pictures for your enjoyment. Believe me, the display looks much better when viewed in person.