Nexting参考固件移植教程:一套Zephyr代码如何跑通nRF52840与ESP32四块开发板
【免费下载链接】nextingRemote control for Claude Code, Codex, Grok, and Cursor on Mac or PC. View sessions, send tasks, and drive them remotely from your phone, PIN, or Ring. OpenClaw supported.项目地址https://gitcode.com/gh_mirrors/ne/nexting点击查看免费下载Nexting是一款让物理设备远程遥控 Claude Code、Codex 等 AI Agent 的开源项目。它的设备端固件Nexting 参考固件有一个很有意思的设计同一套 Zephyr 源码不改一行main.c就能编译出 Nordic nRF52840 和乐鑫 ESP32-C3/S3 共四块开发板的固件。本篇教程带你从零了解这套一份代码、四板通跑的移植架构并给出完整的构建与验证步骤。为什么一套代码能跑四块板移植 BLE 设备固件最大的坑往往是每换一块板就改一堆代码。Nexting 参考固件用三层结构把这个问题解决了层级位置职责换板时是否要改协议核心C99devices/sdk/c/src/nexting_device.c消息编解码、帧切分、TTL、选择锁定、重发逻辑❌ 完全复用Zephyr 适配器devices/firmware/zephyr/src/main.cBLE/GATT、配对绑定、定时器、固定缓冲区❌ 完全复用板级引脚定义devices/firmware/zephyr/boards/ 下的.overlay文件Allow / Deny 按键和 Pending 指示灯的引脚别名✅ 每块板一个 overlay换句话说芯片和引脚的差异被收敛到了薄薄的.overlay设备树文件里协议行为由共享的 C99 核心保证四块板表现完全一致不存在两套解析器各自演化的问题。四块支持的开发板与 Zephyr 目标官方 Experimental 0.2 将 Nordic 与 ESP32 视为对等的产品家族四块板全部处于 Build verified构建已验证状态开发板芯片Zephyr 板级目标适合场景nRF52840 DKNordic nRF52840nrf52840dk/nrf52840调试可观测性最好内置 4 键 4 灯排查问题首选XIAO nRF52840 / SenseNordic nRF52840xiao_ble/nrf52840/sense小巧、低功耗、BLE 成熟、UF2 拖拽烧录XIAO ESP32-C3乐鑫 ESP32-C3xiao_esp32c3/esp32c3低成本 RISC-VBLE Wi-Fi社区货源充足XIAO ESP32-S3乐鑫 ESP32-S3xiao_esp32s3/esp32s3/procpuIO 与内存更充裕适合屏幕、触摸等富交互形态各板允许 / 拒绝 / 待处理引脚的参考接线如下按键均用内部上拉、低电平有效开发板Allow 按键Deny 按键Pending 指示灯nRF52840 DKButton 1sw0Button 2sw1LED 1led0XIAO nRF52840 / SenseD0 接 GNDD1 接 GND板载红 LEDXIAO ESP32-C3D0 接 GNDD1 接 GNDD2 经电阻接 LED高电平点亮XIAO ESP32-S3D0 接 GNDD1 接 GND板载 LED一键构建west build 四板命令在配置好的 Zephyr 或 nRF Connect SDK 工作空间中只需切换-b参数即可切换目标板west build -p always -b nrf52840dk/nrf52840 /path/to/nexting-devices/firmware/zephyr west build -p always -b xiao_ble/nrf52840/sense /path/to/nexting-devices/firmware/zephyr west build -p always -b xiao_esp32c3/esp32c3 /path/to/nexting-devices/firmware/zephyr west build -p always -b xiao_esp32s3/esp32s3/procpu /path/to/nexting-devices/firmware/zephyr⚠️ 两个常见坑ESP32 目标需要上游 Zephyr 工作区中的hal_espressif及其配套无线电固件radio blobs和兼容的 Zephyr SDK——仅列出 ESP 板定义的 nRF Connect SDK 清单是不够的只构建你手上有的板。官方 CI 锁定版本为Zephyr 4.3.0 / Zephyr SDK 0.17.4 / west 1.5.0建议对齐。如果还没有 Zephyr 环境仓库提供了引导脚本自动创建隔离 Python 环境、初始化固定版本的 Zephyr 工作区并构建git clone --branch devices-v0.2.0-experimental.2 --depth 1 \ https://gitcode.com/gh_mirrors/ne/nexting cd nexting/devices ./scripts/bootstrap-zephyr.sh --board xiao-nrf52840-sense --install-sdk --build脚本位于 devices/scripts/bootstrap-zephyr.sh重复执行安全可用--dry-run预览所有解析出的版本与路径。板级差异如何收敛overlay 与自动选择机制这套一份代码的魔法来自两个文件配合devices/firmware/zephyr/CMakeLists.txt根据编译时的BOARD变量自动挑对应的 overlayif(BOARD MATCHES ^xiao_ble) set(DTC_OVERLAY_FILE ${CMAKE_CURRENT_SOURCE_DIR}/boards/xiao_ble.overlay) elseif(BOARD MATCHES ^xiao_esp32c3) set(DTC_OVERLAY_FILE ${CMAKE_CURRENT_SOURCE_DIR}/boards/xiao_esp32c3.overlay)overlay 文件为每块板声明统一的引脚别名。以 xiao_esp32c3.overlay 为例它把 D0/D1 声明为 Allow/Deny 按键D2 声明为 Pending LED高电平有效nexting-allow nexting_allow; nexting-deny nexting_deny; nexting-led nexting_led;而 main.c 读取这些别名时还做了兜底优先找nexting-allow找不到就用 nRF52840 DK 的sw0/sw1/led0别名——这就是 DK 连 overlay 文件都没有也能直接编译的原因。想加自己板子新建一个 overlay把 Allow/Deny/Pending 三个别名指到你自己的引脚再在 CMakeLists.txt 加一条BOARD MATCHES分支即可main.c一行都不用动。BLE 安全配置强制绑定、Secure Connections、NVS 存储等统一写在 devices/firmware/zephyr/prj.conf同样与板无关。烧录与第一次验证XIAO 系列UF2 拖拽烧录无需烧录器USB-C 连接板子快速双击 Reset 键出现名为XIAO BLE的 U 盘把构建产物zephyr.uf2拖进去卷自动弹出即完成烧录此时 Pending LED 应保持熄灭——只有 Host 下发审批请求时才会点亮。nRF52840 DK则直接用west flash通过板载调试器烧录。上电后的标准手势验证短按任意一个按键回答当前的 Allow/Deny 请求同时按住两个键 3 秒清除板上全部 BLE 绑定Pending LED 亮 1 秒作为确认随后恢复广播注意手机端也需忽略此设备因为绑定关系两边各存一份。详细接线与流程见 devices/docs/reference-approval-controller.md 和 devices/docs/first-approval.md遇到配对失败、Device Info 读不到等问题查 devices/docs/troubleshooting.md。构建验证不等于板级验证证据等级Nexting Devices 对支持的定义非常克制四个等级逐级递进等级含义Core tested芯片适配器复用了共享 C99 核心且桌面测试通过不代表无线电可用Build verified固定工具链成功编译出该板的固件不代表蓝牙功能实测Board verified指定开发板完成 iPhone 竞态、过期、断连、重启、畸形输入等全部实板清单Nexting Compatible独立治理的兼容计划接受该产品0.2 实验期不可获得要拿到Board verified需逐项完成 devices/docs/board-verification.md 的实板清单——包括按键抖动不能改变首次选择断连后不得从 flash 恢复审批TTL 边界后按键不得生效等 30 余项行为用例并记录板子版本、工具链、固件 commit、手机 App 版本和串口日志。把这套模式移植到你的新芯片如果你的平台不是上述四块板devices/docs/porting-guide.md 把移植工作拆成五块核心原则是协议核心原样复用平台适配器保持薄组件策略说明协议与状态机复用sdk/cJSON、UTF-8 边界、换行成帧、TTL、选择锁定、重发BLE 适配器自己实现四个 GATT UUID、加密写、通知、Device Info、连接生命周期输入自己实现两个可信本地动作映射为 Allow/Deny先消抖再进核心输出自己实现区分 Pending/Idle不拿 LED 当权威产品安全实现并文档化配对体验、绑定存储/吊销、更新路径、物理威胁模型平台侧只需满足最小硬件契约BLE 外设/GATT、加密绑定与本地吊销、≥512 字节接收缓冲、两个无歧义本地动作、Pending 输出、单调毫秒时钟、掉电即失的审批状态。完整路线见 devices/docs/implementation-tracks.md。小结Nexting 参考固件展示了一个可复制的移植范式共享协议核心 薄平台适配器 板级 overlay 收敛差异。一份main.c与一套 C99 核心靠west build -b切换目标就点亮了 nRF52840 与 ESP32 的两大家族四块开发板——对正在做多平台 BLE 设备固件的你来说这套分层思路值得直接借鉴。延伸阅读固件说明与接线表devices/firmware/zephyr/README.md协议规范devices/SPEC.mdC99 设备 SDKdevices/sdk/c/README.md硬件支持状态devices/docs/hardware-support.md赞分享【免费下载链接】nextingRemote control for Claude Code, Codex, Grok, and Cursor on Mac or PC. View sessions, send tasks, and drive them remotely from your phone, PIN, or Ring. OpenClaw supported.项目地址https://gitcode.com/gh_mirrors/ne/nexting点击查看免费下载相关推荐Zephyr 与 RAK3112 LoRaWAN 模块基于 ESP32-S3 与 SX1262 的开发板移植实战指南Zephyr 与 RAK3112 LoRaWAN 模块基于 ESP32 S3 与 SX1262 的开发板移植实战指南 RAK3112 是 RAKwireles操作系统嵌入式RTOS物联网Zephyr 在 Pro Micro nRF52840 开发板上的移植与实战构建、烧录与恢复指南Zephyr 在 Pro Micro nRF52840 开发板上的移植与实战构建、烧录与恢复指南 Pro Micro nRF52840promicro_nr操作系统嵌入式RTOS物联网Zephyr 与 PineCone BL602Pine64 PineCone 开发板移植实战与源码解析Zephyr 与 PineCone BL602Pine64 PineCone 开发板移植实战与源码解析 PineCone 是 Pine64 推出的基于 Bou操作系统嵌入式RTOS物联网创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

安卓原生对接苹果cms后端:接口解析、播放器接入与踩坑实战

安卓原生对接苹果cms后端:接口解析、播放器接入与踩坑实战

简介:这是一份面向苹果CMS影视站开发者与二次开发者的安卓原生APP后端源码包,由最新优化版前端App与Feiapp后端组成,用于快速搭建对接苹果CMS的移动端视频应用。包内含后端PHP接口、前端App工程资源、主题样式及数据库相关文件,共…

2026/10/11 10:51:24 阅读更多 →
Android系统架构真相:Binder、Zygote、SurfaceFlinger与init的动态协同

Android系统架构真相:Binder、Zygote、SurfaceFlinger与init的动态协同

1. 这不是教科书里的“系统架构图”,而是我拆了二十多台真机后画出的活地图你打开任何一本Android开发入门书,第一页大概率就是那张经典分层图:Linux内核层、HAL层、Native层、Framework层、Application层——五层叠得整整齐齐,箭…

2026/10/11 10:51:24 阅读更多 →
KaihongOS工程实践:系统底座、分布式软总线与稳定性排查

KaihongOS工程实践:系统底座、分布式软总线与稳定性排查

做系统软件这些年,我越来越习惯一个问题:判断一个系统到底成不成熟,不能只看第一眼的界面,而是要把开发和部署的流程完整走一遍。最近几个月,我把 KaihongOS 当作主力开发环境来用,从编译源码、烧录开发板&…

2026/10/11 10:50:24 阅读更多 →

最新新闻

论文AI率90%降到10%以内:亲测有效的改写流程与工具组合

论文AI率90%降到10%以内:亲测有效的改写流程与工具组合

论文AI率从90%降到10%以下,这个目标我亲测可以做到,关键不是找某个所谓的神器,而是把改写流程理顺。最近一段时间,陆续有同学拿着检测报告来找我,打开一看,AI率那一栏红得发紫,甚至整页标红&…

2026/10/11 13:33:00 阅读更多 →
eBPF helper函数全解析:设计逻辑、分类选型与实战排障

eBPF helper函数全解析:设计逻辑、分类选型与实战排障

写eBPF程序有一段时间的朋友,应该都会遇到一个很典型的问题:我在 BPF 程序里到底能调用哪些函数?为什么不能像普通 C 代码一样直接调用内核里的printk或者kmalloc?答案就是标题里的“helper 函数”。它是内核专门开放给 eBPF 字节…

2026/10/11 13:33:00 阅读更多 →
Linux 性能排查实战:8个命令串起从负载异常到根因定位的完整链路

Linux 性能排查实战:8个命令串起从负载异常到根因定位的完整链路

面试讲到Linux排查,十个有八个会先说top看一眼负载,然后再背一串命令参数。但聊到"你上次线上出问题是怎么一步步定位的",很多人就开始含糊了。其实面试官想听的从来不是"我会用哪些命令",而是"你遇到问…

2026/10/11 13:33:00 阅读更多 →
降AI检测率实战:免费方法亲测有效,付费工具避坑指南

降AI检测率实战:免费方法亲测有效,付费工具避坑指南

我的博客后台和私信最近被同一类问题轮番轰炸:“AI率从95%掉到5.8%,这事儿到底能不能复现?”“十五款降AI工具挨个试会不会被封号?”“手里改完的稿子,到底哪种工具过检测最稳?” 我自己前前后后测了两周&…

2026/10/11 13:33:00 阅读更多 →
Linux内核IPVS负载均衡实战:从原理到keepalived高可用配置

Linux内核IPVS负载均衡实战:从原理到keepalived高可用配置

做后端服务的人迟早会遇到一个需求:把一台服务器扛不住的流量拆到多台,还希望某一台挂掉的时候流量自动被切走。很多人第一反应是买云上的负载均衡,或者在用户态跑一个软件负载均衡,但要追求极致的吞吐和可控性时,Linu…

2026/10/11 13:33:00 阅读更多 →
codex 0.6.5 tar.gz 安装配置全攻略:从PyPI下载到跑通避坑指南

codex 0.6.5 tar.gz 安装配置全攻略:从PyPI下载到跑通避坑指南

简介:codex 0.6.5 是一份从 PyPI 官方下载的 Python 库源码压缩包,面向分布式系统与云原生应用开发者,核心围绕 Zookeeper 协调服务和分布式场景的交互展开,可用于配置管理、集群状态同步及云环境弹性组件的开发。包体共 639 个文…

2026/10/11 13:32:00 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 10:38:42 阅读更多 →