adjust Maximun packet size in the parameter list

Hello,

In my application, we want to adjust the maximum packet size we can send to the mqtt broker to 128KB. I found that the current packet size is 4096. See image (maximum packet size). I have tried to adjust this parameter, see highlighted part in the other image (adjusting packet size), but I constantly get an [AccessViolation] from the "CheckPoint" function. see image acces violation.

Does somebody has an solution on how to adjust this packetsize?

I am using the MQTT and the AWS IOT CORE library.

Kind Regards

Best reply by eschwellinger

The AWS client is configured incorrectly.

You use a MQTT V5 property (which is not passed to the client) to set the max. payload size. This only exists for the MQTT client and in the case of MQTT V5 and is an info for the server (also says so in the help).
Seems that you use the Maximum Packet Size to inform the server that it will not process packets exceeding this limit.
The maximum packet size and the maximum payload size can be edited via the MQTTParam parameter list of the MQTT Client SL library at toplevel in the Library Manager. (see attached screenshot)
AWS IoT Core does not support MQTT V5
It's a bad idea to always transfer the maximum payload. see Publisher udiPayloadSize:= SIZEOF(GVL.wsJsonData).
It would be better to transfer the current length of the string.

AdjustSizeandPayload.jpg
201.7KB
View original
Maximum packet size.JPG
109.33KB
adjusting packet size.JPG
64.67KB
acces violation.JPG
236.47KB
5 replies