Take a look at our
ThinkPads.com HOME PAGE
For those who might want to contribute to the blog, start here: Editors Alley Topic
Then contact Bill with a Private Message

Brightness (Backlight) control in Windows

X200, X201, X220 (including equivalent tablet models) and X300, X301 series specific matters only.
Post Reply
Message
Author
tpx61
Posts: 42
Joined: Wed Apr 03, 2013 9:02 am
Location: Warsaw, Poland

Brightness (Backlight) control in Windows

#1 Post by tpx61 » Sat Nov 10, 2018 8:16 am

Brightness control in Windows works but only if I install a graphics driver. Is it possible to control brightness without installing a graphic driver? In the BIOS, the control works without any driver.

tpx61
Posts: 42
Joined: Wed Apr 03, 2013 9:02 am
Location: Warsaw, Poland

Re: Brightness (Backlight) control in Windows

#2 Post by tpx61 » Sat Nov 10, 2018 9:00 am

Apparently, the Linux system is done through the driver thinkpad-acpi. The documentation shows that:

Code: Select all

Status
------

The features currently supported are the following (see below for
detailed description):

	- Fn key combinations
	- Bluetooth enable and disable
	- video output switching, expansion control
	- ThinkLight on and off
	- CMOS/UCMS control
	- LED control
	- ACPI sounds
	- temperature sensors
	- Experimental: embedded controller register dump
	- LCD brightness control
	- Volume control
	- Fan control and monitoring: fan speed, fan enable/disable
	- WAN enable and disable
	- UWB enable and disable
Bluetooth & ThinkLight on/off you can switch using the TPFanControl application in Windows:
https://cdn1.savepice.ru/uploads/2018/1 ... b-full.png

I found the source code TPFanControl and e.g. portio.cpp have registers of Embedded Controller:

Code: Select all

// Registers of the embedded controller
#define EC_DATAPORT	0x1600	// EC data io-port 0x62
#define EC_CTRLPORT	0x1604	// EC control io-port 0x66


// Embedded controller status register bits
#define EC_STAT_OBF	 0x01 // Output buffer full 
#define EC_STAT_IBF	 0x02 // Input buffer full 
#define EC_STAT_CMD	 0x08 // Last write was a command write (0=data) 


// Embedded controller commands
// (write to EC_CTRLPORT to initiate read/write operation)
#define EC_CTRLPORT_READ	 (char)0x80	
#define EC_CTRLPORT_WRITE	 (char)0x81
#define EC_CTRLPORT_QUERY	 (char)0x84
Maybe somehow using the HWDirect program ?:
https://cdn1.savepice.ru/uploads/2018/1 ... 4-full.png

I found this but I do not know how to read or write down the registers ACPI-defined port 66 commands

ajkula66
SuperUserGeorge
SuperUserGeorge
Posts: 16334
Joined: Sun Feb 25, 2007 11:28 am
Location: Brodheadsville, Pennsylvania, USA

Re: Brightness (Backlight) control in Windows

#3 Post by ajkula66 » Sat Nov 10, 2018 10:39 am

Colour me curious: why wouldn't you want a graphics driver installed ?
...Knowledge is a deadly friend when no one sets the rules...(King Crimson)

Cheers,

George (your grouchy retired FlexView farmer)

AARP club members:A31p,T43pSF

Abused daily: T61p

Work in progress: X60T

PMs requesting personal tech support will be ignored.

tpx61
Posts: 42
Joined: Wed Apr 03, 2013 9:02 am
Location: Warsaw, Poland

Re: Brightness (Backlight) control in Windows

#4 Post by tpx61 » Sat Nov 10, 2018 10:53 am

ajkula66 wrote:
Sat Nov 10, 2018 10:39 am
Colour me curious: why wouldn't you want a graphics driver installed ?
Because WinXP x64 in EFI mode does not boot on the Intel graphics driver.

WinXP runs with Universal VESA/VBE Video Display Driver but brightness control not work https://www.betaarchive.com/forum/viewt ... 7c#p434999

ajkula66
SuperUserGeorge
SuperUserGeorge
Posts: 16334
Joined: Sun Feb 25, 2007 11:28 am
Location: Brodheadsville, Pennsylvania, USA

Re: Brightness (Backlight) control in Windows

#5 Post by ajkula66 » Sat Nov 10, 2018 12:26 pm

OK anything XP 64 bit is utterly foreign to me, so I'll just wish you the best of luck in your quest.
...Knowledge is a deadly friend when no one sets the rules...(King Crimson)

Cheers,

George (your grouchy retired FlexView farmer)

AARP club members:A31p,T43pSF

Abused daily: T61p

Work in progress: X60T

PMs requesting personal tech support will be ignored.

tpx61
Posts: 42
Joined: Wed Apr 03, 2013 9:02 am
Location: Warsaw, Poland

Re: Brightness (Backlight) control in Windows

#6 Post by tpx61 » Sun Nov 11, 2018 3:01 am

OK, I learned how to switch Thinklight. This is possible using the program RW - Read & Write Utility - I use version 64-bit 1.6.9. It is enough to change the Embedded Controller register 3B:

10 - thinklight off
12 - thinklight on

https://cdn1.savepice.ru/uploads/2018/1 ... 5-full.png

The brightness is probably not controlled by the EC. The graphic driver can control brightness. I found this topic Fix your X220 brightness keys under Windows 10 permanently but this is for Win10. I tried entry FeatureTestControl in the registry with the Universal VESA/VBE driver but unfortunately it does not work :(

Screamer
Sophomore Member
Posts: 233
Joined: Sun Apr 15, 2018 7:15 am
Location: Singapore

Re: Brightness (Backlight) control in Windows

#7 Post by Screamer » Mon Nov 12, 2018 4:04 am

tpx61 wrote:
Sat Nov 10, 2018 10:53 am
Because WinXP x64 in EFI mode does not boot on the Intel graphics driver.
Wait, which Intel graphics driver did you use for the HD 3000? Was it this driver?

tpx61
Posts: 42
Joined: Wed Apr 03, 2013 9:02 am
Location: Warsaw, Poland

Re: Brightness (Backlight) control in Windows

#8 Post by tpx61 » Mon Nov 12, 2018 9:50 am

Screamer wrote:
Mon Nov 12, 2018 4:04 am
Wait, which Intel graphics driver did you use for the HD 3000? Was it this driver?
Yes, this is version 14.51.11.64.5437. I tried also older drivers e.g. from Asrock H61M-DG3/USB3 - 14.51.6.64.5415 but WinXP x64 still not start. Only with Universal VESA/VBE OS start but this driver not support 3D and not work brightness control.

dr_st
Moderator
Moderator
Posts: 7489
Joined: Sat Oct 29, 2005 6:20 am

Re: Brightness (Backlight) control in Windows

#9 Post by dr_st » Mon Nov 12, 2018 10:16 am

tpx61 wrote:
Sat Nov 10, 2018 10:53 am
WinXP runs with Universal VESA/VBE Video Display Driver but brightness control not work
Are you talking about VGA.SYS? There are plenty of things that one does not support, including Standby (Hibernation should work, though).
tpx61 wrote:
Sun Nov 11, 2018 3:01 am
The brightness is probably not controlled by the EC. The graphic driver can control brightness.
It's quite possible you are right. Modern Thinkpads do not support brightness control in BIOS, for example. It's possible that the BIOS for older Thinkpads actually implemented a routine to capture and handle the brightness control.
tpx61 wrote:
Mon Nov 12, 2018 9:50 am
Yes, this is version 14.51.11.64.5437. I tried also older drivers e.g. from Asrock H61M-DG3/USB3 - 14.51.6.64.5415 but WinXP x64 still not start. Only with Universal VESA/VBE OS start but this driver not support 3D and not work brightness control.
With these limitations, is there a point to continue running XP x64 in EFI mode, after you proved that it can be done?
Thinkpad 25 (20K7), X1 Carbon (20HQ), Yoga 14 (20FY), T430s (IPS FHD + Classic Keyboard), X220 4291-4BG, X61 7673-V2V
T60 2007-QPG, T42 2373-F7G, X32 (IPS Screen), A31p w/ Ultrabay Numpad, A21m 2628-GXU

tpx61
Posts: 42
Joined: Wed Apr 03, 2013 9:02 am
Location: Warsaw, Poland

Re: Brightness (Backlight) control in Windows

#10 Post by tpx61 » Mon Nov 12, 2018 11:33 am

dr_st wrote:
Mon Nov 12, 2018 10:16 am
Are you talking about VGA.SYS? There are plenty of things that one does not support, including Standby (Hibernation should work, though).
No, with Standard VGA Graphic Adapter WinXP also not start in EFI mode. I use Universal VESA/VBE - link -> VBEMP NT Project Universal VESA/VBE Video Display Driver
direct link to driver: vbempk.zip
dr_st wrote:
Mon Nov 12, 2018 10:16 am
With these limitations, is there a point to continue running XP x64 in EFI mode, after you proved that it can be done?
Read this post or whole topic: Does Windows XP have EFI?
https://www.youtube.com/watch?v=YpyVbS91UiM
dr_st wrote:
Mon Nov 12, 2018 10:16 am
It's quite possible you are right. Modern Thinkpads do not support brightness control in BIOS, for example. It's possible that the BIOS for older Thinkpads actually implemented a routine to capture and handle the brightness control.
Brightness in X220 is controlled by ACPI. I checked it on Linux, after executing the command:

Code: Select all

echo 0 > /sys/class/backlight/intel_backlight/brightness
screen is black. Brightness works also over Fn+Home and FN+End:

Image

It is interesting that in the BIOS or WinXP it is impossible to disable the screen completely using Fn+End, while in Linux you can disable it completely. On BIOS/WinXP is 15 levels of brightness, but on Linux is 10 levels.
Last edited by tpx61 on Mon Nov 12, 2018 5:19 pm, edited 1 time in total.

tpx61
Posts: 42
Joined: Wed Apr 03, 2013 9:02 am
Location: Warsaw, Poland

Re: Brightness (Backlight) control in Windows

#11 Post by tpx61 » Mon Nov 12, 2018 5:29 pm

The work around the brightness problem is use tool Pangolin Screen Brightness:
Image

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “ThinkPad X200/201/220 and X300/301 Series”

Who is online

Users browsing this forum: Dynamicmetaflow and 18 guests