Thread 中讨论的其他器件:CC3235SF、 CC3200
工具/软件:
我正在使用 TI 的 CC3235SF LaunchXL FreeRTOS MQTT 示例通过 Wi-Fi 连接到我自己的代理(HiveMQ)、但 MQT Client_Connect ()失败、出现错误–111、–456、–468和–2006。 为了成功建立与 Mqtt_Client_的安全连接、我需要什么确切的证书格式(PEM 与 DER、根与链)、TLS 参数和示例设置(包括如何填充 MQTT secure_files 和 MQTT MQTT Client_Conn)、以便订阅和发布消息?
以下是获得的更改和结果:
在主示例工程中修改了代码:
#define WILL_TOPIC "devices/865031063735368/telemetry" #define WILL_MSG "Client start to test" #define WILL_QOS MQTT_QOS_2 #define WILL_RETAIN false /* Defining Broker IP address and port Number */ #define SERVER_ADDRESS "mqtt.mssve.ai" #define SECURED_PORT_NUMBER 8883 #define SUBSCRIPTION_TOPIC0 "devices/865031063735368/telemetry" /* Defining Publish Topic Values */ #define PUBLISH_TOPIC0 "devices/865031063735368/telemetry" #define PUBLISH_TOPIC0_DATA \ "This is the testing results" /* Defining Enrolled Topic Values. */ #define ENROLLED_TOPIC "devices/865031063735368/telemetry" char ClientId[13] = "Inno1234"; /* Client User Name and Password */ const char *ClientUsername = "test"; const char *ClientPassword = "1234"; /* Server User Name and Password */ const char *ServerUsername = "test"; const char *ServerPassword = "1234"; #ifdef SECURE_CLIENT char *Mqtt_Client_secure_files[CLIENT_NUM_SECURE_FILES] = {"isrgrootx1.der"}; MQTTClient_ConnParams Mqtt_ClientCtx = { MQTTCLIENT_NETCONN_SEC | MQTT_DEV_NETCONN_URL, SERVER_ADDRESS, //SERVER_ADDRESS, SECURED_PORT_NUMBER, // PORT_NUMBER SLNETSOCK_SEC_METHOD_SSLv3_TLSV1_2, SLNETSOCK_SEC_CIPHER_FULL_LIST, CLIENT_NUM_SECURE_FILES, Mqtt_Client_secure_files }; #ifdef SECURE_SERVER /* In order to use secured socket method, cipher, n_files and secure_files */ /* must be configured. certificates also must be programmed */ /* ("server-key.pem", "server-cert.pem") */ #define SERVER_NUM_SECURE_FILES 2 char *Mqtt_Server_secure_files[SERVER_NUM_SECURE_FILES] = { "isrgrootx1.pem", "isrgrootx1.der"}; MQTTServer_ConnParams Mqtt_Server = { SECURED_PORT_NUMBER, SLNETSOCK_SEC_METHOD_SSLv3_TLSV1_2, SLNETSOCK_SEC_CIPHER_FULL_LIST, SERVER_NUM_SECURE_FILES, Mqtt_Server_secure_files };
输出:
[NetApp 事件]设备获取的 IP
器件以工作站模式启动
[WLAN 事件] STA 连接到 AP: Innowave , BSSID: A6:A4:6b:A4:97:7c
[NetApp 事件]设备获取的 IP
设备已连接到 Innowave
设备 IP 地址为192.168.100.137
成功创建 MQTT 客户端
已成功创建客户端线程
MQTT 客户端设置成功
.... 连接到代理失败、错误代码:-111
CC3200发布以下消息
主题:设备/865031063735368/遥测
数据:这是测试结果
机载客户端已断开连接
才能重新连接本地客户端、复位板。
Aiman,