ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Flipper Zero Unleashed 固件开发板快速上手:从启用调试模式到 USB / Wi-Fi 连接实战

Flipper Zero Unleashed 固件开发板快速上手:从启用调试模式到 USB / Wi-Fi 连接实战 Flipper Zero Unleashed 固件开发板快速上手从启用调试模式到 USB / Wi-Fi 连接实战【免费下载链接】unleashed-firmwareFlipper Zero Unleashed Firmware项目地址: https://gitcode.com/GitHub_Trending/un/unleashed-firmware本指南以 Flipper Zero Wi-Fi Developer Board开发板为主题完整讲解使用前的全部准备步骤在 Flipper Zero 上开启 Debug 调试模式、通过 uFBT 刷新开发板固件、正确插入模块并选择 USB 或 Wi-Fi 两种连接方式。读完本文你将能独立完成开发板的首次启动配置并掌握进入应用调试与日志读取环节所需的全部前置知识。引言开发板在固件开发中的角色Wi-Fi Developer Board下称 Devboard本质上是一块硬件调试探针debug probe它在运行调试器的主机电脑与 Flipper Zero 内部的目标微控制器MCU之间建立桥梁。数据通过Serial Wire DebugSWD接口在开发板与 Flipper Zero 之间交换具体使用两个 GPIO 引脚Pin 10Serial Wire ClockSWCLK串行线时钟Pin 12Serial Wire Debug Data I/OSWDIO串行线数据输入/输出在开始任何调试工作之前Flipper Zero 与 Devboard 都需要完成各自的准备工作。本文按官方文档的流程分为四个步骤并在关键节点结合本仓库unleashed-firmware的源码补充底层原理。Step 1在 Flipper Zero 上启用调试模式由于开发板的核心用途是调试 Flipper Zero 上的应用程序因此首先要打开设备的调试模式。操作路径为Settings设置→ System系统→ 将 Debug 设置为 ON[!note]Debug 模式在每次升级 Flipper Zero 固件后都需要重新开启。开启 Debug 模式后你才能调试 Flipper Zero 上的应用并通过用户界面和 CLI 访问应用内的调试选项。源码视角Debug 开关到底做了什么在本次仓库中该设置项的实现在 applications/settings/system/system_settings.c。系统设置页将Debug以OFF/ON两个选项呈现切换回调debug_changed内部调用 RTC 标志位接口写入固件运行状态static void debug_changed(VariableItem* item) { uint8_t index variable_item_get_current_value_index(item); variable_item_set_current_value_text(item, debug_text[index]); if(index) { furi_hal_rtc_set_flag(FuriHalRtcFlagDebug); } else { furi_hal_rtc_reset_flag(FuriHalRtcFlagDebug); } }也就是说Debug 开关实际是通过设置/清除FuriHalRtcFlagDebug这个 RTC实时时钟标志位来实现的。这解释了固件升级后必须重新开启的现象固件升级过程会重置设备状态RTC 中的该标志位也随之被清除需要重新在系统设置中打开。Step 2更新开发板固件出厂的开发板固件可能不包含全部最新功能与缺陷修复。为确保最佳性能建议按照 Firmware update on Developer Board 中的指引更新开发板固件。核心流程如下。2.1 安装 micro Flipper Build TooluFBTuFBTmicro Flipper Build Tool是官方提供的跨平台工具支持 Flipper Zero 的基础开发任务构建与调试应用、烧录固件、生成 VS Code 开发配置以及向 Wi-Fi Developer Board 烧录固件。Linux / macOS打开终端。按官方安装说明安装pipx。重启终端。安装ufbtpipx install ufbtWindows从 Python 官网下载并安装最新版 Python。打开 PowerShell。安装pipxpy -m pip install --user pipx将pipx加入 PATHpy -m pipx ensurepath重启 PowerShell。安装ufbtpipx install ufbt2.2 连接开发板并进入 Bootloader 模式刷写固件前需要把开发板切换到Bootloader 模式并通过 USB-C 数据线连接到电脑先列出电脑上的所有串行设备记录当前清单macOS终端执行ls /dev/cu.*Linux终端执行ls /dev/tty*Windows打开设备管理器展开端口COM 和 LPT使用 USB-C 数据线将开发板连接到电脑。切换开发板到 Bootloader 模式按住BOOT按钮在按住BOOT的同时短按并松开RESET按钮松开BOOT按钮。再次执行第 1 步的设备列表命令对比后即可看到新出现的开发板设备名。2.3 烧录固件Linux / macOSpython3 -m ufbt devboard_flashWindowsPowerShellpy -m ufbt devboard_flash烧录成功后应看到提示WiFi board flashed successfully。2.4 烧录失败的常见处理若刷写过程中出现如下错误A fatal error occurred: Serial data stream stopped: Possible serial noise or corruption.或FileNotFoundError: [Errno 2] No such file or directory: /dev/cu.usbmodem01可依次尝试以下修复手段断开并重新连接开发板然后再次按 Step 2 的步骤进入 Bootloader 模式换用电脑上的另一个 USB 接口换一根 USB-C 数据线。2.5 完成安装按RESET按钮重启开发板。断开并重新插上 USB-C 数据线开发板固件更新即告完成。完成此步后即可回到本文的Step 3继续操作。Step 3将开发板插入 Flipper Zero开发板固件更新完成后即可将其插入 Flipper Zero。这一步有两条重要注意事项3.1 插入前务必先关闭 Flipper Zero 电源在插入开发板之前请先关闭 Flipper Zero 的电源。如果跳过这一步可能会损坏 microSD 卡上存储的数据。原因在于microSD 卡与外部模块由 Flipper Zero 内部的同一个 3.3 V 电源供电连接带有较大容性负载的外部模块时可能会影响 microSD 卡的供电稳定性。3.2 确保开发板完全插到位Flipper Zero 未装硅胶保护套时将模块完全插入确保 Flipper Zero 与开发板之间没有缝隙。插入可能需要施加更大的力。随后长按BACK按钮开机。Flipper Zero 装有硅胶保护套时将模块完全插入确保硅胶套与模块之间没有缝隙。随后长按BACK按钮开机。Step 4连接电脑现在可以根据实际需要选择USB或Wi-Fi两种方式之一将开发板连接到电脑Via USB cableUSB 连接适用于 DAP Link 或 Black Magic 模式调试以及读取日志。Via Wi-FiWi-Fi 连接适用于 Black Magic 模式调试。4.1 USB 连接要点USB 连接的完整步骤见 USB connection to the Devboard核心流程若开发板尚未接入 Flipper Zero先关闭 Flipper Zero连接开发板后再重新开机。在电脑上记录串行设备清单macOS 用ls /dev/cu.*Linux 用ls /dev/tty*Windows 查设备管理器。用 USB-C 数据线连接开发板与电脑。再次查看设备清单应新出现两个设备——这就是开发板。[!warning] 如果开发板没有出现在设备列表中尝试更换数据线、USB 接口或电脑。4.2 Wi-Fi 连接的两种模式Wi-Fi 连接的完整步骤见 Wi-Fi connection to the Devboard共有两种工作模式Wi-Fi 访问点模式AP 模式出厂默认开发板自建 Wi-Fi 网络连接后可访问其 Web 界面并通过 Wi-Fi 调试。代价是需要断开当前 Wi-Fi导致暂时无法上网。Wi-Fi 客户端模式STA 模式让开发板接入现有 Wi-Fi 网络在保持互联网连接的同时通过该网络访问开发板 Web 界面并调试。AP 模式默认连接步骤关闭 Flipper Zero插入开发板再重新开机。在客户端设备手机、笔记本等上打开 Wi-Fi 设置。连接开发板创建的网络网络名称SSIDblackmagic密码iamwitcher浏览器访问开发板 Web 界面http://192.168.4.1 或 http://blackmagic.local。找不到blackmagic网络时的排查重置电脑的 Wi-Fi 连接开发板可能已被配置为客户端模式——长按BOOT按钮10 秒重置开发板设置等待其重启后即恢复为 AP 模式。STA 模式配置步骤关闭 Flipper Zero插入开发板再重新开机。先以 AP 模式连接开发板。浏览器访问 http://192.168.4.1 或 http://blackmagic.local。选择STA模式输入家庭/办公室网络的SSID与密码。可点击按钮查看附近 2.4 GHz 网络列表不支持 5 GHz 网络。保存配置并重启开发板。之后即可通过 http://blackmagic.local 访问 Web 界面同时保持互联网连接不中断。源码视角开发板自动发现机制无论 USB 还是 Wi-Fi 连接调试工具都需要先找到开发板。仓库的构建系统为此内置了自动探测逻辑见 scripts/fbt_tools/blackmagic.pyUSB 串口探测通过serial.tools.list_ports.grep(blackmagic)在系统中匹配名称含blackmagic的串口设备macOS 下形如cu.usbmodemblackmagic1/cu.usbmodemblackmagic3Linux 下形如ttyACM0/ttyACM1并按location name排序取第一个作为探测口若发现多于一个开发板则直接报错。网络探测通过 DNS 解析blackmagic.local主机名得到 IP 后以tcp:{ip}:2345形式连接——这正是 Wi-Fi 调试模式下开发板暴露的调试端口。该探测行为受 fbt_options.py 中的BLACKMAGIC auto控制即默认同时搜索串口与本地网络也可在命令行显式指定BLACKMAGIC...覆盖自动探测。下一步调试、调试模式与日志读取完成上述四个步骤后即可正式进入调试环节。官方文档提供了三份进阶指南建议按需查阅Debugging via the Devboard通过开发板调试以 VS Code FBTFlipper Build Tool为例讲解完整的固件调试流程。典型命令序列为克隆固件仓库后执行./fbt构建、./fbt flash经开发板烧录固件再运行./fbt vscode_dist生成调试配置最后在 VS Code 的 Run and Debug 面板选择Attach FW (blackmagic)支持 Wi-Fi / USB或Attach FW (DAP)仅 USB启动调试会话。注意启动调试会话会暂停固件执行需点击Continue按钮继续运行。Devboard debug modes开发板调试模式开发板支持Black Magic与DAPLink两种调试模式。其中 Wi-Fi 连接仅支持 Black MagicUSB 连接可在两者间切换默认 Black Magic。切换需先通过 Wi-Fi 访问 Web 界面在WiFi选项卡的USB mode中选择BlackMagicProbe或DapLink点击SAVE再点击REBOOT生效。另需注意 Black Magic 模式不支持 RTOS 线程查看其余调试操作不受影响。Reading logs via the Devboard通过开发板读取日志开发板可通过 UART 直接采集 Flipper Zero 日志到串口终端与 CLI 方式不同它不依赖设备操作系统运行状态因此在设备启动、升级或崩溃时也能看到日志。目前日志功能仅支持 USB 连接Wi-Fi 读取日志将在未来版本加入。源码视角日志读取背后的可配置参数日志读取涉及两个关键配置均可通过设备设置页调整日志级别Log Level路径为Main Menu → Settings → Log Level。在 applications/settings/system/system_settings.c 中定义了Default / None / Error / Warning / Info / Debug / Trace七档对应FuriLogLevel枚举并通过furi_hal_rtc_set_log_level写入。波特率文档要求终端以230400波特率连接如minicom -D /dev/cu.usbmodemblackmagic3 -b 230400。该值同样可在系统设置中调整源码列出的可选波特率包括9600 / 38400 / 57600 / 115200 / 230400 / 460800 / 921600 / 1843200出厂默认即与文档步骤匹配的 230400。macOS 读取日志先经 Homebrew 安装minicombrew install minicom冷插开发板关闭 Flipper Zero → 连接开发板 → 重新开机后执行ls /dev/cu.*记录两个新设备接上 USB-C 线后再次确认设备名最后以较大编号的设备执行minicom -D /dev/cu.usbmodemblackmagic3 -b 230400Linux 读取日志以 Ubuntu 为例执行sudo apt install minicom同样先冷插开发板、用ls /dev/tty*确认新出现的ttyACM0/ttyACM1再执行minicom -D /dev/ttyACM1 -b 230400若无日志输出可尝试换用另一个设备名。Windows 读取日志安装 PuTTY 后在设备管理器中找到开发板对应的串口PuTTY 中选择Serial连接类型、填入串口号、Speed设为230400后点击Open即可查看日志。总结完成本文的四步流程后你的 Flipper Zero 与 Wi-Fi Developer Board 组合即处于可调试状态固件为最新版本、Debug 模式已开启、模块连接稳固并可按需选择 USBDAPLink / Black Magic或 Wi-FiBlack Magic连接方式。接下来便可以依照 Debugging via the Devboard、Devboard debug modes 与 Reading logs via the Devboard 三份指南开始真正的固件调试与日志分析工作。【免费下载链接】unleashed-firmwareFlipper Zero Unleashed Firmware项目地址: https://gitcode.com/GitHub_Trending/un/unleashed-firmware创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表