Display

From OLPC
Revision as of 10:31, 27 October 2009 by 150.176.45.172 (talk) (Understanding the hardware)
Jump to: navigation, search
  This page is monitored by the OLPC team.

The display is one of the innovative features of the XO laptop. It can be used in darkness, and in direct sunlight. Because learning takes place in both.

Designing for the display

Summary

The display is...
1200x900, 200 dpi. 6x4 in (152.4x101.6 mm). 6 bit deep (262k colors).

Use normal font point sizes.

UI elements designed for 100 dpi should be enlarged by about 1/3, or they will look smaller.

Under different lighting conditions, the display may appear to be color, pale color, or monochrome. So check the appearance of your UI in monochrome. Use high-contrast UI elements. Pick colors with different luminances.

Ignore talk of "mono and color modes", and of screen resolutions other than 1200x900. We named things poorly, and immense confusion has resulted.

How to switch to reflective mode: press the "lower brightness" button repeatedly until the backlight is turned off.

How to switch to color mode: press the "increase brightness" button to turn the backlight on.

Brightness keys: Kbd-brightness.png

Elaboration

Use normal font point sizes. That's points, not pixels, of course. The fonts will appear larger than normal (because the child is closer than usual). But compared with adults, children use larger fonts. So a 12 pt font looking 14 pt is fine.

Ignore talk of "mono and color modes", and of screen resolutions other than 1200x900. We named things poorly, and immense confusion has resulted. We called two very different things mono/color. Which combined with the unusual screen hardware, has generated immense confusion,and consequent misinformation. The hardware section below discusses it, but most activities just don't care.

UI design and physical geometry

Think about how large your UI elements will actually be in physical geometry, and design accordingly. Normal viewing distance might be 40-50 cm. Compared to 40 to 60 or 70 cm for adults. Pixel size is 0.127 mm, or about 1 arc minute. Elements designed for 100 dpi should be enlarged 20-50%, or they will look smaller. 1/3 is a nice number. The web browser scales web pages by ~40%. (what is the precise browser number?)

You only really need to worry about the color artifacts if you're trying to draw elements smaller than 3 pixels wide or tall. But that's probably a bad idea anyway, since that's going to be tiny (0.01 in, 0.24 mm).

Use

  • You can always at least see grayscale, even in direct sunlight.
  • You get color from the backlight. Though as sunlight gets brighter, the colors wash out and it again looks like grayscale.
  • The backlight uses power. So you can turn it down, and off, to make the battery last longer.
  • Turning off the backlight also tells the screen to not worry about color, so it can give you a slightly higher resolution. Which can make hours of reading more comfortable.

I LIKE GIRLS AND THEY LIKE ME THEY LOOK SO GOOD EXEPT IN WHAT EVER IN MY HOMIE I WANNA BE THANK THAT I CANT KEEP MY HANDS OUT THE COOKIE JAR MY HANDS MY MY CANT KEEP MY HANDS OUT THE COOLIE JAR.

Tools

color selection

Luv and Lab color pickers and palettes may be helpful for choosing colors. The xo can be colorful. You just have one extra consideration, luminance, to manage. Munsell would work too, but I don't know of a usable one.

The following code can be useful to separate gray-level and color decisions.

import colorsys
def gray_rgb(gray,r,g,b):
    "Given an rgb and a gray level, return a similar rgb with gray-like intensity".
    h,l,s = colorsys.rgb_to_hls(r,g,b)
    return colorsys.hls_to_rgb(h,gray,s)

There is another implementation[1]. It it returns the wrong thing for a different set of inputs, but is not noticeably better. And it's much more complex.

screen simulation

  • GTK for OLPC includes a pointer to a patch for Xephyr, an X server emulator. It tries to fake DCON and screen, but the algorithm isn't right, and you can't change lighting.
  • display simulator takes a screen snapshot, and tries to fake what it would look like on the xo screen under various lighting. But the algorithm isn't yet right.

ICC Profile

An ICC output profile of the display is available: File:OLPC icc.zip

Todo

other things which should be mentioned:

  • Talk about power saving, including turning down refresh rate, and dynamically turning off sections of the screen.
  • Give more detail about the DCON modes, and how to use them. See [2] and [3].

See also

References

<references group=""></references>