骁龙 410 随身 WiFi 刷入 Debian 系统并优化

教程

前言

最近我在网上看到一款骁龙 410 SoC 的随身 WiFi,性价比高,领券后十元以下就能买到。更重要的是,这款 SoC 的随身 WiFi 能刷 Debian 系统。你可以在上面搭建网站甚至 MC 服务器,也可以接上扩展版当 Linux 开发板用,可玩性很高。

本文记录一下刷机的步骤和注意事项。

硬件配置

这款随身 WiFi 配置如下:

SoC 骁龙410(MSM8916)四核 Cortex-A53,64 位
内存 512MB
存储 4GB
版号 UFI001C、UFI001B、UFI003、UZ801、SP970
注意

不是骁龙 410 SoC 的随身 WiFi 无法刷机,请知悉。

所需文件

如果不确定下载哪个,请先查看板子型号再下载刷机包。

查看板子型号

用螺丝刀将随身 WiFi 的外壳拆开,查看板子上方的丝印,型号一般以 UFI、UZ 或 SP 开头。如红框中所示,我买到的型号是 UFI003。

1702214357490

安装 9008 驱动

执行 driver.exe,并点击立即安装。在弹出如下窗口中,点击“安装”。

image-20231204174343852

安装 ADB 工具

解压 platform-tools_r34.0.5-windows.zip,并将解压目录添加到环境变量。

image-20231210224939537

打开命令提示符,执行 adb version。有如下输出,则表明配置正确。

C:\Users\Thinkpad>adb version
Android Debug Bridge version 1.0.41
Version 34.0.5-10900879
Installed as D:\platform-tools\adb.exe
Running on Windows 10.0.19045

安装 Miko 备份工具

解压 MiKo_Loder Pro.zip,运行 miko.exe 安装备份工具。安装完成后,桌面上会出现 Miko 备份工具的快捷方式。在图标上右键,打开文件所在位置,将解压得到的 Loader.exe 复制到 Miko 安装目录即可。

image-20231210215138055

开启 ADB

将随身 WiFi 插入电脑 USB 接口。打开设备管理器,如果此时多了一个名叫 Android Composite ADB Interface 的设备,则表明随身 WiFi 已经开启 ADB,无需执行其他操作。

如果没有出现这个设备,则需要手动开启 ADB。以 UZ801 型号为例,连上随身 WiFi 的热点,并访问 http://192.168.100.1/usbdebug.html 即可开启 ADB,再次访问即可关闭。

image-20231210215947101

提示

部分 UFI003 型号的随身 WiFi 默认不开 ADB,需要手动进 9008 模式刷入已开启 ADB 的安卓固件。

固件下载地址:https://www.123pan.com/s/NUK8Vv-nRdl 提取码:1LEW

手动进 9008 模式的方法:按住 reset 键不放(随身 WiFi 背面二维码右上角的小孔,用取卡针或牙签戳即可),并将随身 WiFi 插入电脑,松开 reset 键。

备份原厂固件

为避免刷错固件变砖等情况,强烈建议备份原厂固件。

打开命令提示符,执行 adb reboot edl,此时设备管理器中会多出高通 9008 设备。

image-20231210221934063

我们运行上文所提到的 Loader.exe(即 Miko 工具)进行备份数据。

此时窗口右侧显示设备信息,表明随身 WiFi 已被成功识别。如果显示 Not Found 字样,请重新安装 9008 驱动并再次尝试。

依次点击 Read –>Partition Backup/Erase–>Load Partition Structure。然后双击红色 Option 下面的灰条,选择备份目录,并点击 Read Full Image。再次选择备份目录,并取一个文件名,点击确定,即可开始备份。

image-20231210233137419

等待几分钟,直到进度条达到 100%,右侧输出 Sucess 字样和用时,则表明备份完成 。

image-20231210234948575

如果需要恢复备份,依次点击 Flash –>emmc block0 flasher。然后双击 Emmc Data,选择之前备份的文件(.bin 格式),并点击下方 Flash 按钮,等待刷机完成即可。

668b99e4dcc3d.png

刷入 Debian

拔掉随身 WiFi 并重新插入 USB 接口,解压 Debian 刷机包。打开命令提示符,执行 adb reboot bootloader 进入 fastboot 模式。运行刷机包中的 flash.bat刷入系统,等待刷机完成。

image-20231210235717253

输出 all done! 则表明刷机完成。

image-20231210235939348

安装 RNDIS 网络驱动

提示

如果设备管理器只显示 Android Device,右键更新驱动程序,依次选择 Microsoft - USB 移动宽带网络适配器,然后重新插入随身 WiFi,会出现一个未知设备,再根据下述步骤进行操作。

重新插入随身 WiFI,打开任务管理器,在其他设备中会出现一个未知设备或以 RNDIS 开头的设备。

image-20231211002244435

右键,更新驱动程序–>浏览我的电脑以查找驱动程序–>让我从计算机上的可用驱动程序列表中选取–>显示所有设备,等待列表加载完成。

image-20231211002348468

左侧选择 Microsoft,右侧选择 基于远程 NDIS 的 Internet 共享设备,在弹出窗口中选择是,并确定。

image-20231211002724457

至此,RNDIS 驱动安装成功。

image-20231211002850196

连接随身 WiFi 终端

image-20231211004205761

驱动安装成功后,电脑上会多出一个名叫 4G_UFI_123456 的 NDIS 设备,同时会出现一个同名的热点,密码为 12345678

Debian 默认用户名为 user,密码为 1,root 密码也为 1。请务必及时修改密码(命令:passwd)。

此时可以通过 adb 或 ssh 连接到 Debian 终端。

通过 adb 连接

将随身 WiFi 插入电脑 USB 接口,使用以下命令查看已连接 adb 设备:

adb devices
C:\Users\Thinkpad>adb devices
List of devices attached
0123456789 device

有新设备出现时,使用以下指令进入 bash:

adb shell

通过 adb 连接时,使用 nmtuihtop 等需要显示图形的命令,可能会出现如下错误:

root@openstick:/# nmtui
TERM environment variable needs set.

设置 TERM 环境变量即可解决。

export TERM=linux

通过 ssh 连接

将随身 WiFi 插入电脑 USB 接口或连接上随身 WiFi 的热点,使用以下指令进行连接:

ssh root@192.168.68.1

如果连不上说明系统还在启动,请稍后再试。

随身 WiFi 联网

此时随身 WiFi 并没有联网,必须要关闭热点才能连接 WiFi。下面介绍详细步骤。

首先打开命令提示符,执行 adb shell 进入 Debian 终端。然后设置 TERM 环境变量:export TERM=linux

执行 nmtui,选择“编辑连接”。

image-20231211005030766

左侧使用方向键选择 bridge,右侧选择“编辑”。并回车。

image-20231211005119460

删除其中的 wifi,并选择确定。。

image-20231211005229505

image-20231211005307459

返回,选择启用连接,则可连接 WiFi。

img

优化系统

删除无效软件包仓库

rm -rf /etc/apt/sources.list.d/*

删除多余软件包

apt autopurge -y adoptopenjdk-8-hotspot

更换软件源

cat <<EOF> /etc/apt/sources.list
deb http://mirrors.ustc.edu.cn/debian/ bullseye main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian/ bullseye main contrib non-free

deb http://mirrors.ustc.edu.cn/debian/ bullseye-updates main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian/ bullseye-updates main contrib non-free

#deb http://mirrors.ustc.edu.cn/debian/ bullseye-backports main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian/ bullseye-backports main contrib non-free

deb http://mirrors.ustc.edu.cn/debian-security/ bullseye-security main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian-security/ bullseye-security main contrib non-free
EOF

更新软件包

apt update && apt upgrade -y

安装常用软件包

apt install -y nano curl

删除软件包缓存

apt clean

关闭 LED 灯(可选)

随身 WiFi 开机后,LED 灯会不停地闪烁,如果不喜欢的话,执行以下命令即可关闭。

echo none > /sys/class/leds/blue:wifi/trigger
echo none > /sys/class/leds/red:os/trigger

执行后会立即生效。为避免重启后失效,建议设置开机自动执行。

编辑 /etc/rc.local 文件,并将以上两行命令添加到 exit 0 之前,并保存。

image-20231211155540049

关于更多 LED 灯控制的高级用法,建议参考 随身WIFI折腾日记(一)—霓虹灯 这篇文章。

后记

感谢 HandsomeHacker 大佬的 OpenStick 开源项目和苏苏小亮亮大佬的 刷机包,能在随身 WiFi 上用上 Linux 系统离不开他们的努力。

本文作者:Tony

本文链接: https://blog.iamsjy.com/2023/12/11/snapdragon-410-portable-wifi-hotspot-flash-debian-and-optimize/

文章默认使用 CC BY-NC-SA 4.0 协议进行许可,使用时请注意遵守协议。

评论