← 返回软件与工具库

MQTTX 下载与使用:EMQ 出的 MQTT 客户端,还带命令行版(v1.13.0)

最后更新 2026-09-02
⏱ 约 9 分钟 🟡 涉接线/强电
MQTTX MQTT X / MQTT 客户端 网络与协议分析 免费

专做 MQTT 的开源客户端,桌面版和命令行版都由官方发布;只验证「连得上、能收发」用手边工具即可,真要调 MQTT 的行为就该换成它。

授权
Apache-2.0 开源
平台
Windows / macOS / Linux
协议
MQTT、TCP
官网
https://mqttx.app
源码
https://github.com/emqx/MQTTX
适合
  • · 需要长期盯一套 MQTT 系统:多个主题、多个连接来回切换着看,而不是临时发一条试试
  • · 想把 MQTT 的收发放进自动化脚本或 CI——官方同时提供命令行版本,这是 GUI 做不到的
不适合
  • · 只想确认「设备到 broker 这条链路通不通」——手边的网络调试助手顺带就能做,不必再装一个
  • · 串口、UDP、原始 TCP 混在一起的现场排查:MQTTX 只管 MQTT,杂活还得靠综合型调试助手
文件名
MQTTX-Setup-1.13.0-x64.exe
版本
v1.13.0
SHA256
待补(尚未实际核对,不填占位值)
核对于
2026-09-02

本站不托管安装包,上方为官方渠道直链。下载后请自行核对 SHA256,与上表不一致说明文件被改动过。

先把话说在前面:如果你手上已经有一个网络调试助手,它多半就支持 MQTT。站内写过的 NetAssist 支持 MQTT Client,SCOMM 也支持。那还有必要再装一个 MQTTX 吗?

有必要,但不是所有时候都有必要。这篇就想把这条界线画清楚。

顺带支持,和专门做

综合型调试助手里的 MQTT 功能,是顺带支持。它的设计目标很明确:让你填个地址、填个主题,点发送、看接收,确认「这条链路是通的」。做到这一步,它完全够用,而且比再装一个软件快。

MQTTX 是专做 MQTT 的工具。EMQ 出品,官网在 mqttx.app,源码在 GitHub 的 emqx/MQTTX,许可证 Apache-2.0,最新版本 v1.13.0 发布于 2026 年 1 月 23 日。

差别在哪里?在你不再是「验证一下」,而是要长期跟一套 MQTT 系统打交道的时候。主题一多,你需要能把它们分门别类地管起来,而不是每次手打一遍;你要观察保留消息的行为,看新订阅者接进来到底拿没拿到最后那条;你要比较不同 QoS 等级下消息的送达表现。这些事在「顺带支持」的界面里做,会很快变成来回切窗口、手抄记录的体力活。

所以分界线可以这么定:

  • 只是验证链路通不通 —— 用手头已有的综合工具,别折腾。
  • 真要调 MQTT 的行为 —— 换专用的。

界线本身比工具重要。装了专业工具却只用它发一条消息,和用综合工具硬啃主题树管理,是同一类浪费。

容易被忽略的另一半:命令行版

很多人只知道 MQTTX 是个桌面客户端,其实官方的发布资产里同时有两类东西。

桌面版覆盖三个平台:Windows 有安装包和免安装压缩包,64 位和 32 位各一份;macOS 分别提供了给 Intel 和给 Apple Silicon 的两个 dmg;Linux 有 AppImage(x86 和 arm64)和 deb 包。这部分和你预期的差不多。

真正值得单独说的是命令行版本——官方同样发布了 mqttx-cli-win-x64.exe 和 mqttx-cli-win-arm64.exe 这类文件。

CLI 的意义不在于「省得开窗口」,而在于它能进 CI 和脚本。想一下这个场景:你的自动化测试跑到某一步,需要往某个主题发一条消息,然后订阅另一个主题、等设备的响应、拿结果做断言。这件事 GUI 根本做不了——GUI 要人点。有了 CLI,它就是流水线里的一条普通命令,和跑测试、跑构建没什么区别。

同理还有运维侧的小活:定时往某个主题发一条心跳、部署完之后自动订阅几个关键主题确认服务正常。这些都是脚本的活,不是人的活。

具体的子命令、参数怎么写,以官方文档为准——这类信息随版本变化,抄在文章里只会过期误导。你需要先知道的是「有这东西」,剩下的查文档就行。

为什么 MQTT 的排查方向是三条不是一条

用惯 HTTP 的人第一次调 MQTT,最容易卡在模型差别上。

HTTP 是请求响应:你发一个请求,对面给你一个响应,一来一回是配对的。调试方式也就顺理成章——调用一个接口,看它返回什么,状态码和响应体直接告诉你发生了什么。

MQTT 是发布订阅:消息的发送方和接收方互相不认识,中间隔着一个 Broker 中转。发布方把消息发给 Broker,说明发到哪个主题;订阅方向 Broker 说自己关心哪个主题,之后 Broker 有消息就推给它。两边谁也不知道对方是谁、在不在线。

这个差别直接决定了调试方式不同。你不是「调用一个接口看返回」,而是「订阅一个主题等消息」。等不到,就麻烦了——没有一个状态码告诉你为什么没等到。

至少有三个方向要查:

  1. 根本没发。 发布方那一侧压根没把消息发出去,或者发了但没连上 Broker。
  2. 主题写错了。 发布用的主题和你订阅的主题对不上。MQTT 的主题是分层的,还支持通配符,一个层级写错、通配符用错位置,消息就从你眼前流过去了而你收不到。
  3. 权限不对。 Broker 上做了访问控制,这个客户端没有订阅该主题的权限,或者发布方没有发布权限。

三条方向,而不是一条。这也正是专用工具的价值所在——你需要同时开着「发布方视角」和「订阅方视角」,才能快速定位是哪一条。用一个只能填一组参数的界面来回切,排查效率会掉得很厉害。

顺带说一句 QoS。MQTT 的 QoS 分三级:0、1、2,分别对应不同强度的送达保证。这不是「越高越好」的滑块,等级越高意味着交互轮次越多。什么场景该用哪一级,取决于你的业务能不能容忍丢消息、能不能容忍重复消息,这是设计决策,不是调试选项。

关于 Apache-2.0 和 EMQ

MQTTX 的许可证是 Apache-2.0,这是一个宽松许可证:可以闭源商用,没有 copyleft 传染性(你用了它不意味着你的东西也得开源),并且带有专利授权条款。对企业采购和法务评审来说,这类许可证的阻力通常最小。

点到为止——具体到你公司的合规口径,以法务判断为准,这里不构成法律意见。

再说 EMQ 这家公司。EMQ 是做 MQTT Broker 的,MQTTX 是它的配套客户端工具。这个模式其实一点都不陌生:传感器厂商送你免费的调试软件,芯片厂商送你免费的烧录工具,逻辑是一样的——工具白送,钱在另一头。对 EMQ 来说,另一头是 Broker。

这不是什么需要警惕的事,客观陈述而已。免费开源的好工具,你拿来用就是了,它并不会因为出品方有商业产品就变差。只是心里有个数:工具的功能重心会倾向于把 MQTT 这件事本身做好、做顺,这恰恰是你需要的。

什么时候装它

回到最开始那条界线。

设备刚接上,你只想知道能不能连通、能不能收到那一条测试消息——手边的 NetAssist 或 SCOMM 打开就用,不用装新东西。串口那一头出问题的话,那是另一条线上的事,见串口调试工具和 UART 原理。

一旦你开始长期维护一套 MQTT 系统,或者需要把 MQTT 收发写进自动化流程,就该把 MQTTX 装上了。桌面版给你看得清,命令行版让它能进流水线,两件事都在官方发布里。

更多嵌入式与工业通信工具,见软件与工具库和在线工具。

📄 来源 / 自校链接

本文为公开资料整理,非亲测。关键参数与代码请结合实物与下列官方来源验证。

延伸阅读

只是想确认链路通不通,手边的综合工具就够:网络侧用 NetAssist, 串口和网络要一起盯用 SCOMM。消息真的收发起来之后, 要把几条链路接成流程那是 Node-RED 的活, 设备固件那一侧直接出 MQTT 可以看 ESPHome。 其余同类工具见软件与工具库。

同类可替代
内容有错、看不懂、或想看下一期?告诉我们 →

本文为公开资料的学习整理,非亲测。涉接线/花钱/合规的步骤请结合实物与官方最新资料验证,风险自负。见免责声明。

这个页面有问题?

提交时会附带当前页面地址和浏览器信息,帮助我们定位问题。不填联系方式即为匿名。