思路来源于linux-surface项目的指南,理论上适用于所有X16基带的Surface产品,修改了少量代码以在ChromeOS上运行。步骤如下:
1. 按Ctrl+Alt+T打开ChromeOS的终端,运行shell进入shell模式,再运行sudo su
获取管理员权限。
2. 切换到有写入权限的文件夹,如运行cd /home/root
。
3. 运行vi lte.sh
,按Ctrl+Shift+V复制下列命令
#!/bin/bash
echo 16383 | sudo tee /sys/bus/usb/devices/2-3/2-3:1.0/net/wwan0/cdc_ncm/rx_max
echo 16383 | sudo tee /sys/bus/usb/devices/2-3/2-3:1.0/net/wwan0/cdc_ncm/tx_max
echo 16384 | sudo tee /sys/bus/usb/devices/2-3/2-3:1.0/net/wwan0/cdc_ncm/rx_max
echo 16384 | sudo tee /sys/bus/usb/devices/2-3/2-3:1.0/net/wwan0/cdc_ncm/tx_max
restart modemmanager
注意不同设备的路径可能不一样,请自行在类似路径内寻找wwan0设备并修改路径
最后直接输入:wq
退出vi编辑器。
4. 运行bash lte.sh
现在设备应该能连接到LTE网络了。
原理原文如下:
there seems to be an issue with the buffer size not being set correctly on boot. However, the modem is showing up and working fine after forcing the cdc_ncm driver to set the buffer sizes manually.
也就是说驱动是没问题的,但是buffer size没有在启动的时候正确设置,导致LTE功能默认不可用,我们只要手动指定一下就OK了。
(请问开发者能不能在新版FydeOS for You里面直接打个小补丁?)
如果重启之后LTE又没了,那就再按上述步骤走一下,cd到你创建脚本的目录,运行一下lte.sh,或者直接加到启动脚本里面,这里就不赘述了。