Megapixy, part 2: hello iPad.

in my last update, i assembled a mediocre monitor using an AU Optronics LCD panel. it required an LCD control board to act as an HDMI-to-LVDS converter, for LVDS is the language of most LCD panels.

 old-fashioned LCD panel requiring an LVDS converter to connect to a computer.

old-fashioned LCD panel requiring an LVDS converter to connect to a computer.

but LVDS is losing popularity. as our phones & tablets keep shrinking, how can anyone make room for that LVDS-converter chip? the logical solution is to build a standard ('not LVDS') video interface into the panel, to connect it directly to your graphics card.

the embedded Displayport (eDP) standard was introduced in 2008 to do exactly that. Displayport is the best video interface, LCD manufacturers can build eDP interfaces directly into their panels, and those panels no longer need an LVDS converter.

 LCD panel with embedded Displayport. the video interface connects directly to computer's graphics card.

LCD panel with embedded Displayport. the video interface connects directly to computer's graphics card.

do note that eDP, while electrically identical to Displayport, does not use the standardized Displayport connector. every manufacturer has their own favorite connector which can vary from panel to panel. this is why all eDP hobby projects boil down to 'how do i connect these super-high-speed RF signals from my Displayport connector to this crazy LCD panel connector?'

Examples:

at this point, since all the cool kids were hacking the 9.7" Retina iPad panel, i decided to do it too. and why not? it's a great (if small) IPS panel with awesome contrast & colors & viewing angles. it's made by LG and the datasheets are everywhere.

so what is actually needed to get it working?

  • an electrical connection from a full-sized Displayport jack to the tiny Molex connector which fits the panel's ribbon cable.
  • a 3.3V supply voltage to run the panel's logic circuits.
  • eight ~20mA bias currents for the LED backlight - this could be as simple as eight current-limiting resistors.

it would have been sensible to build the bare minimum first, and get fancy later.

but i was impulsively complicated, so i added a fancy boost-converting backlight driver IC, power-management IC and Li-ion battery into the screen, to keep it running on the go. plus an ATtiny48 to talk to everything through I2C. keeping in mind that two years ago:

  1. i had zero experience routing differential RF traces, yet was trying to route Displayport signals, which are differential & ultra-ultra-high speed.
  2. i barely knew how to solder surface-mount components, yet i insisted on using QFN and 0402 packages for everything.
  3. my PCB skills were in the 'fledgling' stage and this project was hitting way above my weight.

but what the heck, i did it anyway. and here is the result:

 Retina iPad interface board, attempt #1 - schematic.

Retina iPad interface board, attempt #1 - schematic.

  Retina iPad interface board, attempt #1 - layout.

Retina iPad interface board, attempt #1 - layout.

 first attempt at soldering - i couldn't even get the Displayport connector on without wrecking it.

first attempt at soldering - i couldn't even get the Displayport connector on without wrecking it.

 second attempt at soldering. note the awkward jumper wire on one of the high-speed differential traces.

second attempt at soldering. note the awkward jumper wire on one of the high-speed differential traces.

did it work? not at all. it certainly didn't work aesthetically.

i'd also used the Displayport source pinout instead of the sink pinout, which doomed my board from the start. i hadn't even realized there were different source & sink pinouts. i should have dumbed things down, and got the basics right.

instead i designed another ugly and overly-complicated board because i was clueless in 2013.

  Retina iPad interface board, attempt #2 - schematic.

Retina iPad interface board, attempt #2 - schematic.

  Retina iPad interface board, attempt #2   - layout.

Retina iPad interface board, attempt #2 - layout.

  Retina iPad interface board, partially-assembled, top view.

Retina iPad interface board, partially-assembled, top view.

  Retina iPad interface board, partially-assembled, bottom view.

Retina iPad interface board, partially-assembled, bottom view.

did this work? not even a tiny bit. i still had no idea how to route those high-speed Displayport traces.

this was pretty frustrating. each round of PCB-fabbing cost me a bunch of money. i was buying lots of tiny parts and painstakingly soldering them. nothing was working and i had no clue what i was doing. then i found OSHpark.

OSHpark is a PCB ordering service where the price scales linearly with PCB surface area, with no penalties for number of unique designs. this is unlike my previous PCB source, where i would pay (a lot) for every unique design. this forced me to (rarely) fab-out a very small number of very-complete designs. it didn't encourage experimentation

through OSHpark i could fab PCBs recklessly, ordering a Frankensteinian collection of cheap, small & subtly different boards until i figured out which designs actually worked. i could speed up my development through 'shotgun engineering', trying every possible thing until i pinged upon something which worked.

so in one afternoon, i designed many utterly crude new boards. no more power management, no more fancy backlight, certainly no battery. just a few resistors and two video connectors, connected by those crucial and mysterious high-speed traces. each board had a slight variation of those traces. something, i figured, just had to work.

 shotgun engineering.

shotgun engineering.

and one did work!

 a winner!

a winner!

what should i do with my new Retina screen with super-tiny pixels?

send strange photos to my friend. obviously.

hi.jpg

it would be nice to call this a success, but i still didn't trust those high-speed traces. so i decided to test their robustness, by amassing a Displayport cable collection of various lengths.

 a tiny subset of my cable collection.

a tiny subset of my cable collection.

how sensitive was the screen to Displayport signal quality? i had been testing the screen with a 3-foot long Displayport cable, which was hardly strenuous. would it continue working with a 6-foot cable? a 12-foot cable? a 20-foot cable?

alas, anything longer than a 3-foot cable left a garbled mess on the screen. i think it's much harder to get it working over longer distances, which might be why Adafruit previewed this.

at any rate, even the best 9.7" screen is quite useless on a full-sized computer. it was time to move on.

next time: goodbye iPad; tiny cables adventures.

 

 

 

Tshen2 2013

Megapixy, part 1: eDP is a thing

to write about Megapixy is to write about the last 2 years. this project has tested my patience and perfectionism and pursuit of beauty as few have.

Megapixy was an adventure in sourcing parts. it was my first self-directed surface-mount PCB design, my first try at soldering QFN & DFN packages, my first attempt to route high-speed differential signals, my first non-Analog system design.

Megapixy was my first lasercut design. it birthed my Eagle-mechanical workflow and represents my highest level of electro-mechanical integration to date.

Megapixy was very, very confusing.

 

the problem.

let's say you were to build a small music studio. wouldn't it be great to have a small laptop-sized screen above the MIDI keyboard, so you could see what you were doing?

it turns out that hardly anyone makes nice small screens. Lenovo makes an awful battery-powered thing called the LT1421, with terrible colors, terrible brightness & contrast, USB-input only and pixels the size of your head. there's also this other thing with equally bad contrast and colors and general DGAF-ness. this was 2013 - the Retina iPad was just a few months old, and 1080p screens were finally  beginning to trickle into Windows laptops. i would settle for nothing less.

the solution, of course, was to build something. i zoomed around the internet looking for laptops with good screens, bumped into the (otherwise uninteresting) Dell L502x, and identified its LCD panel as an AU Optronics B156HW1. a quick trip to eBay nabbed that and an HDMI-compatible control board to drive the panel, and i was in business.

 this is really the best picture i could find.

this is really the best picture i could find.

you need that control board because the LCD panel communicates through LVDS, and your computer does not. the control board also contains the backlight driver to run the backlight LEDs inside the panel.

 Shen's handwriting, circa 2015.

Shen's handwriting, circa 2015.

it works as well as you'd expect from a generic off-the-shelf solution. it turns on and it's definitely a screen, but you won't feel any joy in it.

a screen is only useful in front of your face, so i slapped together a chassis. having hardly any tools in 2013, i asked a frame shop to frame the LCD panel like a painting, and built the rest of the chassis to screw into the rear of the frame.

 Shen's handwriting, circa 2013.

Shen's handwriting, circa 2013.

after much drilling, sawing, gluing & screwing:

 the front looks alright.

the front looks alright.

 but those colors are definitely off.

but those colors are definitely off.

 and those pixels are still pretty pixelly.

and those pixels are still pretty pixelly.

 the back is.. not so good.

the back is.. not so good.

i used a 1/4-20 T-nut to mount the chassis to a tripod, as i often do. i'm not thrilled, but it works. what should be better?

  • really bad viewing angles. you can calibrate the colors, but they'll only look right from one direction.
  • 'Full High Definition' be damned, 1080p is still not enough pixels.
  • it is too heavy, with asymmetrical weight distribution.
  • why are the buttons on the back?

no seriously, why do all monitor controls suck?

 identical row of control buttons (left), on-screen settings (right).

identical row of control buttons (left), on-screen settings (right).

even the most crazy-expensive professional LCD monitors use a row of identical, nasty-clicky buttons. you have to look at them since they all feel the same, but you also have to look at the screen to see your on-screen settings. so your eyes will dash back and forth, between buttons and screen, until the controls time-out and the on-screen settings vanish. and then you'll have to start over.

*cue much wailing & gnashing of teeth*

 HP Professional Dreamcolor Monitor, now featuring more identical buttons.

HP Professional Dreamcolor Monitor, now featuring more identical buttons.

isn't this crazy? doesn't this drive you nuts? am i just weird?

i mean, your computer's operating system already has color, brightness and gamma controls. the advice of professionals is to keep your screen unadjusted (except for brightness) and do all adjustments in software. why do our screens need anything beyond a power button and brightness control?

and how can i make a better screen without relying on someone else's crappy control board?

then someone clued me in on a very interesting Hack-A-Day article, and i started thinking very hard. one thing was clear - embedded Displayport (eDP) was the way forward, and everything else was a sideshow.

i promptly forgot about the music studio, and started tackling this for reals.

next update: hacking the Retina iPad.

 

 

 

Tshen2 2013