我设法使用Micropython 1.9.2将ESP01连接到在我的计算机上运行的mosquitto代理。我还设法模拟了一个设备,并将一个mosquitto客户端从我的计算机连接到Watson Broker。但是,当我尝试将ESP直接连接到Watson时,我收到了拒绝连接#34;消息
MQTTException: 5
# Full stream answered by Watson is: b' \x02\x00\x05'
我的配置参数是:
正如我所说,在Watson中,我创建了已定义的" TLS Optional"并配置了该设备。我测试了与mosquitto客户端的连接并且它有效。
任何帮助都非常受欢迎!,最好!
答案 0 :(得分:3)
我找到了答案,查看了umqtt.simple中的代码修订版(esp8266的mqtt库)
答案是在umqtt示例中有一个使用hexlify(client_id)并且我遵循标准:
client = MQTTClient(client_id=hexlify(MQTT_CLIENT_ID), server=MQTT_BROKER_IP, user=MQTT_USER, password=MQTT_PWD)
显然,mosquitto经纪人了解这一点,但不了解Watson IBM经纪人。改为:
client = MQTTClient(client_id=MQTT_CLIENT_ID, server=MQTT_BROKER_IP, user=MQTT_USER, password=MQTT_PWD)
解决了这个问题。对于watson,变量格式如下:
同时注意主题/消息格式。
最佳!