0

我正在尝试使用 nodemcu v3 和 dht11 构建一个基本的 MQTT 发布者来发送温度数据。我正在使用 ESPlorer,当我尝试上传我的代码时,它告诉我该paho模块不存在。我的代码如下:

import time
import network
import paho.mqtt.client as mqtt

sta_if = network.WLAN(network.STA_IF)
ap_if = network.WLAN(network.AP_IF)
sta_if.connect('<MySSID>', '<MyPW>')

mqtt = mqtt.Client()
mqtt.connect("randomIPaddress")

pin = machine.Pin(4)
temp_instance = dht11.DHT11(pin)
result = temp_instance.read()

print("Temperature is: %d C" % result.temperature)
print("Humidity is: %d %%" % result.humidity)
message = result.temperature 
mqtt.publish("base/dht11/temp", message)  
mqtt.loop_forever()

我仍然对 MQTT 发布的工作方式感到非常困惑,而且我似乎找不到任何在这方面彼此同意的来源。我所看到的每个地方都有不同的解决方案来解决我的问题。

有谁知道为什么 ESPLorer 一直告诉我该paho模块不存在?我已经尝试安装文档中显示的模块,但这让我无处可去。

编辑: https : //pypi.python.org/pypi/paho-mqtt/1.1 这些是我按照说明安装 paho 的地方。

4

1 回答 1

5

pahoMQTT 客户端是为常规 Python 编写的。它不太可能在 MicroPython 下运行。

MicroPython 包含自己的 MQTT 客户端,称为umqtt. 有两个版本,umqtt.simpleumqtt.robust

您可以在此处查看使用它的示例。

于 2018-03-05T12:47:23.453 回答