Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

I have a Lenovo g470 with Windows 8 used for games only, and a Linux Distro used for development and as my main OS.

I used to have Elementary OS, it was working well, but I decided to try CrunchBang. I installed it and everything went fine with the installation, just some little problems about wifi that I solved easily. After some minutes setting OpenBox, conky and tint2 to my desires I had a big headache, and my eyes felt very sore. I could notice that the screen flickered a bit, like CTR with a low refresh rate. It's more noticeable on darker colors and on the corners of the screen.

I checked my refresh rate an resolution, and everything was fine, the resolution and refresh were set to the native ones (1366x768 60hz) I thought that it was a video card drivers related problem. My computer has two graphics cards, an integrated Intel HD3000 and a discrete Ati HD6370, I tried with both cards. Using the intel drivers, and for the ati, the privative and open source ones with no difference.

After looking for answers and trying some setting with xrandr, I gave up and tried with another distro. This time Arch Linux. I installed the base system, intel video drivers, the latest version of Xorg and OpenBox but I found the same problem. I don't have any idea of what's wrong with this. I'm already trying with Linux mint, and the problem is also present here, I'm sure that it's not a harware fault, because I can use it fine with Windows, Ubuntu and Elementary OS.

Any idea of what could be wrong? Or any different setting present on Ubuntu by default and that all other OS are missing that could be causing this?

Thanks in advance.

share|improve this question
    
Maybe there is a difference in the default brightness of the screen? My Thinkpad is very bright compared to other notebooks. –  Tim Jan 27 at 7:55

1 Answer 1

up vote 1 down vote accepted

I already found what the problem is. LCD displays uses a frequency known as PWM (Pulse widht modulation). The screen backlight flashes to this frequency, on most monitors is between 200hz - 500hz range.

My Linux distro sets a low PWM frequency by default, that's why all the eyestrain. Luckily Intel gpu drivers can change the PWM frequency.

You need to install intel-gpu-tools

First you need to know your reference clock, this is stored on address 0xC6204. You can read values with the command intel_reg_read, so to read the value you can use the command:

    intel_reg_read 0xC6204

Once you know your reference clock you can use the calculator on this page to calculate your desired value. I used 500mhz, so I got 0x7a107a1.

The address for the PWM value is 0xC8254, You can set values with intel_reg_write, so you can use:

    intel_reg_write 0xC8254 0x7a107a1

You can see immediately changes. (Sometimes the screen brightness could change, but this is ok, the PWM frequency changes also)

I hope that this info could be helpful to anyone who need it.

Source

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.