目录
前言
之前在群友的安利下,(趁商家还没反应过来) 薅了两个随身wifi,这东西可以连wifi,而且USB直接就是OTG,可以接拓展坞,作为Linux主机来使,我则是准备拿来刷上debian装Klipper给打印机用,虽然OTG只有一个,但是只接一块klipper下位机还是足够了。然而鸽了几个月才有兴趣折腾一下,这里把折腾的流程总结记录一下,从拆机、刷机、装debian到装klipper都有记录,后面有需要的朋友可以作为参考。
声明:我这里不是简单把别人写过的教程又复制一遍,更多是相当于一个整合,以及流程的梳理。会贴不少参考文章的链接,建议大家都打开对照着看。
1、随身wifi的硬件
我手上的两个随身wifi,一个型号是UFI_16_V3
可以看到我在前面两个脚上焊了截焊锡,用来短接进9008模式,实际上如果板子上有按钮,按住按钮再插入USB也是可以进9008的,不需要焊接飞线。
另一个是UFI_003
2、工具部分
首先得感谢酷安的各位大佬,在前面已经做了无数的努力,贴心的为我等“后来者”准备好了应对各种情况必备的软件,甚至于是懒人包,直接拿来刷进去就能达到目的。
(1)高通骁龙芯片的随身wifi入门刷机教程
这是我刚开始参考的一篇教程,内容非常详尽,也在文章中提供了例如Qualcomm Premium Tool V2.4的破解版、MiKo_Loder Pro、ARDC、adb甚至于安卓软件等,应有尽有,不必全部下载,根据需求来就行。
(2) UFI_16_V3 刷机包@ 夏至未见
这是对应UFI_16_V3的刷机包,刷完后是已经root过的安卓系统,为我省去了许多麻烦,例如进adb、root、改分辨率等。当然里面不只是刷机包,还有必备的工具,和前面一个链接里的工具有重复,不过他这个里面没有adb,建议自己找或者下载第一个链接里的。
(3)Debian刷机包,适用于UFI003
这里罗列一下我用到的软件,大家仅供参考
(1)Qualcomm Premium Tool V2.4
用来备份系统文件,以防止变砖。
(2)MiKo_Loder Pro
主要是用来安装别人分享的系统镜像,可以导出整个系统的镜像文件为二进制,方便分享,因此也能备份以防变砖。
(3)ADB-platform-tools_r33.0.2-windows
是adb工具,在下载以后不需要安装,但是得在环境变量里添加上该文件夹的路径,用来快捷在cmd中使用adb命令
(4)ARDC
安卓远程调试软件,由于随身wifi的安卓版本比较老,不支持新的调试工具,ARDC是最合适的,需要在设备开启ADB以后使用。
他除了界面以外,也相当于是图形化的adb命令,比如读取设备信息,或者重启后进fastboot等命令,可以直接在ARDC里找到按钮来调用。
(5)Debian
需要刷Debian的话,可以去Github下载Openstick的包【OpenStick】,找到旁边的release ,下载最新版。
3、操作
剩下的工作大家按照第一个链接的操作来就行了,这里做一下总结。
1. 进入9008
按住板子上的按钮,插入USB,然后松开,正常来说就能从设备管理器的端口选项中看到高通9008字样的设备,如下图:
2.打开Qualcomm Premium Tool V2.4或者MiKo_Loder,对设备进行备份。
Miko和QTP都是用来备份或者恢复的,但是miko和 QTP 是有区别的:
- miko是把所有分区压缩成一个xx.bin包文件,可以一键刷回所有分区, 俗称救砖包。
- QTP是把所有(27个)分区分开,以每一个分区为单位,单独进行备份,用法:可以针对 boot system 等分区 单独恢复
(1)Qualcomm Premium Tool备份操作:
在9008模式下打开软件,先点Detect必须装好adb和9008的驱动,扫描不到可能是没装驱动。以上提供的包中都有9008驱动,先安装上。
虽然理论上只需要备份system、userdata以及boot等几个分区的文件,其他分区的基本不会动,但是还是保守起见全部备份一下。
备份完成以后只要有备份文件在,就能为所欲为了,变砖也能救。
(2)MikoLoader备份操作:
在使用Qualcomm Premium Tool备份完后,再直接用Miko是扫描不到的,要拔掉重新进9008才行。
还原bin文件:
3. 进入ADB模式
重新拔插,退出9008模式,让设备正常工作,检查设备adb是否开启,只有开了ADB才能使用ARDC等软件远程控制设备,一般默认是开着的,如果没开就得手动开了。
(1) 首先保证已经下载了adb工具,且添加到了环境变量。
方法:使用Win+R输入cmd,或者任何你喜欢的方法打开cmd或者poweshell,输入指令
adb version
,应当返回你下载的adb版本,如果返回的如下图所示就是能正常使用adb了。
(2)输入`adb devices`,会返回当前连接的启动了adb的设备,如图所示,在“List of devices attached”上下应当有设备码以及device的标识。
如果仅有“List of devices attached”一行,那么也是没有设备被找到的。
如果像上图一样没有出现设备,则需要确认设备是否有打开adb,进行手动开启adb,可以参考文章【高通芯片的随身Wi-Fi开启adb】。
该操作需要用到软件“DiskGenius Pro”,软件的话请自行寻找,上述链接中也有提供。
这里对手动开启adb的方法概括一下
1)使用DiskGenius的“打开虚拟磁盘文件功能”,打开之前由Qualcomm Premium Tool备份的文件中的system镜像磁盘文件;
2)该镜像是呈现以文件夹形式,展开先随便点个文件夹,再点磁盘的主分区,可以看到根目录下最后两个文件,找到build.prop和build.prop.bakforspec文件,以及vendor/Default/system的build文件,将它们复制出来,记得做好备份;
3)修改其中的
# Set Composition for USB
字段,行数不一定,不同的板子不同位置,可以直接搜索,查看后面是否有adb字样,如果有就是已经打开了adb,如果没有就加上
,adb
,注意英文逗号。
4)从本地拖到DiskGenius的文件夹中,复制并替换,把修改过的system镜像文件再用QTP烧回设备中,注意这里只用烧system一个分区就行了。
还原方式:
他没有进度条,等待烧写完成。
再次重新拔插设备,使用adb命令检查设备是否开启了adb
扫描到了,下一步就可以使用ARDC之类的远程软件控制了,剩下的操作就和玩安卓机一样。
4.打开ARDC,选择设备,进行连接
连接上会出现安卓机的界面
剩下的步骤就是按照【高通骁龙芯片的随身wifi入门刷机教程】中写的进行,就是先装他提供的几个软件,进行ROOT,完成ROOT后基本上玩它就没有障碍了。
5.安装Debian
如果想要安装Debian,先使用命令
adb reboot bootloader
,使设备重启后进入fastboot模式
然后从Github下载的Debian文件中的base文件并解压夹打开,后续操作参考OpenStick的官方文档
也可参考博客随身wifi刷机Debian安装OMV做轻NAS
【注】我的UFI_16_v3在最后这一步出现了问题,在fastboot模式下执行base文件夹中的flash.bat时失败,无法刷进该版本的bootloader。后来寻找原因,在设备中安装了ES文件浏览器,发现设备没有磁盘,无法使用magisk修改本机的boot镜像进行root,也就是在没有root的情况下尝试更新bootlaoder,自然是失败的,于是去酷安论坛中寻找,万幸找到了已经修改过root成功的同硬件镜像版本,也就是 UFI_16_V3 刷机包@ 夏至未见。
在使用MikoLoader刷了这个版本的安卓后,再进行debian的安装就很顺利了,先执行base文件夹中的flash.bat,等待安装完成,然后解压debian.zip,将对应自己版本的img文件(我刷的是boot-ufi001c.img)复制到debian文件夹中,并重命名为boot.img,覆盖原有的boot.img,最后执行其中的flash.bat,就开始往设备中装debian的,过程应该是很顺利的,等待安装完成,就可以把它当作debian来使用了。
如果大家也是遇到奇奇怪怪的问题,可以去酷安的【随身wifi】分区中搜索看看,一般都能获得解答。
6.Debian安装之后的使用
(1)驱动的安装
在装Debian成功后,重新拔插设备,该设备的网络部分会通过USB被识别为RNDIS设备,使用电脑通过USB共享的网络,这时可能没有安装驱动,显示的是一个黄色感叹号,如果在你的电脑上显示的还是ADB Interface ,就是驱动装的不对了,需要卸载掉设备,重新拔插来识别,如下图所示。
RNDIS驱动安装方法:
从任务管理器看到这么个设备就是安装好了
(2)进入Debian
使用cmd,输入
adb shell
即可进入设备的命令行,这里直接进去就是root模式,具有全部的访问权限。
由于cmd支持的ssh命令不多,可以先打开ssh,再使用MobaXterm之类的进行ssh访问。
官方说明如下:
该设备通过USB连接RNDIS的固定IP是
192.168.68.1
,通过MobaXterm输入该IP进行ssh的连接,账户是user,密码是1。
若连不上,可能是ssh没打开,使用命令行的adb shell访问设备,输入
systemctl start ssh
启动ssh,如果这个命令无效,可以试试
service sshd start
。
然后在MobaXterm下,使用
nmtui
命令打开图形化网络配置,连接到你家里的wifi,有需求就设置手动ip,往后就能随便插哪儿,通过wifi访问了。
(3)设置镜像源
这个版本的debian甚至没有安装vim,因此需要手动安装:
sudo apt install vim
。
等待安装vim完成,输入
sudo vim /etc/apt/sources.list
,将以下链接贴到里面去,如果右键粘贴不了,试试CTRL+右键,然后Paste,这里使用的是阿里源。
deb https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye main non-free contrib
deb https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb-src https://mirrors.aliyun.com/debian-security/ bullseye-security main
deb https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-updates main non-free contrib
deb https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
deb-src https://mirrors.aliyun.com/debian/ bullseye-backports main non-free contrib
粘贴完成后按esc,然后输入
:wq
(注意别忘了冒号),回车。这里不能粘贴得一个个敲。
(4)安装Octoprint
想要装Klipper,在debian上首先需要安装Octoprint,由于官网上都是基于树莓派的镜像,这里给出手动安装的链接,若debian配置得当,安装过程理应很顺利,如果遇到安装问题,建议善用百度或stackoverflow。
【在Debian上配置 OctoPrint】
安装完成后,需要配置开机自启,和其他应用一样,都是在/etc/systemd/system/文件夹中新建一个xxx.service文件,然后使用systemctl enable启动它。
原版基于树莓派的自启动的方法如下所示:
但是由于我们不是用的树莓派的镜像,因此该文件需要进行一定的修改。
1)
sudo vim /etc/systemd/system/octoprint.service
进入该seivice文件
2)粘贴以下内容
[Unit]
Description=The snappy web interface for your 3D printer
After=network-online.target
Wants=network-online.target
[Service]
Environment="LC_ALL=C.UTF-8"
Environment="LANG=C.UTF-8"Type=exec
User=user
#下面这个路径需要注意
ExecStart=/home/user/OctoPrint/venv/bin/octoprint
[Install]
WantedBy=multi-user.target
粘贴完成后按esc,然后输入
:wq
如果是按照正常步骤安装的,那么这个文件可以直接用,否则需要清楚你的Octoprint装在哪儿了,填入该文件的路径,不然的话就使用命令
sudo find / -name "octoprint"
来找到该文件。
如此便完成了对自启文件的配置。
再就是使能开机自启:
systemctl enable otoprint
启动octoprint:
systemctl start otoprint
然后查看Octoprint状态:
systemctl status otoprint
到这一步如果一切正常,应该看到如下的报文
否则就是哪里配置不对,先检查.service文件里的路径
ExecStart=
以及用户名
User=
,完成修改后使用
systemctl daemon-reload
命令对该服务进行重启。
或者先杀掉Octoprint的进程(怎么杀进程请百度),然后进目录手动启动,检查返回的保存信息,进行百度,挨个排除。
若一切顺利,现在可以从你的设备IP的5000端口访问Octoprint了,在浏览器输入
192.168.68.1:5000
即可打开控制网页,进行用户注册、机器初始化等。
(5)安装Klipper
在安装完成Octoprint后,即可前往Klipper的官网安装klipper了,根据说明一步步来就可以,涉及到Linux这边的安装都应该还比较顺利,如果遇到内存不足等问题,还请善用搜索引擎,基本搜一搜都能解决。
总结
根据本文的说明,相信可以应付大多数随身wifi的安装了,如果是新版本的其他型号主板,还需要看OpenStick的大佬会不会继续做兼容,目前已知的几款,直接按照ufi-001来耍是没问题的,如果真的没法用,就只能把存好的原版镜像拿来一键还原了。最好还是买之前先去酷安看看该品牌的有没有坑,比如最新的ufi-004,部分小伙伴就无从下手。
版权归原作者 Wake_Dream_2333 所有, 如有侵权,请联系我们删除。