Android16 更新fastboot版本解决fastbootd模式识别不到设备问题

程序员成长:技术、职场与思维模式实战指南 10w+人浏览 1.7k人参与

Android16 更新fastboot版本解决fastbootd模式识别不到设备问题

一、前言

最近开发EDLA项目才用到fastbootd模式,之前主要是用fastbootd模式烧录镜像。

fastboot和fastbootd差异对比表

对比维度Fastboot 模式Fastbootd 模式
底层架构基于 Bootloader(硬件级)基于 Android 内核(用户空间级)
支持系统版本所有 Android 版本Android 10+(API 29+)
适配分区架构非动态分区、A/B 分区(仅基础操作)动态分区 + A/B 分区(核心适配)
可刷写分区boot、recovery、userdata、cache 等基础分区system、vendor、product、odm 等动态分区
进入方式按键组合、adb reboot bootloader从 Fastboot 切换、adb reboot fastboot
核心优势兼容性强(老设备支持)、操作简单支持动态分区、适配 A/B 无缝更新、功能更全
限制无法刷写动态分区的系统核心分区老设备不支持、依赖 A/B 架构

vendor也有在fastboot烧录的,不同的系统要求不同。

之前可以识别fastboot,但是在Android16 有可能存在识别不到fastbootd设备的情况;

我这里是fastboot版本低换成新版本的fastboot就能识别了。

下面简单记录一下。

二、fastbootd识别不到分析解决

adb、fastboot主要命令:

adb devices //保证adb 能识别到设备
adb reboot bootloader //进入fastbootd模式
fastboot devices //需要保证识别到fastboot设备
fastboot reboot fastboot //进入fastboot的模式
fastboot devices //可看到fastbootd设备

1、保证可以正常识别 fastboot devices

如果 adb reboot bootloader 识别不到设备,就去电脑的设备管理,查看一下是否存在未知设备。

比如这种情况:

在这里插入图片描述

接入usb线后,其他设备有个“t7-an400”是显示感叹号的。说明驱动是异常的。

可以右键手动更新驱动看看,或者安装驱动精灵可以自动更新驱动配置。

fastboot驱动有了就能在设备管理里面看到,大概如下图标:

在这里插入图片描述

从cmd窗口确认是否可以识别fastboot:

在这里插入图片描述

上面可以看到我的fastboot版本比adb版本高,是因为我替换了fastboot.exe文件。

才能保证电脑识别Android16 设备的fastbootd模式。

Android设备进入fastbootd模式的界面:

在这里插入图片描述

设备显示上面界面后,cmd串口输入:fastboot devices 有设备列表就表示识别到了;

没有的话,估计就是无法识别fastboot了,有可能更新fastboot应用就能识别。

刚开始我也是只能识别fastboot,无法识别fastbootd,更新fastboot文件版本后就能识别fastbootd了。

2、adb、fastboot版本下载更新

其实下载adb套件,里面就包含了fastboot程序:

在这里插入图片描述

当前最新官方版本:36.0.0 (2025 年 4 月发布)

3、官方下载链接(推荐)

操作系统下载链接
Windowshttps://dl.google.com/android/repository/platform-tools-latest-windows.zip
macOShttps://dl.google.com/android/repository/platform-tools-latest-darwin.zip
Linuxhttps://dl.google.com/android/repository/platform-tools-latest-linux.zip

特点:这些链接会自动指向最新版本,无需手动查找更新。国内网址也能访问。

4、下载安装步骤

  • (1)Windows 系统
    1. 访问上述 Windows 下载链接,下载 zip 文件
    2. 解压到指定目录(如:C:\adb)
    3. 配置环境变量:
      • 右键 "此电脑"→属性→高级系统设置→环境变量
      • 在系统变量中找到 "Path"→编辑→新建→添加 adb 路径(如:C:\adb\platform-tools)
      • 保存并关闭
    4. 验证安装:打开命令提示符,输入adb --version,显示版本信息即成功
  • (2) macOS 系统
    1. 下载 macOS 版本 zip 文件
    2. 解压到用户目录(如:~/adb)
    3. 配置环境变量:
      • 打开终端,编辑~/.bash_profile~/.zshrc
      • 添加export PATH="$PATH:~/adb/platform-tools/"
      • 保存后执行source ~/.bash_profilesource ~/.zshrc
    4. 验证:终端输入adb version
  • (3) Linux 系统(推荐)
  • 方法一:使用包管理器(推荐,自动更新)

    • Ubuntu/Debian: sudo apt update && sudo apt install android-tools-adb
    • Fedora: sudo dnf install android-tools
  • 方法二:手动下载

    • 同 macOS 步骤,下载解压后将路径添加到~/.bashrc的 PATH 变量
  • 5、验证与使用

    • 验证安装:adb --version → 显示版本号和安装路径
    • 基础使用:连接设备后,在命令行执行 adb 命令

如果更新了fastboot还是无法识别fastbootd,需要另外分析了。

三、其他

1、小结

如果能识别fastboot,但是无法识别fastboot device的情况,

可以试试更新整个adb或者更新fastboot.exe文件。

也不排除,是系统后续修改导致无法进入fastbootd的。

2、uboot otg时序异常导致无法进入fastbootd解决

+++ b/release/debug/board_code/K81A_base/bootloader/uboot-repo/bl33/v2019/cmd/amlogic/cmd_skg_hw.c
@@ -118,6 +118,9 @@ static int do_init_skg_ir_power_key(cmd_tbl_t *cmdtp, int flag1, int argc, char
 
 void do_usb_hub_init(int mode)
 {
+
+       ebsw_set_gpio_value(AT9555_GPIO_IO0_6,1);
+       skg_set_gpio(GPIOT_4, 0);
        if (mode == 1) {
                ebsw_set_gpio_value(AT9555_GPIO_IO0_4,1);
                ebsw_set_gpio_value(AT9555_GPIO_IO0_0,1);
E06:~/311D2/Android16/release$ 

上面代码是修改了整otg时序;

这部分代码是定制的,底层其他人员修改的。

仅供参考,不一定通用。

3、Android16 EDLA HDMI OUT投屏默认通过设置

如果是整机测试,可以点击右边“Mirror display”确认可以投屏到外部;开发板就无法点击了。

如果是板块测试,就要默认支持HDMI out,这就要适配系统的代码了。

https://blog.csdn.net/wenzhi20102321/article/details/154583383

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

峥嵘life

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值