You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

运行MQTT Broker的树莓派能否兼作MQTT发布端?咨询实现方法

树莓派作为MQTT发布端的实现方案

方案一:使用mosquitto_pub命令行工具

这个方案完全可行,只要树莓派上安装了mosquitto-clients包(多数情况下安装Mosquitto Broker时会自动附带,若未安装则执行sudo apt update && sudo apt install mosquitto-clients即可)。

在Thonny打开的终端中直接执行以下命令:

mosquitto_pub -d -t testTopic -m "Hello world!"
  • 引号问题:只要使用英文双引号就不会有异常;如果消息内容本身包含双引号,可改用单引号包裹消息,比如mosquitto_pub -d -t testTopic -m 'Hello "world"!'。
  • 参数说明:-d开启调试模式(可选,便于查看连接和发送日志),-t指定目标主题,-m为要发送的消息内容。

方案二:使用Python的Paho-MQTT库(推荐)

你之前尝试的micropython-umqtt.simple是针对MicroPython环境的,树莓派的标准Python环境应使用官方推荐的paho-mqtt库,操作步骤如下:

  1. 安装库:
    • 方式一:在Thonny中点击「工具」→「管理包」,搜索paho-mqtt并完成安装。
    • 方式二:在终端执行sudo pip3 install paho-mqtt。
  2. 基础发布消息代码:
import paho.mqtt.client as mqtt

# 连接本地MQTT Broker(Broker在树莓派本机,地址用localhost或127.0.0.1)
client = mqtt.Client()
client.connect("localhost", 1883, 60)

# 向指定主题发布消息
client.publish("testTopic", "Hello world!")

# 断开连接
client.disconnect()

如果需要持续维持连接、处理连接状态回调等,还可以基于此代码扩展逻辑。

内容的提问来源于stack exchange,提问作者Jumike

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 04:42:38