Last Updated on : 2024-02-23 08:24:11download
This topic describes reliable data reporting aimed at improving communication reliability.
The gateway and mobile app do not acknowledge the receipt of the data proactively reported by the Bluetooth mesh device. Reliable data reporting is used to secure the delivery of important messages.
OPERATE_RET tal_mesh_vendor_dp_report_reliable(UINT8_T dp_id, TAL_DP_TYPE dp_type, UINT8_T *dp_data, UINT8_T dp_data_len, TAL_REPORT_MODE_T trans_mode);
dp_id
: The DP ID.
dp_type
: The DP type.
dp_data
: The pointer to the DP data.
dp_data_len
: The length of the DP data.
trans_mode
: The retransmission mode.
The reporting mechanism varies by retransmission mode, as shown below.
Mode | Transmission count | Retransmission interval | Scenario |
---|---|---|---|
MODE_0 |
1 | 0 | Acknowledgment is not required. The function is equivalent to tal_mesh_data_send . |
MODE_1 |
1 | 0 | Acknowledgment is not required, and messages are queued for sending. |
MODE_2 |
16 | Random from 3s to 60s | Moderately time-sensitive products, such as vehicle detection sensors. |
MODE_3 |
2 | 1s | Highly time-sensitive products, such as wireless switches. |
MODE_4 |
4 | 1s | Reserved for MODE_3 products that are not sensitive to power consumption to increase message delivery rate. |
MODE_5 |
Unlimited | Random from 1s to 3s | Time-critical products with high delivery rate requirements, such as smoke alarms and security products. |
When the mobile app receives status data from Bluetooth mesh devices via a reliable reporting channel, it will not synchronize this status with the cloud. The app will process the data without sending an acknowledgment. If the device reports data through a gateway, the gateway will send an acknowledgment. This feature is implemented on your own, so be sure to verify its compatibility with the firmware.
Use reliable data reporting cautiously. Avoid applying it to regular DP data, as network congestion may occur when the gateway processes and sends acknowledgments during a high volume of simultaneous data reporting. The network storm that arises can lead to significant packet loss. Typically, use OPERATE_RET tal_mesh_data_send(USHORT_T src_addr, USHORT_T dst_addr, UINT_T opcode, UCHAR_T *data, USHORT_T data_len)
to report data unless time sensitivity is crucial.
Is this page helpful?
YesFeedbackIs this page helpful?
YesFeedback