症状:
左侧能充电的那个usb-c 红灯始终常亮。拔下电源线也亮着。
系统里电源是始终显示正在充电,即使拔掉外接电源也显示连着外接电源正在充电!
——最吓人的是,用U盘启动进PE,想重装win10,结果在pe里还是不带外接电源,显示正在充电,且充电进度条一直滚。
——设备管理器里,找不到thunderbolt 设备,Lenovo网站下载的更新thunderbolt firmware 的工具提示 找不到 tb设备!
解决方案:参考:https://askubuntu.com/questions/980490/lenovo-x1-thinkpad-battery-not-charging-in-17-04
1关机重启,按enter->F1进bios
2在config->power->turn off Battery (这步之前我还是犹豫了,因为万一是tb硬件坏了,这一步万一睡死了变砖呢?2333 如果我没有备份机,我是绝对不敢做这一步的!)
3 此时已经黑屏关机,左侧灯肯定灭了。这时上ac电源,按电源,系统启动!
起因:
这两天win10推送的什么更新。
我的使用习惯是 每天合上盖子休眠。打开直接用,结果今天早上发现 usb-c 外接的think vision的屏幕和鼠标都不好使了。
再检查一下,发现连电都充不进去了。
一直怀疑是win10 1809升级导致的,结果折腾一天,幸亏1809的msdn镜像做得太差,没有让我顺利重装。(要不是1809的iso镜像wim文件超过4G,没法用之前的U盘刻录方式安装;要不是在pe下仍然看见诡异的不插电源显示正在充电,现在系统已经重装完了 23333.)
折腾到下午,电池的电越来越少,已经准备接受变砖可能了。
然后搜到bios里断电这个方案:在我有备份机的情况下,犹豫了一下,还是照做了。
—— 怎么说呢
1不管怎么说,不管这个bug的起因是什么(tb3 firmware 或者驱动或者win10 1809什么的),抠掉电池掉电 让电源口状态复位 这个设定,还是起到了托底的作用。最终有惊无险,我也省的完全重装系统之苦。——不管怎么样掉电,保证系统没有变砖。
2 故障还是有点诡异。有点不应该。特别是电源口失去响应,即使在pe下仍然看见电源状态是插电正在充电,实在有点吓人。
明显系统的tb口状态飞了,os 包括pe都无法get到!这时“实际ac电源插拔状态,ac口灯状态,和os里看到的是否正在充电进度条状态"已经完全不同步了。
——对写程序的启示: 这就是抛异常和watchdog的作用吧。
而且,越是关键系统,核心组件,越是不要搞得太机巧,反而要笨一点,严一点,用状态机建模。
只让系统任意时刻都运行在人为规定的唯一1个确定状态空间中!
这种类似真值表、穷举法、白名单的建模方式非常的原始,笨拙,不智能,不elegant,也不fusion。
但是管用的办法,就不是笨办法。
任何方法都不能滥用,也不能不用。用到恰到好处需要不断的多写,多体会,需要下自己功夫。