Comment 19 for bug 212206

Revision history for this message
In , Erik-slagter (erik-slagter) wrote :

> It seems to me that having one or two pixel off is the lucky case. In general a
> TFT/LCD doesn't tune to any frequency or resolution like a CRT does.

> I attached a Panasonic PT-AE500E video beamer by means of HDMI. This one simply
> stays black (= no image):

Newer LCD's have smarter control than they used to in the past, all my LCD's can even display resolutions way larger than their native resolution, scaling down.

Also they don't have a problem with non-standard resolutions.

Back to the topic:

Although my monitor says the signal is two pixels off, it actually is one, so I have the same problem as the others here.

I also found a workaround to at least be able to have a sharp picture on your monitor using xrandr.

1. find out using xrandr -q what resolution/params your monitor likes most
2. use xrandr --verbose to see the modeline parameters associated with this mode
3. then using xrandr --newmode make a new modeline which is one pixel (vertical) larger than the original, you can probably do this without too much hassle, just take care that the vsync length is at least the vertical size + 1. It probably doesn't hurt if you add a few more. Leave the others alone.
4. use xrandr --addmode <output> <yourmodename>
5. use xrandr --output <output> --mode <yourmodename>

Works for me :-)

Example:

$ xrandr -q
TMDS-1 connected 1600x1201+0+0 (normal left inverted right x axis y axis) 408mm x 306mm
   1600x1200 60.0*+ 60.0 60.0
   1920x1200 60.0
   1920x1080 59.9
[ ... ]

$ xrandr --verbose
TMDS-1 connected 1600x1201+0+0 (0xa7) normal (normal left inverted right x axis y axis) 408mm x 306mm
        Identifier: 0x3d
        Timestamp: 1247967
        Subpixel: horizontal rgb
        Clones:
        CRTC: 0
        CRTCs: 0 1
        EDID_DATA:
                00ffffffffffff003438d9071e000000
                0511010380291f782eee95a3544c9926
                0f5054bfef00310a614c714f8180a940
                814001010101483f403062b0324040c0
                130098321100001e0000000000000000
                00000000000000000000000000fd0038
                4b1f5311000a202020202020000000fc
                00423230383053320a2020202020004c
  1600x1200 (0x5f) 162.0MHz +HSync +VSync
        h: width 1600 start 1664 end 1856 total 2160 skew 0 clock 75.0KHz
        v: height 1200 start 1201 end 1204 total 1250 clock 60.0Hz
  1920x1200 (0x60) 154.0MHz +HSync -VSync
        h: width 1920 start 1968 end 2000 total 2080 skew 0 clock 74.0KHz
        v: height 1200 start 1203 end 1209 total 1235 clock 60.0Hz
[ ... ]

$ xrandr --newmode 1600x1200my 162 1600 1664 1856 2160 1201 1202 1210 1250
$ xrandr --addmode TMDS-1 1600x1200my
$ xrandr --output TMDS-1 1600x1200my