一加3T三段式开关切换 openpilot 版本
一加3T三段式开关切换 openpilot 版本
2025亲测:切换系统时,直接断电(拔掉),在断电的时候拨动按键,在插线通电。这样每次都不会产生备份文件夹
前情提要:
#!/usr/bin/bash
cd /data/ &&
rm -rf openpilot &&
git clone https://mirror.ghproxy.com/https://github.com/dragonpilot-community/dragonpilot -b d2 --single-branch --depth=1 openpilot &&
touch /data/data/com.termux/files/continue.sh &&
echo "#! /usr/bin/bash" >> /data/data/com.termux/files/continue.sh &&
echo "cd /data/openpilot" >> /data/data/com.termux/files/continue.sh &&
echo "exec ./launch_openpilot.sh" >> /data/data/com.termux/files/continue.sh &&
chmod u+x /data/data/com.termux/files/continue.sh && reboot
特别提醒注意:
有时候会遇到软链接失效的情况,(直接就是没有软链接),这时候,3个按键切换失效,都是一个系统,因为都是进一个固定的文件夹页面(openpilot ),而不是那个带有箭头的openpilot 文件夹
所以3个按键不管怎么切换都是进一个页面,进一个系统。
遇到此问题,是因为开机的时候没有执行 continue.sh
解决方案(2025亲测):直接断电,重启,后就会执行continue.sh,这时候就会创建软链接了、
然而又有一个问题,每次执行continue.sh的时候,都会生成备份文件夹,不过不影响,删除就行了。
方向思考就是每次有新备份的时候,就是你执行了continue.sh

修改
路径如下:/data/data/com.termux/files/continue.sh
文件如下
通过SSH登录到EON中,把 openpilot 不同版本的代码克隆到 /data/forks 目录下,然后根据自己的需求修改 PATH_FORK_{N} 的路径即可。
修改文件存储目录:第 4 行
修改不同版本OP目录:5 ~ 7 行(分别对应三段开关)
#!/usr/bin/env bash
# 配置每个 fork 目录位置
PATH_FORK=/data/forks
PATH_FORK_1=${PATH_FORK}/gernby
PATH_FORK_2=${PATH_FORK}/openpilot
PATH_FORK_3=${PATH_FORK}/dragonpilot
switch=`cat /sys/devices/virtual/switch/tri-state-key/state`
VAR_OP_PATH=`eval echo "$""PATH_FORK_${switch}"`
OP_PATH=${VAR_OP_PATH}
ENV_OP_PATH=/data/openpilot
# 处理旧版本
if [ ! -L "${ENV_OP_PATH}" ]; then
ms=`date +%s_%N`
mv "${ENV_OP_PATH}" "${PATH_FORK}/backup_${ms}"
fi
# 处理软链
rm -f ${ENV_OP_PATH}
ln -sf ${OP_PATH} ${ENV_OP_PATH}
# 启动 openpilot
cd ${ENV_OP_PATH}
exec ./launch_openpilot.sh

浙公网安备 33010602011771号