TPFanControl icon indicating copy to clipboard operation
TPFanControl copied to clipboard

X1E lots of sensor read errors

Open archon810 opened this issue 6 years ago • 6 comments

Hi,

Any idea why there are so many errors using a ThinkPad X1E reading various sensors? With the default config of 10 failures, TPFC exits within 10 minutes for me. I bumped it up to 10000 for now as I investigate.

Here's a sample log:

[1/17/2019 4:19:09 PM] Fan: 0x80 / Switch: 67°C (72; 67; 0; 1; 0; 0; 0; 0; 0; 0; 1; 0;)
[1/17/2019 4:19:09 PM] Smart: Set fan control to 0x00, Mode 1, Result: OK
[1/17/2019 4:19:09 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:10 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:10 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:11 PM] Warning: can't read Status, read error count = 0
[1/17/2019 4:19:11 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:24 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:19:24 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:24 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:19:24 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:24 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:25 PM] Warning: can't read Status, read error count = 0
[1/17/2019 4:19:25 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:29 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:19:29 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:29 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:29 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:30 PM] Warning: can't read Status, read error count = 1
[1/17/2019 4:19:30 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:34 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:19:34 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:34 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:34 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:35 PM] Warning: can't read Status, read error count = 2
[1/17/2019 4:19:35 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:39 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:19:39 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:39 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:39 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:40 PM] Warning: can't read Status, read error count = 3
[1/17/2019 4:19:40 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:44 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:44 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:19:44 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:45 PM] Warning: can't read Status, read error count = 4
[1/17/2019 4:19:45 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:49 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:49 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:49 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:50 PM] Warning: can't read Status, read error count = 5
[1/17/2019 4:19:50 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:54 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:54 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:54 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:55 PM] Warning: can't read Status, read error count = 6
[1/17/2019 4:19:55 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:19:59 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:59 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:19:59 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:00 PM] Warning: can't read Status, read error count = 7
[1/17/2019 4:20:00 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:04 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:04 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:20:04 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:05 PM] Warning: can't read Status, read error count = 8
[1/17/2019 4:20:05 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:09 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:09 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:20:10 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:10 PM] Warning: can't read Status, read error count = 9
[1/17/2019 4:20:10 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:14 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:14 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:15 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:15 PM] Warning: can't read Status, read error count = 10
[1/17/2019 4:20:15 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:19 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:20:19 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:20:19 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:20 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:20 PM] Warning: can't read Status, read error count = 11
[1/17/2019 4:20:20 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:24 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:20:24 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:20:24 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:25 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:25 PM] Warning: can't read Status, read error count = 12
[1/17/2019 4:20:25 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:29 PM] failed to read FanSpeedLowByte from EC
[1/17/2019 4:20:29 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:20:29 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:30 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:30 PM] Warning: can't read Status, read error count = 13
[1/17/2019 4:20:30 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:34 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:20:34 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:35 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:35 PM] Warning: can't read Status, read error count = 14
[1/17/2019 4:20:35 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:39 PM] failed to read FanSpeedHighByte from EC
[1/17/2019 4:20:39 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:40 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:40 PM] Warning: can't read Status, read error count = 15
[1/17/2019 4:20:40 PM] We will close to BIOS-Mode after 10000 consecutive read errors
[1/17/2019 4:20:44 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:44 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:45 PM] failed to read TEMP0 byte from EC
[1/17/2019 4:20:45 PM] Warning: can't read Status, read error count = 16
[1/17/2019 4:20:45 PM] We will close to BIOS-Mode after 10000 consecutive read errors

archon810 avatar Jan 18 '19 00:01 archon810

I set it to 100, and wow, at some point yesterday, it managed to exit, meaning 100 consecutive failed read attempts.

[1/18/2019 8:31:36 AM] Warning: can't read Status, read error count = 96
[1/18/2019 8:31:36 AM] We will close to BIOS-Mode after 100 consecutive read errors
[1/18/2019 8:31:40 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:41 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:41 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:41 AM] Warning: can't read Status, read error count = 97
[1/18/2019 8:31:41 AM] We will close to BIOS-Mode after 100 consecutive read errors
[1/18/2019 8:31:45 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:46 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:46 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:46 AM] Warning: can't read Status, read error count = 98
[1/18/2019 8:31:46 AM] We will close to BIOS-Mode after 100 consecutive read errors
[1/18/2019 8:31:50 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:51 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:51 AM] failed to read TEMP1 byte from EC
[1/18/2019 8:31:51 AM] Warning: can't read Status, read error count = 99
[1/18/2019 8:31:51 AM] We will close to BIOS-Mode after 100 consecutive read errors
[1/18/2019 8:31:55 AM] failed to read TEMP1 byte from EC
[1/18/2019 8:31:56 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:56 AM] failed to read TEMP0 byte from EC
[1/18/2019 8:31:56 AM] Warning: can't read Status, read error count = 100
[1/18/2019 8:31:56 AM] We will close to BIOS-Mode after 100 consecutive read errors
[1/18/2019 8:31:57 AM] Fan: 0x00 / Switch: 80°C (85; 80; 0; 1; 0; 0; 0; 0; 0; 0; 1; 0;)
[1/18/2019 8:31:57 AM] Max. Errors: Set fan control to 0x80, Result: OK
[1/18/2019 8:31:57 AM] Set to BIOS Mode, to many consecutive read errors
[1/18/2019 8:31:59 AM] Fan: 0x00 / Switch: 80°C (85; 80; 0; 1; 0; 0; 0; 0; 0; 0; 1; 0;)
[1/18/2019 8:31:59 AM] On close: Set fan control to 0x80, Result: OK
[1/18/2019 8:31:59 AM] Exiting ProcessDialog

archon810 avatar Jan 19 '19 16:01 archon810

Hey,

Unfortunately, I don't know a ton about how TPFC actually works. I just managed to get it to work on dual fan Thinkpads, but the rest of the program was written by people who know a lot more low-level programming than I do. Without actually having an X1E, it's hard to say what's different compared to the EC on the p51, but if I had to guess, I'd say there's some slight differences on how the EC outputs fan speed/temp info. I doubt it makes any difference, but you could try disabling the dGPU temperature sensor from the config file, because I think the X1E turns off the dGPU when not in use. Maybe try disabling all temp sensors other than the CPU to see if that makes any sort of a difference in read error rate.

I'm curious to know if the regular (single fan) version of TPFC also has issues reading from the EC, or if it's just my version. It doesn't look like that version has been updated after my version, so the code to read from the EC should be the same.

byrnes avatar Jan 19 '19 20:01 byrnes

The version I have on my T570 (TPFC.63) doesn't work on the X1E at all. Here's what it does, even if I force it to fan 0:

image

The version you have works, but with those errors.

I already disabled these: IgnoreSensors=no5,cpu,gpu,pwr because I want it to go off aps, but the errors keep coming.

archon810 avatar Feb 01 '19 06:02 archon810

Aaaand now for some reason your version doesn't work either. I may need to reboot:

image

archon810 avatar Feb 01 '19 06:02 archon810

@archon810 I'm faced with exactly the same problem now. The current version of TPFanControl does not seem to work on X1E and I feel like it needs to be upgraded. However, I noticed that it has not been upgraded for a long time.

zhiaozhou avatar Mar 11 '19 10:03 zhiaozhou

I ended up dumping TPFC first and then returning the X1E entirely because with TPFC trying to spin the fans down, the 6-core CPU overheats very quickly and thermal throttling kicks in to the point that in some cases I saw the CPU permanently throttle to 0.2GHz and practically freeze my machine for many minutes at a time.

With TPFC off, the fans run constantly at full speed, even when idle, and it became unbearable. I ended up going back to my T570 which runs dead quiet with TPFC and doesn't overheat, and for more power for my 3-monitor desktop setup, I built a powerful and quiet desktop instead.

I was also getting roughly 2 hours of battery on the X1E and tons of problems with the Lenovo TB3 gen2 dock randomly losing outputs.

The dream of having a powerful laptop capable of replacing a desktop and powering 3 monitors that is also quiet, portable, and has good battery life continues to be just a dream for me. Maybe in another 3-4 years.

archon810 avatar Mar 11 '19 18:03 archon810