Document

LoRaWAN® Fragmented Data Block Transport Specification v1.0.0

Issue link: https://read.uberflip.com/i/1428356

Contents of this Issue

Navigation

Page 8 of 29

LoRaWAN Fragmented Data Block Transport v1.0.0 Specification ©2018 LoRa Alliance™ Page 9 of 30 The authors reserve the right to change specifications without notice. 212 FragSize (fragment size) is the size in byte of each fragment. The data block size is 213 therefore NbFrag x FragSize 214 215 Control consists of 2 fields 216 217 Control Fields RFU FragAlgo BlockAckDelay Size (bits) 2bits 3bits 3bits Table 5: FragSessionSetupReq Control field 218 219 FragAlgo encodes the type of fragmentation algorithm used. This parameter is simply 220 passed to the fragmentation algorithm. FragAlgo 0 corresponds to FEC fragmentation 221 described in Appendix "data block fragmentation forward error correction code proposal". 222 223 BlockAckDelay encodes the amplitude of the random delay that end-devices have to wait 224 between the reception of a downlink command sent using multicast and the transmission of 225 their answer. This parameter is a function of the group size and the geographic spread and 226 is used to avoid too many collisions on the uplink due to many end-devices simultaneously 227 answering the same command. The actual delay SHALL be (). 2 +4 seconds 228 where () is a random number in the [0:1] interval. 229 230 Padding: The binary data block size may not be a multiple of FragSize. Therefore, some 231 padding bytes MUST be added to fill the last fragment. This field encodes the number of 232 padding byte used. Once the data block has been reconstructed by the receiver, it SHALL 233 remove the last "padding" bytes in order to get the original binary file. 234 235 Descriptor: The descriptor field is a freely allocated 4 bytes field describing the file that is 236 going to be transported through the fragmentation session. For example, this field MAY be 237 used by the end-device to decide where to store the defragmented file, how to treat it once 238 received, etc... If the file transported is a FUOTA binary image, this field might encode the 239 version of the firmware transported to allow end-device side compatibility verifications. The 240 encoding of this field is application specific. 241 242 The end-device answers with a FragSessionSetupAns message with the following payload 243 244 FragSessionSetupAns payload StatusBitMask Size (bytes) 1 Table 6: FragSessionSetupAns 245 246 247 Bits 7:6 5:4 3 2 1 0 Status bits FragIndex RFU Wrong Descriptor FragSession index not supported Not enough Memory Encoding unsupported Table 7: FragSessionSetupAns StatusBitMask field 248 If any of the bits [0:3] is set to 1 the FragSessionSetup command was not accepted. 249 250 If a FragSessionSetupReq command with a FragIndex field corresponding to an already 251 existing fragmentation session is received, the context of this session is cleared, and a new 252 session is setup with the parameters of the new FragSesisonSetupReq command. 253

Articles in this issue

view archives of Document - LoRaWAN® Fragmented Data Block Transport Specification v1.0.0