Wi-Fi 自愈与触摸板排障
摘录自项目 README;脚本可在本站的「项目文件」中下载。
5.2 触摸板:突停突跳
症状:光标移动时突然卡住,然后一次跳到很远处。
- 触摸板型号 ELAN07BB,走 I2C HID(
VoodooI2C),默认使用 GPIO 中断(gpioPin 323) - HP 机型的 GPIO 中断不可靠:中断丢失 → 事件在驱动里积压 → 恢复时一次性涌出
- 日志里没有任何 I2C 错误,因为链路本身没坏,坏的是“通知机制”
解决:强制轮询模式
- amfi_get_out_of_my_way=1 msgbuf=1048576 -v -wex-edp-keep
+ amfi_get_out_of_my_way=1 msgbuf=1048576 -v -wex-edp-keep -vi2c-force-polling
代价是极小的 CPU 占用(8 ms 报告周期),换来完全稳定的手感。
5.3 Wi-Fi:重启后必须手动开关
症状:每次重启后 Wi-Fi 图标是灰的,手动关一下再开就正常。
根因:airportd 在 itlwm 接口就绪之前启动,初始化失败后不再重试;手动开关等于变相重启 airportd。
解决:开机守护,检测接口状态,必要时重启 airportd(见 scripts/)。
sudo cp scripts/wifi-fix.sh /usr/local/bin/wifi-fix.sh
sudo chmod 755 /usr/local/bin/wifi-fix.sh
sudo cp scripts/com.jeff.wififix.plist /Library/LaunchDaemons/
sudo chown root:wheel /Library/LaunchDaemons/com.jeff.wififix.plist
sudo launchctl bootstrap system /Library/LaunchDaemons/com.jeff.wififix.plist