CycBox 是一款功能强大且高度可扩展的物联网调试工具包,帮助开发者和工程师实现 实时监控、分析与调试 物联网设备。它支持多种通信协议、灵活的数据可视化方式,以及基于 Lua/WebAssembly 的插件架构,可根据不同调试需求灵活定制。
主要功能#
- 集成串口与TCP网络调试功能,并支持两者间的数据透传
- 拥有 1ms 的高精度定时器与 1ms 的低响应延迟
- 可通过 Lua 脚本实现消息的处理与响应
- 支持 WebAssembly 插件,实现复杂的定制功能
- 数据可视化面板,支持图表绘制、快照截取与数据导出
- 搜索功能支持关键词高亮显示以及筛选只显示匹配的消息
- 支持AT指令、Modbus RTU等多种标准协议,并可自定义帧结构
- 内置多种校验算法,能自动为发送数据添加校验位,并对接收数据进行验证
- 支持定时发送与指令序列配置,可一键执行复杂的调试流程
- 跨平台,支持 Windows,Linux,Android(试验功能)
- 提供 MCP 接口,方便 AI Agent 接入调试(试验功能)
无论是调试嵌入式系统、监控传感器网络,还是分析设备通信,CycBox 都能在统一高效的界面中提供所需的工具。适用于 嵌入式开发者、物联网工程师、硬件爱好者 及所有从事联网设备工作的人员。

数据传输层#
CycBox 在架构设计上支持任意类型流式数据传输。现时已实现串口与 TCP 客户端接入,未来版本将扩展至更多传输层类型。支持第二个传输层,可用于数据监听,也可以启用桥接功能,实现两个传输层间的数据透传。譬如,可配置串口作为主传输层,TCP 作为次传输层,通过启用桥接模式,实现串口与远程 TCP 服务端间的数据转发。


数据编解码#
CycBox 采用 编解码器机制 处理数据流:
- 解码器(Decoder):根据协议规则将数据流切分为独立消息包(Message),再交由上层模块处理。
- 编码器(Encoder):将上层消息转为字节流,并按协议规则发送。
CycBox 内置多种常用编解码器,同时支持通过 WebAssembly 插件实现自定义编解码器。
- 行编解码:基于换行符切分消息包,适用于文本协议。
- 超时编解码:适用于无特定帧结构,但消息传输有固定间隔的场景。
- 帧编解码:可灵活配置的数据帧结构,支持前缀、头部、长度、校验等字段,并且可根据选择的校验算法自动校验帧数据,以及在发送数据时自动添加校验数据。
- AT指令编解码:适用于基于 AT 指令集的设备调试,支持常见 AT 指令格式的解析与封装。
- Modbus RTU 编解码:内置 Modbus RTU 协议解析与数据校验,发送数据时自动添加校验。
- WebAssembly 插件:WebAssembly 插件可通过时间 encode/decode 接口实现自定义编解码器,满足复杂协议需求。

数据格式化#
数据格式化用于将消息包(Message)转为可读文本或可视化内容,以便在终端或面板中展示。 现时 CycBox 支持文本终端与十六进制显示两种格式化方式,两种格式均支持搜索高亮与过滤功能。(注:为了保证快速收发的性能,现时只支持新消息的搜索与高亮)
文本终端#
与常见串口调试软件类似,文本终端会尝试将消息解码为字符串。
支持以下编码:
utf-8, utf-16le, utf-16be, gb18030, big5, shift_jis, euc-jp, euc-kr, iso-8859-1
如需其他编码支持,可与我们联系。


十六进制显示#
用于不可视化数据,将原始字节流以 Hexdump 格式 展示,便于调试二进制协议。

数据发送#
CycBox 提供灵活的数据发送配置:
- 支持文本发送与十六进制发送两种模式,文本模式下支持自动添加换行符。
- 支持多条顺序发送,可配置每条指令的发送间隔。并支持循环发送,适用于压力测试与数据查询拉取。
- 可动态增加删除发送框,方便调试不同指令。
- 可通过 Lua 脚本实现消息的响应、处理与发送逻辑。 Lua 脚本支持延时发送。
- 支持通过 WebAssembly 插件提供预设的发送消息集,方便针对特定设备或者协议进行调试。
- 定时器分辨率为 1ms,精度 0.5ms,适用于高精度定时发送需求。

数据面板#
数据面板功能将原始数据解析为物理量(如温度、湿度、加速度等),并通过图表展示。CycBox 内置文本格式与JSON格式的自动数据面板解析器。并支持通过Lua脚本或WebAssembly插件实现自定义数据面板解析功能。


脚本与插件#
CycBox 支持通过 Lua 脚本 与 WebAssembly 插件 实现复杂的消息处理与定制功能。譬如, Lua 脚本可读取消息帧数据解析到物理量。Lua 脚本可根据接收到的消息内容,动态生成响应消息并支持延时发送。WebAssembly 插件可实现自定义编解码器,消息格式化,数据面板解析,预定义消息集以及WASM规范中允许的其他功能。

MCP 接口#
CycBox 提供 MCP(Message Control Protocol)接口,方便 AI Agent 等外部系统接入调试。通过 MCP 接口,外部系统可发送与接收消息,预设消息发送序列等。(注:MCP 接口为试验功能,未来版本将持续完善)
开发计划#
- v1.0:支持基础串口与 TCP/IP 调试功能
- v1.1:完善物模型及数据面板功能,支持 Modbus RTU 协议解析
- v1.2:截图与输出导出,提升UI性能
- v1.3:搜索功能,优化高精度定时器与低延迟响应(1ms)
- v1.4:Lua 脚本支持
- v1.5:WebAssembly 插件支持
- v1.6:MCP 接口支持,方便 AI Agent 调试接入