天选3在Linux平台的使用

本文主要讲述天选笔记本的特性,而不会涉及诸如Linux、fcitx的安装等问题



主要硬件

核显的驱动已并入内核。NVIDIA驱动安装:

  • Arch: sudo pacman -S nvidia nvidia-primesudo pacman -S nvidia-dkms nvidia-prime
  • Manjaro: 系统设置内安装闭源驱动或使用 mhwd
  • Ubuntu: 见该文章
  • 其他发行版请自行搜索

休眠唤醒后无法使用热键、电池数据不更新等问题解决方案

asus_ec_sensors加入黑名单
在/etc/modprobe.d/中创建asus.conf文件,在里面写上以下内容:

# Do not load the 'asus_ec_sensors module on boot.
blacklist asus_ec_sensors

/etc/mkinitcpio.conf中添加配置文件
编辑/etc/mkinitcpio.conf,找到FILES=(),添加/etc/modprobe.d/asus.conf

随机重启、卡死解决方案 (非锐龙版请跳过以下部分)

原文位于该链接

翻译

解决方案1: 使用LTS内核可以避免这个问题。
解决方案2: 使用R8168模块代替R8169模块。

  1. 安装r8168r8168-dkms软件包,安装哪一个取决于你使用的内核
    sudo pacman -S r8168
  2. r8169加入黑名单
    /etc/modprobe.d/中创建no8169.conf文件,在里面写上以下内容:
# Do not load the 'r8169' module on boot.
blacklist r8169
  1. /etc/mkinitcpio.conf中添加配置文件
    编辑/etc/mkinitcpio.conf
    找到FILES=(),添加/etc/modprobe.d/no8169.conf,使它看起来像这样:
FILES=(/etc/modprobe.d/no8169.conf)
  1. 生成initramfs
    sudo mkinitcpio -p linux #取决于你使用的内核

该方法适用于ArchLinux。对于其他发行版,请自行搜索内核模块r8168的安装方式。(2、3、4步在大多数发行版中适用)

同时可能需要禁用C6以获得更高稳定性,Arch系可安装AUR软件包disable-c6-systemd;其他发行版请自行安装zenstates,添加一个service到/lib/systemd/system/disable-c6.service并enable:

[Unit]
Description=Ryzen Disable C6
DefaultDependencies=no
After=sysinit.target local-fs.target suspend.target hibernate.target
Before=basic.target

[Service]
Type=oneshot
ExecStart=/usr/bin/zenstates --c6-disable

[Install]
WantedBy=basic.target suspend.target hibernate.target

禁用C6会导致无法睡眠,可使用 UniversalAMDFormBrowser (该项目被删除,安装方法可见该帖子)启用S3,或添加一个service到/lib/systemd/system/enable-c6-when-suspend.service并enable以恢复睡眠功能:

[Unit]
Description=Ryzen Enable C6
DefaultDependencies=no
Before=suspend.target hibernate.target

[Service]
Type=oneshot
ExecStart=/usr/bin/zenstates --c6-enable

[Install]
WantedBy=suspend.target hibernate.target

该service会在睡眠前再次启用C6。

其他问题参见Ryzen - ArchWiki


键盘热键驱动

键盘上大多的Fn键都可以正常使用,并且已经预设好对应功能。但奥创中心键、AURA键由于没有对应的功能键,并不能在快捷键设置界面被读取到。在Github逛了一圈,找到了asus-wmi-hotkeys-driver这一项目。但这一项目也没有提供这两个按键的驱动,但提供了思路。于是Fork了这个项目,自己添加了这两个键的驱动 (理论上也适用有这两个键的其他型号)。安装好这一驱动后,奥创中心键会被识别为Meta + Shift + A, ARUA键会被识别为Meta + Shift + B。如有冲突,也可以自行修改 keys_wmi_layouts/fa507r.py 这一文件。

这些键的驱动已并入5.19版本内核。

Fn + F5 可以切换风扇模式。这个组合键是无法被系统读取的,起初怀疑与前两个键不是同一个input设备,后来发现这一组合键会直接操作风扇模式而不经过系统,所以这一组合键不需要额外驱动。 6.1内核将更新对该按键进行修改的方式。


风扇模式调节

上面说到,可以使用键盘调节风扇模式。同时/sys/devices/platform/asus-nb-wmi/throttle_thermal_policy
也可以实现修改与读取。其内容意义见下表:

内容意义
0Normal (性能模式)
1Overboost (增强模式)
2Silent (静音模式)

同时,我找到了KDE的一个小部件Command Output,可以用于实时显示风扇模式。首先,编写如下脚本,存于/usr/bin/fan-mode内并执行chmod +x /usr/bin/fan-mode

#!/bin/sh

mode=`cat /sys/devices/platform/asus-nb-wmi/throttle_thermal_policy`
case $mode in
        0)
                echo "Normal"
                ;;
        1)
                echo "Overboost"
                ;;
        2)
                echo "Silent"
                ;;
esac

在此之后,添加 Command Output 小部件到面板内,右击并选择配置Command Output...,在 Command 下的输入框填入echo "Fan: $(fan-mode)"。建议将Run every后的值设定为500以上,否则可能造成较大的性能浪费。由于我使用的非gnome,且没有找到合适的替代品,故不作介绍。

效果如图:

再分享一个用于切换风扇模式的脚本:

#!/bin/sh

origin=`cat /sys/devices/platform/asus-nb-wmi/throttle_thermal_policy`
case $origin in
        0)
                echo 1 > /sys/devices/platform/asus-nb-wmi/throttle_thermal_policy
                ;;
        1)
                echo 2 > /sys/devices/platform/asus-nb-wmi/throttle_thermal_policy
                ;;
        2)
                echo 0 > /sys/devices/platform/asus-nb-wmi/throttle_thermal_policy
                ;;
esac

限制充电

直接写入限制值到/sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT1/charge_control_end_threshold (关机/睡眠后失效,包括关机状态)

或添加一个service到/lib/systemd/system/set-charge-end-threshold.service:(永久有效)

[Unit]
Description=Set Charge End Threshold

[Service]
Type=oneshot
User=root
ExecStart=/bin/sh -c "cat /etc/charge_control_end_threshold > /sys/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0A:00/power_supply/BAT1/charge_control_end_threshold"

[Install]
WantedBy=basic.target suspend.target

后将限制值写入/etc/charge_control_end_threshold并enable。


键盘RGB

使用6.1以上版本内核并安装0.9以上版本OpenRGB即可修改。


MUX Switch

需要内核版本 >= 6.1。
运行echo 0 | sudo tee /sys/devices/platform/asus-nb-wmi/gpu_mux_mode并重启可启用独显直连。(不推荐使用,会出现DPI问题,且并不会带来很大性能提升)
运行echo 1 | sudo tee /sys/devices/platform/asus-nb-wmi/gpu_mux_mode并重启可恢复混合输出。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值