Thread 中讨论的其他器件:SYSBIOS
您好!
使用 azure_cc32xx_4_10_01_01 SDK 的 iothub_client_sample_mqTT 示例发送大约5K 或更多字节的数据时遇到问题。
我创建了一个大约5K 的示例字符串、并修改了以下代码以将其发送到物联网集线器:
静态 char sampleText[]=
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexexttexttexttexttexttext\r\n"
"texttexttexttexttexttexexttexexttexexttexttexexttexttexttexttext\r\n";
if ((messages[iter].messageHandle = IoTHubMessage_CreateFromByteArray ((const unsigned char*) samplpleText、strlen (samplpleText)))= NULL)
{
display_printf (display、0、0、"error:iotHubMessageHandle is NULL!");
}
其他
{
display_printf (display、0、0、"迭代%d 中发送的数据长度:%d"、iterator、strlen (samplpleText));
(空) IoTHubMessage_SetMessageId (messages[iter].messageHandle、"MSG_ID");
(空) IoTHubMessage_SetCorrelationId (messages[iter].messageHandle、"core_ID");
messages[iterator].messageTrackingId =迭代器;
map_handle propMap = IoTHubMessage_Properties (messages[iter].messageHandle);
(void) sprintf_s (propText、sizeof (propText)、温度> 28? "true":"false");
if (Map_AddOrUpdate (propMap、"temperatureAlert"、propText)!= map_OK)
{
display_printf (display、0、0、"error:map_AddOrUpdate failed!");
}
if (IoTHubClient_LL_SendEventAsync (iotHubClientHandle、messages[iter].messageHandle、SendConfirmationCallback、&messages[iter])!= IOTHUB_CLIENT_OK)
{
Display_printf (display、0、0、"error:IoTHubClient_LL_SendEventAsync ......... 失败!");
}
其他
{
Display_printf (display、0、0、"IoTHubClient_LL_SendEventAsync 可接受的消息[%d]、用于传输到物联网集线器。"、(int)迭代器);
}
}
但是、在 SDK 中启用日志时遇到以下错误:
错误:文件:../../sdk/c-utility/src/buffer.c 函数:buffer_prepend 行:555
失败:分配温度缓冲区。
错误:文件:../../sdk/umqtt/src/mqtt_client.c Func:MQTT_CLIENT_PUBLISH Line:1089
错误:MQTT_CODE_PUBLISH 失败
错误:文件:../../sdk/iothub_client/src/iothubtransport_mqtt_common.c Func:publish_MQTT_msg Line:892
尝试发布 MQTT 消息失败
已接收确认[0]、用于消息跟踪 ID = 0、结果= IOTHUB_CLIENT_CONFIRMATION_ERROR
我已经尝试在 FreeRTOSConfig.h 中增加堆内存、但这没有帮助。
请注意、我还尝试使用 HTTP 示例发送。 但是、即使这样也失败了。
请帮助我解决此问题、以便将大数据发送到云。
谢谢、
Kishore。