NetXDuo with MQTT on STM32F4 - Big data transmission restrictions

Kirsten Jens 1 Reputation point
2023-02-02T08:48:02.2733333+00:00

For testing purposes, we need to check what would be a maximum single data transfer using MQTT library on NetXDuo.

This implies both the publishing (STM32F4 sends data) and subscribing (STM32F4 receives data) procedure.

The MQTT library allows for setting the maximum size of data via NXD_MQTT_MAX_MESSAGE_LENGTH.

What would be a maximum setting here and what other settings would it affect?

What implications does it have on the underlying TCP stack? Are there settings to be done here too?

TLS

We do work with encryption on TLS1.3. The en- and decrypting process so far is done in software.

Does a certain data size have effects here?

Is there a maximum data size restriction given by the TLS part?

En- and decryption in Hardware might be considered at a later stage.

Azure RTOS
Azure RTOS
An Azure embedded development suite including a small but powerful operating system for resource-constrained devices.
330 questions
{count} votes

1 answer

Sort by: Most helpful
  1. Tiejun Zhou 1,126 Reputation points Microsoft Employee
    2023-02-07T09:22:28.8933333+00:00

    The restriction of MQTT is from protocol but not from NetX stack any more. So NXD_MQTT_MAX_MESSAGE_LENGTH is now deprecated. But you will need to provide large enough packet buffer (64K) for TLS stack and at least double the size of 64K for packet pool area to hold incoming data and decryption. To retrieve MQTT topic and payload, you will also provide a large enough buffer. All the restrictions are now under the control of user application.

    0 comments No comments