JasonYANG170 的 LogoYANG Docs
首页
硬件
软件
AI
3D
主站
首页
硬件
软件
AI
3D
主站
OSHWLab

【AI设计】AI远程调试器

基于 ESP32-S3 的无线AI调试器 · 串口桥接 + 多协议信号AI监控,支持MCP协议接入AI代理

开源硬件2026-09-08T02:36:50.564Z★ 202
查看原始项目 ↗
【AI设计】AI远程调试器

项目文档

AI智能调试器

基于 ESP32-S3 的无线串口调试器 · 串口桥接 + SWD调试 + 多协议信号监控

ESP32-S3 WiFi + Web 多协议监控
Wireless Serial Debugger

🤖 AI 全流程硬件开发尝试

本项目是一次 AI 驱动硬件开发 的完整实践——从原理图设计、嵌入式软件开发、MCP 协议调试到产品文档撰写,AI 深度参与了每一个环节,探索 AI 辅助硬件开发的可行性与边界。

⚡
AI 设计原理图
通过 EasyEDA API Skill与增强SKILL,AI 自动搜索器件、放置元件、辅助绘制原理图并完成网络连接
💻
AI 开发软件
基于 ESP-IDF 框架,AI 完成 10 个功能模块、16 个源文件、约 4000 行 C 代码的固件开发
📡
AI MCP 调试
通过 MCP 协议让 AI 直接与硬件通信,实现远程串口调试、信号监控与自动化测试
📄
AI 生成文档
AI 阅读 BOM 表、网表与板级配置源码,自动产出产品介绍页面与技术文档
FEATURES

功能详情

涵盖串口调试、多协议监控、Web管理、AI助手等核心能力

无线串口桥接

TCP 服务器监听端口 3333 ,多客户端同时连接
支持波特率动态切换:9600 / 115200 / 460800 / 921600
2048 字节 Stream Buffer 缓冲,防止数据丢失
RX/TX 字节计数器实时统计
通过 TXS0108E 电平转换器连接目标设备
MCP获取PWM数据 WEB端PWM采集验证

PWM 信号监控

双沿中断 + esp_timer 时间戳测量,精度高
测量范围:Hz ~ 50kHz PWM 频率 + 占空比
同时支持 PWM 输出 (LEDC),可生成任意频率/占空比
LCD 菜单实时显示频率与占空比数值
Web 页面与 MCP 均可远程读取 PWM 数据
MCP获取PWM数据 WEB端PWM采集验证

SPI 总线监控

MCP获取SPI数据 WEB端SPI采集
ESP32 作为 SPI Slave 被动捕获总线数据
同时采集 MOSI (主→从) 和 MISO (从→主) 方向
环形缓冲区存储最近 50 条事务记录,每条最大 64 字节
支持 SPI Master 发送功能,可主动与从设备通信
支持 SPI Mode 0~3,DMA 加速传输

I2C 总线监控

Slave 模式 :ESP32 作为从设备应答主设备,可靠捕获写入数据
Passive 模式 :RMT 被动监听,嗅探外部主从通信
记录 7-bit 从地址、读/写方向、数据字节
环形缓冲区存储 50 条事务,每条最大 64 字节
支持 I2C Master 发送/接收,兼容寄存器读写模式
MCP获取IIC数据 WEB端IIC采集验证

自定义线序

MCP连接调试器
支持自定义IO线序标准接口
自定义SPI线序
自定义IIC线序
自定义PWM线序
自定义串口线序
AI SCHEMATIC DESIGN

AI 原理图设计

AI 通过 EasyEDA API 自动完成从方案设计到原理图绘制的全流程,本项目的硬件原理图完全由 AI 自动生成

✨
AI GENERATED · POWERED BY SKILL
本项目原理图由 AI 自动生成
基于 easyeda-api-skill及easyeda-enhanced-schematic-skill 开源技能,AI 理解需求并查询相关器件及外部电路后通过SKILL辅助绘制生成
→
1
提供需求
描述硬件功能需求
MCU选型/接口/外设
2
AI 出方案
AI 分析需求并生成
硬件设计方案文档
3
AI 画原理图
通过 EasyEDA API
自动放置器件连线
4
反馈修改
人工审查后提出修改
AI 自动调整设计
5
输出成果
生成 BOM/网络表
PCB 布局布线
🧠 AI 设计工作流详解
需求分析 :AI 解析用户描述的硬件功能需求,确定 MCU 型号、接口类型、外设模块
方案设计 :AI 生成完整硬件设计方案,包含系统架构、BOM 清单、引脚分配、电源设计
器件搜索 :通过 EasyEDA API 从 LCSC 器件库批量搜索器件,获取 UUID 和封装信息
原理图绘制 :自动放置器件到原理图,按功能模块分区布局,引脚扇出到网络标签
网络连接 :自动完成电源网络、信号网络、电平转换通道分配、去耦电容就近放置
迭代优化 :人工审查后反馈修改意见,AI 自动调整器件选型、引脚分配、电路拓扑
输出验证 :生成 BOM 清单、网络表 (.enet)、PCB 布局建议,支持 DRC 检查
🎬AI画图
AI自动修正原理图
创建工程
AI创建EasyEDA工程
提供方案
AI提供设计方案
修改方案
AI修改设计方案
AI 校正
AI自动绘制原理图
📝 本项目 AI 设计成果
🔌
电源系统
USB-C 输入 → SS34 防反接 → ME6217C33 LDO 3.3V
5V_OUT 通过 J3 为 DUT 供电,完整电源链路设计
🔧
电平转换
TXS0108EQPWRQ1 8 通道双向自动电平转换
7 通道用于 UART+I2C+SPI,1 通道预留扩展
📡
MCU 最小系统
ESP32-S3-WROOM-1U-N16R8
EN/BOOT 上拉、USB 差分走线、去耦电容布局
📊
信号监测
UART 串口桥接 + I2C Slave/Passive 监控
SPI Slave 捕获 + PWM 频率/占空比测量
📱
显示与交互
0.96" ST7735S TFT LCD (SPI 接口)
S8050 NPN 背光驱动 + 3 个用户按键
📨
DUT 接口
HDR2X5 2×5 排针
UART(TX/RX) + I2C(SDA/SCL) + SPI(SCK/MOSI/MISO) + PWM + GND + VDD

USB & 电源模块

USB&电源原理图
电路功能
USB-C 母座 (J1) :TYPE-C 16PIN 2MD(073),3A 供电,CC1/CC2 通过 R1/R2 (5.1kΩ) 下拉到 GND,识别为 UFP
防反接保护 (D1) :SS34 肖特基二极管,阴极输出 5V_OUT (约 4.45V),防止 DUT 反向馈电,Vf=550mV@3A
LDO 稳压 (U5) :ME6217C33M5G,5V→3.3V,800mA,SOT-23-5,静态 100μA,CE 接 5V 常开
滤波电容 :C1(10μF) 5V bulk,C4(100nF) 5V 高频去耦,C5(10μF)+C7(100nF) 3.3V 滤波
DUT 供电 :5V_OUT 通过 J3 pin9 为目标设备供电,D1 隔离防止反灌

ESP32-S3 主控模块

ESP32S3主控原理图
电路功能
MCU (U2) :ESP32-S3-WROOM-1U-N16R8,双核 Xtensa 240MHz,16MB Flash + 8MB PSRAM,WiFi+BLE5.0
USB-OTG :IO19(USB_DM)/IO20(USB_DP) 直连 J1,支持 ROM bootloader 下载和 USB CDC 串口
EN 上拉 (R3) :10kΩ 上拉到 3V3,无物理 RESET 按键,复位通过 USB-OTG 自动实现
BOOT 上拉 (R4) :10kΩ 上拉到 3V3,IO0 默认高电平运行,下载模式通过 USB bootloader 触发
去耦电容 :C2(10μF)+C3(100nF) 紧贴 3V3 引脚,WiFi 峰值 ~500mA 供电稳定
UART1 :IO47(TX)/IO21(RX) 经 TXS0108E 电平转换连接 DUT,支持 9600~921600

电平转换模块 (TXS0108E)

TXS0108E电平转换原理图
电路功能
双向电平转换 (U1) :TXS0108EQPWRQ1,TI 汽车级 AEC-Q100,8 通道自动方向检测,110Mbps
电压范围 :VCCA=1.4V~3.6V (ESP32 侧接 3V3),VCCB=1.65V~5.5V (DUT 侧由 J3 pin10 决定)
自动适应 :无需跳线手动切换,自动适应 DUT 侧 1.65V~5.5V 范围内任意电压
OE 使能 (R5) :10kΩ 上拉到 3V3,芯片常开,上电内置保护确保输出 Hi-Z
去耦电容 :C8(100nF) 紧贴 VCCA,C6(100nF) 紧贴 VCCB,确保高速信号完整性
5 通道使用 :UART(Ch6/7)+I2C(Ch2/3)+SPI(Ch4/5/8),Ch1 预留扩展

LCD 显示模块

LCD显示原理图
电路功能
LCD 模组 (LCD1) :HS096T01H13,0.96" TFT,80×160 RGB,ST7735 驱动,SPI 接口,400cd/m²
SPI 连接 :IO48(MOSI)→SDA, IO45(SCK)→SCL, IO38→DC, IO39→RST, IO40→CS
背光驱动 (Q1) :S8050 NPN 低边开关,IO41 经 R17(1kΩ) 驱动基极,高电平导通
背光电流 :3V3→R16(22Ω)→LEDA→LEDK→Q1(C)→GND,LED Vf~2.9V,I~18mA
PWM 调光 :IO41 输出 PWM 可无级调节亮度,基极电流 2.6mA,hFE=400 远满足饱和
去耦电容 :C11(100nF) 紧贴 LCD1 FPC 座 VDD 引脚

按键 & DUT 接口模块

按键&接口原理图
电路功能
用户按键 (SW1/SW2/SW3) :PTS 647 SK70 SMTR2 LFS,4.5×4.5mm SMD,低电平有效,内部上拉
按键功能 :SW1(IO1)=上翻/长按AP模式,SW2(IO2)=确认/返回,SW3(IO42)=下翻/长按切波特率
DUT 接口 (J3) :HDR2X5 2×5 排针,2.54mm,集成 UART+I2C+SPI+PWM+电源
J3 引脚 :pin1-2=UART,pin3-4=I2C,pin5-7=SPI pin8=PWM,pin9=GND,pin10=DUT VDD
DUT VDD :J3 pin10 接 U1 VCCB,作为 DUT 侧电平参考 (1.65V~5.5V),必须连接
PWM 直连 :J3 pin8 直连 IO18,不经电平转换,高阻被动输入,仅适用于 3.3V
AI SOFTWARE

AI 软件设计

基于 ESP-IDF + FreeRTOS 的模块化 C 语言固件,包含 10 个功能模块、16 个源文件,总计约 4000 行代码

✨
AI GENERATED · POWERED BY SKILL
本项目软件由 AI 自动生成
基于 esp-dev-skill 开源技能,AI 理解需求并设计框架自动完成ESP的软件开发
→
软件架构总览
应用层 Application
WiFi Manager
Serial Bridge
LCD Menu UI
Web Server
AI Assistant
中间件层 Middleware
TCP Server
HTTP Server
WebSocket
JSON Protocol
驱动层 Drivers
UART Driver
SPI Driver
GPIO/PCNT
RMT (I2C)
LEDC (PWM)
ESP-IDF / FreeRTOS HAL
🔌 串口桥接 (Serial Bridge)
serial/serial_bridge.c (180行)
serial/serial_bridge.h
UART1 双向透传,Stream Buffer 缓冲 2048 字节
支持运行时波特率切换:9600/115200/460800/921600
独立 MCP 数据流,不与 Web/TCP 客户端竞争
RX/TX 原子计数器,支持 Web 实时查询
引脚动态重映射 (pin_config_repin)
FreeRTOS 事件队列驱动,8 优先级任务
📱 LCD 菜单系统 (Menu UI)
lcd/menu_ui.c (650行)
lcd/lcd_driver.c (320行)
lcd/cjk_font.c (中文点阵)
lcd/HZK16 + uni2gb.bin (字库)
9 个菜单页面:主页/状态/数据监控/SWD/配置/PWM/SPI/I2C/AI
80×160 像素,20×5 字符,RGB565 帧缓冲
ST7735S SPI 驱动,20MHz 像素时钟
中文 CJK 字库嵌入 (HZK16),支持中英文混排
5Hz 渲染任务 (8KB 栈),S8050 PWM 背光调光
Web 端远程模拟按键 (menu_simulate_button)
🌐 网络服务 (Network)
net/tcp_server.c — TCP 端口 3333
net/http_status.c — HTTP 端口 80
net/ws_server.c — WebSocket
net/dap_server.c — CMSIS-DAP 端口 5555
net/protocol.h — JSON 协议定义
TCP Server 多客户端广播,原始数据透传
HTTP REST API:/api/status /api/baud /api/send
WebSocket 双向 JSON,base64 编码数据帧
CMSIS-DAP TCP 服务器,兼容 OpenOCD
JSON 协议:uart/cfg/wifi/swd/btn/status 6 种消息类型
📊 信号监控 (Monitors)
pwm_mon.c — PWM 频率/占空比 (140行)
spi_mon.c — SPI Slave 捕获 (200行)
i2c_mon.c — I2C Slave/Passive (250行)
clk_mon.c — 时钟频率测量
PWM:双沿中断 + esp_timer,Hz~50kHz,支持 LEDC 输出
SPI:硬件 SPI Slave DMA 捕获,环形缓冲 50 条事务
I2C:Slave 模式可靠捕获 + Passive RMT 嗅探
I2C 支持 Master 发送/接收,兼容寄存器读写模式
所有监控器支持 Web/MCP 远程读取和清空
🧱
FreeRTOS 多任务
UI 渲染 (5Hz/8KB栈)
UART 事件 (高优先级)
TCP/HTTP/DAP 服务器
各监控器独立任务
📦
模块化设计
16 个 .c/.h 文件
6 个子目录分层
ESP-IDF 组件化编译
独立头文件 API 定义
🔄
事件驱动架构
UART 事件队列
GPIO 中断 (按键/PWM)
WiFi 事件回调
WebSocket 异步推送
💾
NVS 持久化
WiFi 凭据存储
引脚功能映射
波特率配置
跨重启自动恢复
🌐
多协议并行
TCP:3333 (串口透传)
HTTP:80 (Web 管理)
WebSocket:80 (实时)
TCP:5555 (CMSIS-DAP)
🧩
嵌入式资源
HZK16 中文字库 (260KB)
uni2gb 映射表 (130KB)
EMBED_FILES 编译进固件
PSRAM 帧缓冲分配
3D DESIGN

3D 外壳设计

上下壳体分体设计,3D 渲染效果展示,包含分解视图和各角度细节

💠 分解视图
3D分解图

上下壳体分离状态,展示内部 PCB 板卡安装结构和各部件装配关系

🗖 顶壳
顶壳正面
顶壳背面
LCD 显示窗口
3 个按键开口
PCB限位槽设计
🗕 底壳
底壳正面
底壳背面
正面:PCB 安装槽位 + 螺丝柱定位
背面:USB-C 开口 + J3 排针出口 + 防滑脚垫位
铭牌区域预留,可标注产品信息
📐
分体设计
上下壳体扣合
螺丝固定
📏
紧凑尺寸
便携手持
口袋大小
🧱
卡扣定位
PCB 精准固定
无需额外支架
🔧
易拆装
螺丝刀即可
维护方便
📐 壳体开口与装配说明
顶壳开口
LCD 显示窗口:对应 0.96" TFT LCD 位置,透明或开窗
SW1/SW2/SW3 按键孔:3 个圆形开口,直径约 5mm
散热孔:顶部或侧面开孔,WiFi 工作时散热
底壳开口
USB-C 接口:底侧或侧面开口,Type-C 16PIN 母座
J3 排针出口:2×5 排针引出,杜邦线连接 DUT
防滑脚垫:底部 4 个脚垫位,增加桌面稳定性
螺丝孔:4 角螺丝固定上下壳体
MCP PROTOCOL

MCP 协议集成

通过 Model Context Protocol 让 AI 助手直接与硬件设备通信,实现远程串口调试、信号监控和协议分析

✨
AI GENERATED · POWERED BY MCP
本项目支持MCP实现AI调试
基于 wireless-debugger 开源MCP工具,AI 可以直接访问获取数据实现远程AI调试
→
通信架构
🤖
AI 助手
→
📡
MCP Server
→
🌐
HTTP REST
→
📡
ESP32 设备
→
🔌
DUT 硬件
MCP 协议
JSON-RPC over stdio
AI 工具 ↔ MCP Server
HTTP REST
GET/POST JSON
MCP Server ↔ ESP32
硬件接口
UART/SPI/I2C/PWM
ESP32 ↔ DUT 目标设备

可用工具 (Tools)

连接管理
connect_device(ip)连接设备,首次需提供 IP
disconnect_device()断开当前连接
get_status()WiFi/IP/波特率/收发计数
串口操作
read_serial(max)读取串口数据(独立缓冲区)
send_serial(data)发送串口数据
set_baud(baud)设置波特率
PWM / SPI / I2C
read_pwm() / send_pwm()PWM 读/发
read_spi() / send_spi()SPI 读/发
read_i2c() / send_i2c()I2C 读/发
系统管理
get_pins() / set_pins()引脚协议分配
press_button(btn)模拟按键
clear_buffer()清空缓冲区

远程数据采集演示

串口数据采集
AI 读取 DUT 串口输出
串口数据采集
PWM 信号分析
AI 读取频率和占空比
PWM 信号分析
SPI 总线监控
AI 捕获 SPI 事务
SPI 总线监控
I2C 总线监控
AI 捕获 I2C 通信
I2C 总线监控
🔧 安装配置
安装依赖 :pip install mcp httpx
Claude Code :claude mcp add wireless-debugger -- python mcp_server.py
Claude Desktop :编辑 claude_desktop_config.json 添加 mcpServers
Cursor :编辑 ~/.cursor/mcp.json 添加配置
首次连接 :AI 自动询问设备 IP,输入后保存到 mcp_config.json
自动重连 :下次启动自动加载已保存的 IP
📁 MCP Server 文件
mcp/
├── mcp_server.py 主程序 FastMCP 服务器,18 个工具 + 1 个资源
├── requirements.txt 依赖 mcp>=1.0.0, httpx>=0.27.0
├── mcp_config.json 配置 设备 IP (首次连接后自动生成)
└── config.json 模板 Claude Desktop 配置示例
💡 应用场景
🔌
远程串口调试
AI 通过 MCP 读取 DUT 串口输出,分析日志,发送命令控制设备,无需坐在设备旁边
📊
自动化测试
AI 编写测试脚本,通过 MCP 批量发送 SPI/I2C 命令,自动验证硬件响应
🔧
故障诊断
AI 读取 PWM/SPI/I2C 信号数据,自动分析异常波形、时序问题、通信错误
📚
数据记录
MCP 持续采集传感器数据(I2C/SPI),AI 实时分析趋势并生成报告
🧩
硬件验证
新 PCB 打样后,AI 通过 MCP 自动测试所有接口(UART/SPI/I2C/PWM),快速验证硬件
🤖
AI 驱动开发
结合 EasyEDA MCP + 本项目 MCP,AI 从原理图设计到硬件调试全流程自动化
QUICK START

快速入门

三步完成编译烧录,快速体验无线调试器全部功能

1
环境准备
安装 ESP-IDF v5.x 开发环境
克隆项目源码到本地
2
编译烧录
idf.py build 编译固件
idf.py flash 烧录到 ESP32-S3
3
连接使用
连接目标设备到 J3 排针
通过 WiFi 或 USB 开始调试
⚡ 编译命令
idf.py set-target esp32s3
idf.py build
idf.py flash monitor
⚡ 编译环境与依赖
框架 ESP-IDF v5.x + FreeRTOS
目标芯片 ESP32-S3 (idf.py set-target esp32s3)
关键组件 esp_wifi, esp_http_server, esp_lcd, esp_driver_uart/spi/i2c/rmt/ledc/gpio, nvs_flash, lwip
自定义组件 esp_lcd_st7735 (components/ 目录下的 ST7735S LCD 驱动)
分区方案 factory 3MB (固件) + spiffs 13MB (存储)
编译命令 idf.py build && idf.py flash monitor
在线烧录
📶在线烧录 (无需搭建环境)
嘉立创 EDA Wiki 提供在线 ESP 烧录工具,浏览器直接烧录固件
无需安装 ESP-IDF 开发环境,适合快速验证和量产烧录
支持 ESP32 / ESP32-S2 / ESP32-S3 / ESP32-C3 全系列芯片
USB 连接设备,选择固件 bin 文件,一键烧录
🔗 前往嘉立创 Wiki 在线烧录
LINKS

相关链接

🔧
easyeda-api-skill
嘉立创EDA专业版AI SKILL,为AI编程工具提供完整的EasyEDA Pro API接口和WebSocket桥接能力。
→
📡
easyeda-enhanced-schematic-skill
嘉立创EDA专业版原理图增强 SKILL,依赖于easyeda-api-skill增强原理图功能。
→
🐛
esp-dev-skill
包含Espressif大部分仓库的开发技能
→
⚡
run-api-gateway
嘉立创EDA 专业版扩展 — 为 AI 编程工具(OpenCode、QwenCode、KimiCode 等)提供 WebSocket API 网关桥接服务。
→
📋
ai-wireless-debugger-mcp
让 AI 代理工具实现远程获取监测的数据来调试硬件设备
→
🏭
ai-wireless-debugger
ai-wireless-debugger的源码仓库
→
✨
AI GENERATED · POWERED BY SKILL
本展示页面由 AI 自动生成
基于 oshw-readme-skill 开源技能,AI 阅读项目的 BOM 表、网表与板级配置源码后,自动产出本产品介绍页的 HTML
→

变更日志

V1.1版本: 添加BOOT按键,解决部分上电后端口反复跳动。 (v1.0版本可上电前用镊子短接R4电阻BOOT焊盘到R1电阻GND焊盘或TypeC金属壳,直到上电后松开)

首页/硬件项目