工具/软件:Code Composer Studio
您好!
使用原始问题。 我已经能够设置器件的静态 IP。 但我的 MQTT 连接失败。 其返回错误 -2006 (SLNETERR_RET_CODE_INVALID_INPUT)。
如果我不使用静态 IP、则表示使用默认代码(DHCP)、然后 MQTT 连接成功。
那么问题是什么?
谢谢、
Dinkar
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:Code Composer Studio
您好!
使用原始问题。 我已经能够设置器件的静态 IP。 但我的 MQTT 连接失败。 其返回错误 -2006 (SLNETERR_RET_CODE_INVALID_INPUT)。
如果我不使用静态 IP、则表示使用默认代码(DHCP)、然后 MQTT 连接成功。
那么问题是什么?
谢谢、
Dinkar
您好、Sai、
感谢您的回复。
我之前的帖子与 MQTT SSL 连接相关、与此不同。
在此帖子中、我在1883帖子上出现了 MQTT 连接问题。
首先,我 从 SDK 中获取 mqttclientserver 的新代码。 获取服务器地址"test.mosquitto.org "和端口"1883"、然后运行我的 MSP432E4成功连接到该服务器的代码。
现在、第二个测试我将器件 IP 从动态更新为静态、就像您在"https://e2e.ti.com/support/microcontrollers/msp430/f/166/t/681655""上的帖子一样。然后运行相同的代码、但 MQTT 连接失败、并显示错误 -2006。
我确保 MSP432E4通过基于 DHCP 的测试代码连接互联网、并成功连接到服务器。
在这两种情况下、我的硬件连接是相同的。
谢谢、
Dinkar
您好 Dinkar、
您很可能没有设置静态 DNS 服务器以及静态 IP 地址。 使用以下代码执行此操作:
uint32_t ipaddr = inet_addr ("8.8.8.8");
if (ipaddr){
CfgAddEntry (hCfg、CFGTAG _SYSINFO、CFGITEM_DHCP_DOMAINNAMESERVER、
0、sizeof (ipaddr)、(unsigned char *)和 ipaddr、0);
}
上面的8.8.8.8服务器是 Google 的公共 DNS 服务器、但您可以将其指向所需的任何服务器。
进行此更改后、最新3.30 SDK 中的 mqttclient 示例可与静态 IP 配合使用。
请告诉我、这是否对您无效。
此致、
Michael