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
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
X210/X2100 embedded controller fixes (was: X210 EC datasheet/better brightness control)
-
flyingfishfinger
- Junior Member

- Posts: 416
- Joined: Sun Nov 18, 2012 5:42 pm
- Location: San Francisco Bay Area
Re: X210/X2100 embedded controller fixes (was: X210 EC datasheet/better brightness control)
Opening this can of worms back up - the EC fixes so far are pretty impressive, but there are still some troublesome issues with this machine.
In particular, I'd like to try and figure out USB-C charging properly, I'm sure people have noticed the charge / not charging cycling with smaller chargers even with the "slow charge" EC blob.
I've done a few experiments with a USB-C power meter and figured out that in general, the input power (with no battery) agrees with the PL1/PL2 settings plus about 5W. However, that means there's some other issue with charging or the current limit set in the EC. For example, I connected a 65W charger with the "slow" EC binary, set the PL1/PL2 to 5W /10! (!) and found that during the "charge" part of the cycle, input power was no higher than ~ 17W and we are nowhere NEAR the charger limit.
This tells me (a) maybe there's an issue with total available power negotiation or (b) the EC charge setting somehow doesn't do what we think.
Anyone interested in helping to work this out? I'd love to use a small GAN charger for this machine...
R
In particular, I'd like to try and figure out USB-C charging properly, I'm sure people have noticed the charge / not charging cycling with smaller chargers even with the "slow charge" EC blob.
I've done a few experiments with a USB-C power meter and figured out that in general, the input power (with no battery) agrees with the PL1/PL2 settings plus about 5W. However, that means there's some other issue with charging or the current limit set in the EC. For example, I connected a 65W charger with the "slow" EC binary, set the PL1/PL2 to 5W /10! (!) and found that during the "charge" part of the cycle, input power was no higher than ~ 17W and we are nowhere NEAR the charger limit.
This tells me (a) maybe there's an issue with total available power negotiation or (b) the EC charge setting somehow doesn't do what we think.
Anyone interested in helping to work this out? I'd love to use a small GAN charger for this machine...
R
-
dmdsoftware
- Junior Member

- Posts: 433
- Joined: Mon Apr 11, 2005 2:24 pm
- Location: Mississauga, Ontario, Canada
Re: X210/X2100 embedded controller fixes (was: X210 EC datasheet/better brightness control)
Do you need to patch the BIOS to get working EFI on the X210? I noticed today that the BIOS reports UEFI 2.x but I've tried to boot off both USB drives and hard drives that have a EFI partition -- both do not boot either presenting a black screen or an error "enter a proper boot device". Only boots of legacy drives. If I go into the BIOS while an EFI drive is attached, if I go to "start efi..." it says it can't find shell.efi on any drive.
Also, does anyone use their X210 with modern linux? The last time I used this device was back when Debian 9.3 was current (kernel 4.19). Standby and hibernation worked perfect -- tested again today. But with Debian 12, hibernation fails to resume stating the hibernation image is not of the correct architecture type. I tried kernel 6.3, 6.1, 5.18 and even a LTS 4.19 being 4.19 was working with hibernation in Debian 9.
Also, does anyone use their X210 with modern linux? The last time I used this device was back when Debian 9.3 was current (kernel 4.19). Standby and hibernation worked perfect -- tested again today. But with Debian 12, hibernation fails to resume stating the hibernation image is not of the correct architecture type. I tried kernel 6.3, 6.1, 5.18 and even a LTS 4.19 being 4.19 was working with hibernation in Debian 9.
X62 & X62s & X62T SXGA+ i7 5600u 8-16GB
Helix i7
Carbon X1 i5 UHD
W520 4x-i7
Sony Vaio P799 (8" LED 1600x768)
"Think" Ultrabook i7
LegoThinkpad 11"
in storage:
X131e AMD
X60/X60s, X61/X61s/X61T, T61, T420, X30
past:
X20-X24, 390X
Helix i7
Carbon X1 i5 UHD
W520 4x-i7
Sony Vaio P799 (8" LED 1600x768)
"Think" Ultrabook i7
LegoThinkpad 11"
in storage:
X131e AMD
X60/X60s, X61/X61s/X61T, T61, T420, X30
past:
X20-X24, 390X
Re: X210/X2100 embedded controller fixes (was: X210 EC datasheet/better brightness control)
I run my EFI Gentoo Lignux (in fact GRUB) through the stock BIOS with disabled CSM.dmdsoftware wrote: ↑Fri Sep 22, 2023 5:11 pmDo you need to patch the BIOS to get working EFI on the X210? I noticed today that the BIOS reports UEFI 2.x but I've tried to boot off both USB drives and hard drives that have a EFI partition -- both do not boot either presenting a black screen or an error "enter a proper boot device". Only boots of legacy drives. If I go into the BIOS while an EFI drive is attached, if I go to "start efi..." it says it can't find shell.efi on any drive.
Also, does anyone use their X210 with modern linux? The last time I used this device was back when Debian 9.3 was current (kernel 4.19). Standby and hibernation worked perfect -- tested again today. But with Debian 12, hibernation fails to resume stating the hibernation image is not of the correct architecture type. I tried kernel 6.3, 6.1, 5.18 and even a LTS 4.19 being 4.19 was working with hibernation in Debian 9.
6.5.0 here, both s2ram and s2disk work well.
51nb X210 with community EC mod, me_cleaner and recelled 99W*h battery; X230 with coreboot, me_cleaner and nitrocaster's FHD mod as a backup; R500 for guests; T60 just for the looks.
-
dmdsoftware
- Junior Member

- Posts: 433
- Joined: Mon Apr 11, 2005 2:24 pm
- Location: Mississauga, Ontario, Canada
Re: X210/X2100 embedded controller fixes (was: X210 EC datasheet/better brightness control)
Maybe I have a bad machine. Even standard Debian 12 live USB ISO that uses EFI won't boot, and a HD with EFI won't booth. Either boots on every other machine I've tried, even on macs.L29Ah wrote: ↑Fri Sep 22, 2023 5:36 pmI run my EFI Gentoo Lignux (in fact GRUB) through the stock BIOS with disabled CSM.dmdsoftware wrote: ↑Fri Sep 22, 2023 5:11 pmDo you need to patch the BIOS to get working EFI on the X210? I noticed today that the BIOS reports UEFI 2.x but I've tried to boot off both USB drives and hard drives that have a EFI partition -- both do not boot either presenting a black screen or an error "enter a proper boot device". Only boots of legacy drives. If I go into the BIOS while an EFI drive is attached, if I go to "start efi..." it says it can't find shell.efi on any drive.
Also, does anyone use their X210 with modern linux? The last time I used this device was back when Debian 9.3 was current (kernel 4.19). Standby and hibernation worked perfect -- tested again today. But with Debian 12, hibernation fails to resume stating the hibernation image is not of the correct architecture type. I tried kernel 6.3, 6.1, 5.18 and even a LTS 4.19 being 4.19 was working with hibernation in Debian 9.
6.5.0 here, both s2ram and s2disk work well.
This CSM is a BIOS setting?
X62 & X62s & X62T SXGA+ i7 5600u 8-16GB
Helix i7
Carbon X1 i5 UHD
W520 4x-i7
Sony Vaio P799 (8" LED 1600x768)
"Think" Ultrabook i7
LegoThinkpad 11"
in storage:
X131e AMD
X60/X60s, X61/X61s/X61T, T61, T420, X30
past:
X20-X24, 390X
Helix i7
Carbon X1 i5 UHD
W520 4x-i7
Sony Vaio P799 (8" LED 1600x768)
"Think" Ultrabook i7
LegoThinkpad 11"
in storage:
X131e AMD
X60/X60s, X61/X61s/X61T, T61, T420, X30
past:
X20-X24, 390X
Re: X210/X2100 embedded controller fixes (was: X210 EC datasheet/better brightness control)
Yes.
51nb X210 with community EC mod, me_cleaner and recelled 99W*h battery; X230 with coreboot, me_cleaner and nitrocaster's FHD mod as a backup; R500 for guests; T60 just for the looks.
-
dmdsoftware
- Junior Member

- Posts: 433
- Joined: Mon Apr 11, 2005 2:24 pm
- Location: Mississauga, Ontario, Canada
Re: X210/X2100 embedded controller fixes (was: X210 EC datasheet/better brightness control)
I compared my Debian 12 install with the Debian 9 install and I realized, since moving to Wayland in the past year, I've got accustom to starting hibernation via "systemctl hibernation". For decades prior when I was using xorg, I was calling /usr/sbin/hibernate to hibernate. When I tried this on this machine with Debian 12 w/ Wayland, it's working -- I'm able to hibernate and resume. I think I simply got accustom to invoking hibernation using systemctl as it was the only method available on Fedora with Wayland, and since it was working without issue on all my other machines with either distro, I simply forgot about the other method.dmdsoftware wrote: ↑Fri Sep 22, 2023 8:06 pmMaybe I have a bad machine. Even standard Debian 12 live USB ISO that uses EFI won't boot, and a HD with EFI won't booth. Either boots on every other machine I've tried, even on macs.
This CSM is a BIOS setting?
Its working again, so all is well.
X62 & X62s & X62T SXGA+ i7 5600u 8-16GB
Helix i7
Carbon X1 i5 UHD
W520 4x-i7
Sony Vaio P799 (8" LED 1600x768)
"Think" Ultrabook i7
LegoThinkpad 11"
in storage:
X131e AMD
X60/X60s, X61/X61s/X61T, T61, T420, X30
past:
X20-X24, 390X
Helix i7
Carbon X1 i5 UHD
W520 4x-i7
Sony Vaio P799 (8" LED 1600x768)
"Think" Ultrabook i7
LegoThinkpad 11"
in storage:
X131e AMD
X60/X60s, X61/X61s/X61T, T61, T420, X30
past:
X20-X24, 390X
-
chakaponden
- Posts: 11
- Joined: Tue Mar 29, 2022 4:25 pm
- Location: Warsaw, Poland
Re: X210 EC datasheet/better brightness control?
Could you share the link to your patched EC controller firmware? The url is expiredvladisslav2011 wrote: ↑Sat May 18, 2019 9:08 pmI've soldered sort of 'socket' and connected a pin header with some wires to the EC UART pins too.
Here are pictures:
https://i.imgur.com/MinRCrO.jpg
https://i.imgur.com/K9h0UZy.jpg
https://i.imgur.com/Q8UJG2p.jpg
And here is the next patched EC firmware:
http://rgho.st/7MNNlhp49
It shows battery current correctly now. Powertop is able to show power consumption level and runtime estimation too. And powertop can perform calibration.
https://i.imgur.com/wVJBlfd.png
https://i.imgur.com/PwV0pnG.png
https://i.imgur.com/k8Yry7F.png
https://i.imgur.com/5yWXwKH.png
The EC controller firmware from https://github.com/harrykipper/x210 contains a lot of "unknown" changes related to stock EC firmware which I am not sure related to power consumption fix and the is no standalone patch for EC controller firmware for it.
Code: Select all
diff <(xxd /home/kraevd/x210/x210-patched-bios/ec-patched.bin) <(xxd /home/kraevd/x210/x210-patched-bios/blobs/ec.bin)
2c2
< 00000010: 487f 0000 0001 0200 dc50 0000 0000 0000 H........P......
---
> 00000010: 487f 0000 0001 0200 0052 0000 0000 0000 H........R......
5c5
< 00000040: d803 0000 85ed 2f00 ffff ffff 0000 0000 ....../.........
---
> 00000040: fe02 0000 e4e5 3100 ffff ffff 0000 0000 ......1.........
407c407
< 00001960: 1300 0071 0000 b35a 2c01 0258 00c0 0435 ...q...Z,..X...5
---
> 00001960: 1300 0071 0000 b35a e803 0258 00c0 0435 ...q...Z...X...5
485c485
< 00001e40: e018 8401 1200 0071 6800 0352 1d10 8024 .......qh..R...$
---
> 00001e40: e018 aa01 1200 0071 6800 0352 1d10 8024 .......qh..R...$
661,662c661,662
< 00002940: ac0b 1200 30f1 8a00 1200 00f1 9c00 315b ....0.........1[
< 00002950: 013b 1200 2071 6800 1200 00f1 9400 0153 .;.. qh........S
---
> 00002940: ac0b 1200 00f1 9200 002c 002c 002c 002c .........,.,.,.,
> 00002950: 002c 1200 2071 6800 b15a 8000 002c 1053 .,.. qh..Z...,.S
664c664
< 00002970: 1300 30f1 9400 1300 0031 8600 b220 f9ff ..0......1... ..
---
> 00002970: 002c 002c 002c 1300 0031 8600 b220 f9ff .,.,.,...1... ..
671c671
< 000029e0: 00c0 5a61 1e03 1e01 1200 0071 6800 0006 ..Za.......qh...
---
> 000029e0: e018 d878 1e03 1e01 1200 0071 6800 0006 ...x.......qh...
759c759
< 00002f60: 1111 00c0 d85b 1200 0071 4e00 0050 0610 .....[...qN..P..
---
> 00002f60: 1111 002c 002c 1200 0071 4e00 0050 0610 ...,.,...qN..P..
761c761
< 00002f80: b150 2700 a910 b258 6500 ffc0 97ff 1200 .P'....Xe.......
---
> 00002f80: b150 2700 a910 b258 0500 ffc0 97ff 1200 .P'....X........
763c763
< 00002fa0: b150 2900 b910 1200 1031 4800 b258 3c00 .P)......1H..X<.
---
> 00002fa0: b150 2900 b910 1200 1031 4800 b258 1500 .P)......1H..X..
1653,1654c1653,1654
< 00006740: b003 1200 0031 bf03 ffc0 5da7 025b b052 .....1....]..[.R
< 00006750: ff00 a112 b032 80ff 4052 ad10 00c0 5c1d .....2..@R....\.
---
> 00006740: b003 1200 0031 bf03 b222 ff00 205b 002c .....1...".. [.,
> 00006750: 002c 002c b030 80ff 4050 ad10 00c0 5c1d .,.,.0..@P....\.
1715c1715
< 00006b20: 1200 2071 b003 ffc0 83a3 1200 2071 b003 .. q........ q..
---
> 00006b20: 1200 2071 b003 ffc0 2cea 1200 2071 b003 .. q....,... q..
2077c2077
< 000081c0: c803 eb10 1200 0071 cc03 035d e610 1200 .......q...]....
---
> 000081c0: b003 eb10 1200 0071 cc03 035d e610 1200 .......q...]....
2100c2100
< 00008330: 2071 c803 e111 1200 0071 6203 045d 044d q.......qb..].M
---
> 00008330: 2071 b003 e111 1200 0071 6203 045d 044d q.......qb..].M
2480c2480
< 00009af0: 6500 2928 1900 382d 2300 4239 4100 4c43 e.)(..8-#.B9A.LC
---
> 00009af0: 0500 2928 1900 382d 2300 4239 4100 4c43 ..)(..8-#.B9A.LC
2540c2540
< 00009eb0: 1e26 253d abac be09 0c78 a50d 9d00 0015 .&%=.....x......
---
> 00009eb0: 1e26 25aa abac be09 0c78 a50d 9d00 0015 .&%......x......
2544,2545c2544,2545
< 00009ef0: 6107 3433 0b00 5208 0000 0014 8a00 001a a.43..R.........
< 00009f00: 2221 2ab3 41b4 5d5a 0000 569e 0089 8d00 "!*.A.]Z..V.....
---
> 00009ef0: 6107 3433 0b00 5208 006e 0014 8a00 001a a.43..R..n......
> 00009f00: 2221 2ab3 41b4 5db9 0000 569e 0089 8d00 "!*.A.]...V.....
2604,2609c2604,2609
< 0000a2b0: 2f00 2f00 2f00 2a00 ffff ffff ffff ffff /././.*.........
< 0000a2c0: ffff ffff ffff ffff ffff ffff ffff ffff ................
< 0000a2d0: ffff ffff ffff ffff ffff ffff ffff ffff ................
< 0000a2e0: ffff ffff ffff ffff ffff ffff ffff ffff ................
< 0000a2f0: ffff ffff ffff ffff ffff ffff ffff ffff ................
< 0000a300: ffff ffff ffff ffff ffff ffff ffff ffff ................
---
> 0000a2b0: 2f00 2f00 2f00 2a00 1200 1071 6900 1051 /././.*....qi..Q
> 0000a2c0: 0610 1300 0071 6900 ffc0 72e8 1000 ef0f .....qi...r.....
> 0000a2d0: 1887 002c 002c 002c 002c 002c 002c 002c ...,.,.,.,.,.,.,
> 0000a2e0: 002c 002c 002c 002c 002c 002c 002c 002c .,.,.,.,.,.,.,.,
> 0000a2f0: 002c 002c 002c 002c 002c 002c 002c 002c .,.,.,.,.,.,.,.,
> 0000a300: 002c 002c 1300 0071 6900 ffff e018 1887 .,.,...qi.......
-
- Similar Topics
- Replies
- Views
- Last post
-
-
Better graphics on recent linux for x61t
by thinkpadrobert » Sun Oct 26, 2025 1:40 am » in Thinkpad X60/X61 Series incl. Tablets - 1 Replies
- 13292 Views
-
Last post by axur-delmeria
Sun Oct 26, 2025 9:40 am
-
-
-
Why is my P1 Gen 7 so much better on battery? Cool, quiet, fast — but not on AC.
by Frippe » Tue Nov 18, 2025 5:21 am » in ThinkPad P1/P14/P15/P16/P40/P50/P70 and later Series - 3 Replies
- 9755 Views
-
Last post by RealBlackStuff
Wed Nov 19, 2025 12:30 am
-
-
-
Display brightness issue with Win 10 on W520
by jdwis » Tue Nov 04, 2025 2:22 pm » in ThinkPad W500/W510/W520 and W700/W701 Series - 4 Replies
- 17222 Views
-
Last post by jdwis
Thu Nov 13, 2025 8:05 am
-
Who is online
Users browsing this forum: No registered users and 18 guests



