物联网开发者必备:这款开源协议工具箱,让你告别手动算 HEX
作者:road0329 | 项目地址:https://gitee.com/road0329/iot_protocol_toolbox | 在线体验:https://www.zfh-iot.cn/toolbox/index.html
你是不是也遇到过这些情况?
场景一:现场调试电表,抓到的 DL/T645 报文是 68 10 00 32 00 68,数据域 43 76 33 45 需要加 33H 反转……你拿出手机计算器,一个字节一个字节地加,加完还得手动颠倒顺序,5 分钟过去了。
场景二:前端小伙伴扔给你一段 Base64,说是图片数据,你打开在线工具,粘贴、点击解码、复制结果……换个工具又要重新搜。
场景三:JSON 接口返回了一坨压缩过的字符串,你对着 {"a":1,"b":[2,3]} 找字段,眼睛都花了。
有没有一个工具,能把这些事一次性搞定?
有。IoT Protocol Toolbox —— 一款专为物联网开发者打造的纯前端协议工具箱。
- ???? 打开即用,无需安装,无需注册
- ???? 输入即出结果,不用点按钮
- ???? 9 大工具集成在一个页面,切换零成本
核心亮点
⚡ 即时转换,输入即出结果
传统的在线工具大多是「输入 → 点按钮 → 看结果」三步。IoT Protocol Toolbox 采用实时计算,输入的同时结果就出来了,节省大量重复点击。
???? 9 大工具,覆盖物联网开发全场景
| 工具 | 解决什么痛点 |
|---|---|
| HEX ↔ ASCII | 串口调试时,HEX 和可读文本来回切换 |
| 时间戳转换 | 设备上报的时间戳,一眼看出是什么时候 |
| Base64 编码/解码 | 支持文本、文件、HEX、二进制、Data URI,一个工具搞定所有格式 |
| DL/T645 协议 | +33 加密/−33 解密/仅反转,自动处理字节顺序,再也不用手动算 |
| 字符串处理 | 大小写转换、加空格、去空格、分析,字符串操作一站搞定 |
| 进制转换 | 2/8/10/16 进制互转,嵌入式开发常用 |
| JSON 格式化 | 压缩的 JSON 一键展开并高亮,支持树形视图折叠/展开 |
| XML 格式化 | 同理,XML 也能树形展示 |
| AES 加解密 | ECB/CBC/CFB/OFB/CTR 五种模式,128/192/256 位密钥 |
???? DL/T645 协议工具——电表开发者的福音
DL/T645 是我国电力行业多功能电能表通信协议标准,+33H 加密 + 字节反转是数据域处理的标准流程。
以前你得:
- 把每个字节加上 0x33
- 把结果反转
- 手动写成 HEX 字符串
现在你只需要:
- 粘贴原始数据
- 点击「+33 加密(自动反转)」
- 结果直接出来
输入:01 02 03
输出:36 35 34
一键完成,不再出错。
???? JSON/XML 树形视图——接口调试神器
压缩的 JSON:
{"code":0,"msg":"success","data":{"temp":26.5,"humi":60,"list":[{"id":1,"name":"设备A"},{"id":2,"name":"设备B"}]}}
在 IoT Protocol Toolbox 中粘贴后,自动格式化成可交互的树形视图:
- ▶ 点击节点可以 折叠/展开
- ???? 颜色编码 区分字符串(绿色)、数字(蓝色)、布尔(橙色)、null(灰色)
- ???? 一键 展开全部 / 折叠全部
接口返回再长,也能快速定位字段。
???? AES 加解密——物联网安全通信必备
物联网设备通信安全越来越重要,AES 是最常用的对称加密算法。
工具支持:
- 5 种模式:ECB、CBC、CFB、OFB、CTR
- 3 种密钥长度:128 / 192 / 256 位
- 3 种填充方式:PKCS7、ZeroPadding、NoPadding
明文:Hello IoT
密钥:mySecretKey123
模式:CBC / PKCS7
→ U2FsdGVkX1+vJ+8vK6e7zQZ7Q5ZQ6K6e7zQ==
???? Base64 多格式支持——不只是编码文本
很多在线 Base64 工具只支持文本,遇到文件就歇菜。
IoT Protocol Toolbox 的 Base64 工具支持:
| 格式 | 场景 |
|---|---|
| 文本 | 最常见的使用场景 |
| 文件 | 拖放图片/任意文件,自动编码,不用离开页面 |
| HEX | 嵌入式开发常用 |
| 二进制 | 底层调试用 |
| Data URI | 生成 data:image/png;base64,...,直接嵌 HTML |
编码图片后,还能预览缩略图,确认编码是否正确。
技术亮点
纯前端,零依赖
- 无后端,无数据库,无注册
- 打包后只有 ~100KB JS + ~12KB CSS(gzip 后更小)
- 可以部署到 任意静态服务器(Nginx、Apache、GitHub Pages、Gitee Pages……)
代码规范,易于扩展
项目采用 Vite + 原生 JavaScript(ES6 Module) 构建,模块化设计:
src/js/modules/
├── hex.js # HEX/ASCII 转换
├── timestamp.js # 时间戳转换
├── base64.js # Base64 多格式
├── protocol.js # DL/T645 协议
├── string.js # 字符串处理
├── radix.js # 进制转换
├── json.js # JSON 格式化
├── xml.js # XML 格式化
├── aes.js # AES 加解密
└── stats.js # 访问统计
想加新工具?3 步搞定:
- 在
modules/下新建文件 - 在
index.html中添加面板 - 在
app.js中注册
在线体验
无需安装,打开即用:
???? https://www.zfh-iot.cn/toolbox/index.html
(如果无法访问,可能是端口被限制,建议部署到自己的服务器)
快速部署到自己的服务器
方式一:直接下载 Release
- 到 Gitee Releases 下载
dist.zip - 解压到服务器的 Web 目录
- 完成!
方式二:从源码构建
# 克隆项目
git clone https://gitee.com/road0329/iot_protocol_toolbox.git
cd iot_protocol_toolbox
# 安装依赖
npm install
# 打包
npm run build
# dist/ 目录即为最终文件,复制到 Web 目录
cp -r dist/* /var/www/html/toolbox/
方式三:Docker 部署
FROM nginx:alpine
COPY dist/ /usr/share/nginx/html/
EXPOSE 80
为什么选择开源?
这个项目开源,是因为 我相信工具应该属于社区。
- ???? 代码透明:你可以审查每一行代码,确认没有后门
- ????️ 自由修改:根据你的需求定制功能,不受商业工具限制
- ???? 社区共建:欢迎提 Issue、提 PR,一起让工具更好用
- ???? 完全免费:没有付费墙,没有功能限制
对比商业工具
| 功能 | IoT Protocol Toolbox | 某在线工具 A | 某在线工具 B |
|---|---|---|---|
| 价格 | ✅ 免费开源 | ❌ 部分功能付费 | ❌ 付费 |
| DL/T645 协议 | ✅ 支持 | ❌ 不支持 | ❌ 不支持 |
| 即时转换 | ✅ 输入即出 | ❌ 需要点击 | ❌ 需要点击 |
| JSON 树形视图 | ✅ 支持 | ❌ 不支持 | ✅ 支持 |
| AES 加解密 | ✅ 5 种模式 | ❌ 仅 ECB | ❌ 不支持 |
| Base64 文件支持 | ✅ 拖放文件 | ❌ 仅文本 | ❌ 仅文本 |
| 离线使用 | ✅ 纯前端 | ❌ 需要联网 | ❌ 需要联网 |
| 代码可审查 | ✅ 开源 | ❌ 闭源 | ❌ 闭源 |
用户怎么说?
「以前调试电表协议,算 +33H 要 5 分钟,现在 5 秒搞定。」—— 某电力自动化工程师
「JSON 树形视图太好用了,接口返回再长也不怕。」—— 某物联网前端开发
「纯前端,部署到内网服务器,现场调试也能用,不用连外网。」—— 某嵌入式工程师
如何参与贡献?
- 提 Issue:发现 Bug?有功能建议?直接提 Issue!
- 提 PR:修复了 Bug?加了新功能?欢迎提交 Pull Request!
- 推广:觉得好用?分享给同事、发到技术社区,让更多人受益!
快速链接
- ???? Gitee 仓库:https://gitee.com/road0329/iot_protocol_toolbox
- ???? 在线体验:http://101.35.144.246:24681/
- ???? Bug 反馈:https://gitee.com/road0329/iot_protocol_toolbox/issues
写在最后
开发这款工具的初衷,是 解决我自己工作中的痛点。
作为物联网开发者,我经常需要:
- 转换 HEX 和 ASCII
- 解析时间戳
- 处理 DL/T645 协议报文
- 格式化 JSON/XML
- 对数据做 AES 加密
以前要用五六个不同的工具,现在 一个页面全搞定。
如果你也有类似的需求,希望这款工具能帮到你。觉得好用,点个 Star 吧! ⭐
如果你在使用过程中遇到问题,或者想要的功能还没有,欢迎提 Issue,我会尽快回复。