I would like to add multiple sensors and broadcast the data to the receiver. May I know what is the maximum data payload allowed in broadcasting mode so that I know how many sensor data can be sent in a packet?
I am using CC2541.
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.
I would like to add multiple sensors and broadcast the data to the receiver. May I know what is the maximum data payload allowed in broadcasting mode so that I know how many sensor data can be sent in a packet?
I am using CC2541.
Hello Light,
26 Bytes is the maximum for you your application. and in addition to that you need 11 bytes of overhead so that you end up at a total of 37 Bytes. In addition to that you will also send more bytes over the air such as preamble, sync word and CRC bytes.
Below you can see the payload structure when using maximum packet size allowed for BLE packets:
Name |
Bit(s) |
Value |
Comment |
|
Header |
PDU Type |
4 |
0b0010 |
ADV_NONCONN_IND |
RFU |
2 |
0 |
Reserved for future use, don’t care |
|
TxADD |
1 |
0 |
Don’t care |
|
RxADD |
1 |
0 |
Don’t care |
|
Length |
6 |
0b100110 |
37 Bytes (AdvA + AdvData) |
|
RFU |
2 |
0 |
Reserved for future use, don’t care |
|
Payload |
AdvA |
6 x 8 |
0xXXXXXXXXXXXX |
Address |
AdvData |
31 x 8 |
Vary.. |
Data, Format TBD |
AdvData
AD Type |
Value |
|
Flags |
0x02 |
Length of next Data (3 Byte) |
0x01 |
Type Flag |
|
0x04 |
BR/EDR Not Supported |
|
Manufacturer Specific Data |
0x1B |
Length of next Data (27 Byte) |
0xFF |
Type “Manufacturer Specific Data” |
|
0xXX .. XX |
26 Byte of Application Data |