目录


前言

如果你做过物联网项目,大概率经历过这套流程:

注册云平台 → 创建产品 → 配置设备 → 算 Token → 填 MQTT 参数 → 调 AT 指令 → 拼 JSON 上报……中间任何一个环节填错,轻则连不上,重则数据格式不对平台不认。

对新手来说,把模块从"能开机"搞到"平台能看到温度数据",可能需要折腾半天。

这类流程本身不复杂,但细节多、坑分散,确实不友好。

这次我用的是 FS800DTU-A2M1,它出厂自带了 DTU 固件,配合图形化配置工具,把 MQTT 接入 OneNET 的过程简化为"填表 + 点按钮"。不需要逐条敲 AT 指令,也不需要手动计算 Token 的 URL 编码。

它的目标用户很明确——不想在通信底层花太多时间,希望能快速把设备数据送到 OneNET 平台的人

这篇文章就是一次完整的实操记录:从硬件接线开始,到 OneNET 平台能看到上报的温度/湿度数据为止。


1 开箱与配件

手上的 FS800DTU-A2M1 配件比较简单:

  • FS800DTU-A2M1 核心板 × 1
  • 4G 天线(软性贴片) × 1
  • 排针(已焊接) × 1

在这里插入图片描述

1.1 板子做工

核心板已经把常用电路集成好了:4G Cat.1 模组IPEX 天线座TTL 串口电源接口。也就是说,只需要接上天线、供电、连上 USB-TTL,就可以和 PC 通信了。

整体布局紧凑,绿色 PCB 正面印有型号和二维码,焊点均匀、丝印清晰,对于这个价位来说做工符合预期。

1.2 需要注意的两点

  1. 天线一定要接牢。IPEX 座子比较小,插拔时注意垂直用力,不要斜着掰。天线没接好会导致信号极弱甚至无法注网,这是新手最容易忽略的地方。

  2. 供电直接用 USB-TTL 的 3.3V 或 5V 即可。调试阶段不需要外接电源,一根 USB-TTL 线同时搞定供电和串口通信,非常方便。


2 硬件参数

参数 规格
型号 FS800DTU-A2M1
网络制式 4G Cat.1(蜂窝网络)
供电电压 3.3V / 5V(TTL 串口供电)
通信接口 UART(3.3V TTL 电平)
天线接口 IPEX 座,配套软性贴片天线
连接数 4 路 Socket
支持协议 TCP / UDP / HTTP / MQTT
适配云平台 阿里云、华为云、OneNET
固件 出厂自带 DTU 固件
配置方式 串口 AT 指令 / PC 图形化配置工具

2.1 供电与接口说明

调试阶段用 USB-TTL 直接供电,一根线搞定。如果接入实际项目,也可以从 MCU 主板的 3.3V 或 5V 取电,不用额外加降压模块。

接线也很直观:

USB-TTL 引脚 FS800DTU-A2M1 引脚 线色(参考)
TXD RXD 蓝色
RXD TXD 红色
GND GND 黑色
3.3V / 5V VCC 黄色

⚠️ TX/RX 必须交叉连接。接反了串口工具啥也读不到,这是最常见的坑。

在这里插入图片描述

上电后模块板载 LED 会亮起,说明供电正常:

在这里插入图片描述

首次上电需等待 10~30 秒 完成网络注册,之后才能正常收发数据。


3 核心体验:DTU 固件 + 图形化配置 MQTT 上云

FS800DTU-A2M1 最大的特点不是硬件,而是操作方式

传统 4G 模块接入 OneNET 的流程大致是:

上电 → AT 查状态 → AT 配 APN → AT 建 Socket → 手动算 Token → AT+MQTTCONN 连接 → AT+MQTTSUB 订阅 → AT+MQTTPUB 发布 → 等待返回

DTU 固件的流程是:

上电 → 打开 配置工具 → 填服务器、端口、ClientID、用户名、密码 → 点"设置所有参数" → 模块自动联网并连接 OneNET → 串口发 JSON 即上报

相当于把"敲 AT 指令 + 手动拼 Token"替换成了"填表格 + 点按钮"。

对新手来说,这省了不少时间:不需要记 OneNET 的 MQTT 主题格式,不需要手动 URL-encode Token 参数,也不需要反复检查三元组(ClientID / 用户名 / 密码)是否填对。配置完成后参数保存在模块里,断电再上电会自动重连

当然,如果你需要直接操作底层模组,FS800DTU 也保留了 AT 指令通道——通过 +++ 即可切入 AT 模式。

所以更准确地说:

  • 不想折腾底层,想快速把数据送上 OneNET → DTU 模式
  • 想临时查询状态或手动调 AT 指令 → 通过 +++ 进入 AT 模式自己研究

4 从零到数据上报:实际上手步骤

4.1 第一步:硬件连接

  1. 把天线扣到 IPEX 座(听到"咔"一声说明扣紧)。
  2. USB-TTL 连接模块:TX 接 RX,RX 接 TX,GND 接 GND,VCC 接 VCC。
  3. USB-TTL 插入电脑,模块上电。

⚠️ 插 USB 之前再确认一遍 TX/RX 有没有接反。

4.2 第二步:OneNET 平台创建产品

登录 OneNET(CM IoT)平台,在左侧菜单进入 产品开发,点击右上角 「+ 创建产品」

在这里插入图片描述

接着选择智能化方式为 「设备接入」

在这里插入图片描述

填写产品信息时,这几个参数直接照搬:

配置项 填写值
接入协议 MQTT
数据协议 OneJson
联网方式 蜂窝
开发方案 标准方案

在这里插入图片描述

填完点确定,产品就算创建好了。整个过程大约 30 秒。

4.3 第三步:配置物模型与添加设备

产品创建后,点击 「设置物模型」,添加需要上报的属性。我这边加了三个:

功能类型 功能名称 标识符 数据类型 读写类型
属性 温度 wendu string 读写
属性 湿度 uidu string 读写
属性 hex uilq buffer 读写

在这里插入图片描述

⚠️ 标识符就是后续 JSON 上报时 params 里的 key,名字一定不要写错。

物模型配好后,进入 设备管理「+ 添加设备」,填写设备名称(比如 Try_Demo1):

在这里插入图片描述

在这里插入图片描述

设备创建成功后,点进详情页,记录三个关键信息:

  • 产品 ID99V3O942Jq
  • 设备名称Try_Demo1
  • 设备密钥(Key)djg1V0xwZ2tCOW10cjBaUmFlcjRzVTlPeWdoOTJNY=

在这里插入图片描述

这三个值后面填 MQTT 参数时都要用到,建议先记在文本编辑器里。

4.4 第四步:生成 MQTT 登录密码

OneNET 的 MQTT 密码需要官方 Token 计算工具生成。打开工具,填写以下参数:

参数 说明 示例值
res 资源路径 products/99V3O942Jq/devices/Try_Demo1
et 过期时间(Unix 时间戳) 1784961505
key 设备密钥 djg1V0xwZ2tCOW10cjBaUmFlcjRzVTlPeWdoOTJNY=
method 加密方式 md5
version 版本 2018-10-31

在这里插入图片描述

点击 Generate,工具会生成一串类似这样的 Token:

version=2018-10-31&res=products%2F99V3O942Jq%2Fdevices%2FTry_Demo1&et=1784961505&method=md5&sign=7Rh%2FrWoDUce7foogE0KQ4A%3D%3D

这串字符串就是 MQTT 登录的密码,全部复制,后面配置工具里直接粘贴。

4.5 第五步:DTU 配置工具填写参数

打开 SerialPort_To_Network_ConfigTools,选好通道,协议选 MQTT,然后按以下参数填写:

配置项 填写值
服务器地址 mqtts.heclouds.com
端口号 1883
ClientID Try_Demo1(设备名称)
用户名 99V3O942Jq(产品 ID)
密码 上一步生成的 Token 字符串
KeepAlive 60
订阅主题 property/post/reply
发布主题 thing/property/post

在这里插入图片描述

MQTT 三元组的对应关系很简单:

MQTT ClientID → OneNET 设备名称
MQTT 用户名 → OneNET 产品 ID
MQTT 密码 → Token 工具算出来的字符串

别搞混就行。填完后点击 「设置所有参数」,模块会自动连接 OneNET。如果配置正确,稍等几秒就能在工具日志区看到连接成功的提示。

4.6 第六步:发送 JSON 上报数据

连接成功后,在发送区输入 OneJson 格式的 JSON:

{
  "id": "123",
  "version": "1.0",
  "params": {
    "wendu": {
      "value": 25
    },
    "uidu": {
      "value": 65
    }
  }
}

在这里插入图片描述

点击发送,接收区会立即返回平台响应:

{"id":"123","code":200,"msg":"success"}

在这里插入图片描述

code: 200 就是上报成功。这时登录 OneNET 平台,进入设备属性页面:

属性名 当前值
温度 25
湿度 65

在这里插入图片描述

数据已经稳稳躺在平台上了。

从开箱到平台能看到第一组温度/湿度数据,熟练的话大概 10 分钟


5 实际测试:几个需要关注的点

为了判断这套方案能不能用在实际项目里,我重点测试了以下几个方面:

5.1 数据上报延迟

在蜂窝信号良好的环境下,从串口发出 JSON 到 OneNET 属性页面刷新,延迟大约 1~3 秒。这个速度对大多数物联网场景(温湿度采集、设备状态上报)来说完全够用。

5.2 断网重连表现

拔掉天线模拟断网,等 30 秒后再插回去,模块在 15 秒内 自动恢复 MQTT 连接,无需人工介入。这说明 DTU 固件的重连机制是可靠的。

5.3 JSON 格式兼容性

测试了只上报单个属性、上报三个属性、以及 params 为空的情况。只要 JSON 结构符合 OneJson 规范,平台都能正常解析。但如果 params 里的 key 和物模型标识符不一致,平台会返回 code: 400——这一点需要在程序里做校验。

5.4 断电恢复

断开模块供电再重新上电,模块能在 20~30 秒 内按之前保存的参数自动联网并重连 OneNET,配置不丢失。这一点对实际部署很友好——不需要每次断电后都重新配一遍。


6 总结

FS800DTU-A2M1 凭借 DTU 固件 + 图形化配置工具,把传统的"AT 指令 + 手动算 Token + 拼主题"流程简化为"填表 + 点按钮 + 发 JSON",配合 OneNET 平台的 OneJson 数据协议,从开箱到数据上云大约 10 分钟就能搞定。

如果你也在找一款能快速接入 OneNET、不想在底层通信上折腾太久的 4G Cat.1 模块,FS800DTU-A2M1 值得一试。

感谢大家的观看。对本文章有任何不清楚的地方,可以私信或者在评论区留言。

更多推荐