访问云服务
https://thingsboard.cloud/
新建一个设备
弹出
默认是mosquittor的客户端。
curl -v -X POST http://thingsboard.cloud/api/v1/tnPrO76AxF3TAyOblf9x/telemetry --header Content-Type:application/json --data "{temperature:25}"
换成MQTTX的客户端
将这个语句 放入到deepseek中,询问转为MQTTx的连接方式,如何进行配置
- 打开 MQTTX,点击左上角
+
新建连接,填写以下参数:- Host:
thingsboard.cloud
- Port:
1883
(默认 MQTT 端口,若使用 TLS 则改为8883
) - Username:
tnPrO76AxF3TAyOblf9x
(设备访问令牌) - Password:留空
- Protocol:
MQTT
(版本 3.1.1 或 5.0,ThingsBoard 兼容 3.1.1)
- Host:
(采用不需要密码的方式进行连接)
执行连接之后,显示成功标记
在远程网络端,出现active的连接在线状态
-
设置发布主题
- Publish Topic:输入
v1/devices/me/telemetry
- QoS:选择
1
(至少一次送达) - Retained:不勾选(默认不保留消息)
- Publish Topic:输入
进入到远程网页之后,
点击设备之后,发现数据已经传入到远程系统中
新建一个TmpDashBoard
呈现的效果为
这个时候,如客户端重新发送
{"temperature":28}
在远程的dashboard上,数据立项被修改为28度
Broker的选择
ThingsBoard 的 MQTT Broker 实现取决于其版本和部署方式,以下是详细说明:
1. 默认内置 Broker
- ThingsBoard 版本:社区版(CE)及企业版(EE)的早期版本(如 v3.x 之前)
- Broker 类型:基于 Netty 自研的轻量级 MQTT Broker
- 特点:
- 无需额外安装:随 ThingsBoard 一起启动,直接支持 MQTT 协议(默认端口
1883
)。 - 功能有限:适合小规模设备接入(并发连接数约数千),缺乏高可用、集群等企业级特性。
- 协议支持:仅 MQTT 3.1.1,不支持 MQTT 5.0 或 CoAP/HTTP
-
2. 集成外部 Broker
- 无需额外安装:随 ThingsBoard 一起启动,直接支持 MQTT 协议(默认端口
-
从 ThingsBoard v3.x 开始,官方推荐与外部 MQTT Broker 集成以提升性能,常见方案如下:
(1) EMQX(推荐)
- 适用场景:大规模设备接入(百万级并发)、企业级需求(集群、TLS 加密、ACL 等)。
- 集成方式:
- 单独安装 EMQX(官网下载)。
- 配置 ThingsBoard 使用 EMQX 的 MQTT 端口(默认
1883
)。 - 在 EMQX 中设置认证(用户名/密码或 Token)和主题路由规则。
- 优势:
- 支持 MQTT 5.0、QoS、遗嘱消息等高级特性。
- 提供 Dashboard 和监控工具。
-
前端采用ThingsBoard凭借其优秀的性能和高效的性能得到了广大开发者的认可,但基于Angular的前端不符合中国的用户习惯, 本项目为基于Vue3开发的 ThingsBoard 前台
前端开源项目
thingsboard-ui-vue3: 本项目为基于Vue3开发的 ThingsBoard 前台 ,AntDesginVue、VbenVueAdmin、AntV X6、规则链代码已全部开放、ThingsBoard3.8.1持续更新中
这个开源项目,采用vue3,感觉fork的量还比较大
另外一个开源项目
thingsvue: ThingsVue 是一个免费开源的中后台模版。使用了最新的Vue3,Vite2,TypeScript等主流技术开发,开箱即用的中后台前端解决方案. ThingsBoard是一个用于数据收集、处理、可视化和设备管理的开源物联网平台。Vue Vben Admin + ThingsBoard 结合两者的优点致力于打造一款开箱即用且更符合国人的开发习惯的开源物联网平台
参考
如何使用 ThingsBoard 接入 MQTT 数据 - EMQX - 博客园