我正在尝试使用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的说明。
paho
MQTT客户端是为常规Python编写的。它不太可能在MicroPython下运行。
MicroPython包含自己的MQTT客户端,名为umqtt
。有两个版本,umqtt.simple和umqtt.robust。
你可以看到一个使用它的例子here。