本文演示如何通过飞易通 BW236 模块使用 AT 指令连接 EMQX 本地 MQTT 服务器,实现主题订阅与消息收发。
一、开发环境
- 系统平台:Windows 7 或 Windows 10
- 硬件:飞易通开发板 FSC-DB105-BW236(蓝牙WiFi模组 FSC-BW236)
二、搭建 EMQX 本地 MQTT 服务器
1. EMQX 本地安装
👉本地下载 Windows-EMQX 开源版(v5.0.3)
将下载好的 emqx-5.0.3-windows-amd64.tar.gz 解压到磁盘根目录。
2. 运行 EMQX 本地服务
打开命令行工具(右键开始 → 运行 → 输入 cmd),依次执行以下命令:
1.e: // 切换到E盘
2.cd E:\emqx-5.0.3-windows-amd64\bin // 进入bin目录
3.emqx start // 启动EMQX服务器
4.emqx_ctl status // 查看服务器状态
5.emqx stop // 停止服务器
emqx_ctl status 返回正常状态即表示服务器已启动。

3. 远程登录 EMQX 服务器
- 浏览器访问:http://127.0.0.1:18083/#/login
- 用户名:
admin,密码:public,点击 Login
- 登录后可切换界面为中文
至此,EMQX 本地 MQTT 服务器搭建完成。

三、模块连接到 EMQX 服务器
1. EMQX 服务器创建 Topic 主题订阅
依次点击“问题分析” → “主题监控” → “添加 Topic”,在弹出的窗口中输入要创建的 Topic。本例使用 bw236_topic。
创建成功后,该主题将显示在主题监控列表中。

2. 通过 AT 命令连接
使用“飞易通串口调试工具”进行 AT 指令配置,完整指令序列如下:
text
>> AT+RAP=Feasycom-5G-WiFi5,Fe@syc0m //连接网络SSID名称,SSID密码
<<OK
>> AT+LIP
<< +LIP=192.168.2.4 //网络连接成功,查看当前模组IP地址
<< OK
>> AT+MQTTMODE=0 //设置MQTT模式
<< OK
>> AT+BROKER=192.168.2.5 //EMQS服务器所在本机的IP地址
<< OK
>> AT+CLIENTID=mqtt_event_handler //EMQS服务器CLIENTID接口
<< OK
>> AT+USERNAME=admin //EMQS服务器登录用户名
<< OK
>> AT+MQTTPWD=public //EMQS服务器登录密码
<< OK
>> AT+WLANC=4 //连接MQTT服务器,这里即EMQS服务器
<< OK
<< +MQTTSTAT=3
<< +MQTTSTAT=1 //未连接。因为没有订阅主端,会连接断开
<< +MQTTSTAT=3
<< +MQTTSTAT=1
<< +MQTTSTAT=3
>> AT+SUBTPC=bw236_topic,0 //订阅主题,TOPIC:bw236_topic QoS:0
<< OK
<< +MQTTSTAT=1
<< +MQTTSTAT=3
>> AT+MQTTSTAT //查询连接状态
<< +MQTTSTAT=3 //已连接
<< OK
连接状态说明:
- 发送
AT+SUBTPC 前,模块因未订阅主题会自动断开,返回 +MQTTSTAT=1(未连接)
- 订阅成功后发送
AT+MQTTSTAT 查询,返回 +MQTTSTAT=3 即表示连接成功
更详细的指令说明请参考:BW236 AT指令集
3. EMQX 服务器连接管理
模块连接成功后,前往 EMQX Dashboard → “仪表盘”或“连接管理”,可查看和管理已连接的设备。

四、模块发送订阅主题数据到 EMQX 服务器
1. 指令模式发送数据
使用“飞易通串口调试工具”,通过 AT 指令发送数据:
指令格式:
AT+MQTTSEND=<Topic>,<QoS>,<数据长度>,<数据内容>
示例(向 bw236_topic 发送 4 字节数据):
>> AT+MQTTSEND=bw236_topic,0,4,bw236
<< OK
<< +MQTTDATA=4,bw236
2. EMQX 消息流量监控
EMQX Dashboard → “主题监控”可监控消息的流入量和流出量。

说明:主题监控显示的是平均值与总量,不展示单条消息的详细属性(否则大报文会导致监控数据过大不可控)。如需监控每条报文的数据,可使用终端订阅该主题查看消息详情。
五、注意事项
- EMQX 安装路径不要包含中文字符
- 模块连接 WiFi 前确保网络通畅,SSID 和密码正确
- 订阅主题前模块会自动断开,必须执行
AT+SUBTPC 订阅后重新连接
- EMQX 服务器 IP 地址需根据实际环境修改(本文示例中 模块的 IP 为
192.168.2.4,EMQX 服务器 IP 为 192.168.2.5)