UWB Frames Encapsulation

The full UWB frames contain various overhead fields which are appended as it goes from APP to PHY layer.

Sewio UWB frame encapsulation example from APP to PHY Layer

Briefly on the layers

Physical LayerPhysical layer. The lowest layer of the system. This layer knows nothing about the content of the transmitted frame. The only information that is given to this layer is the length of the frame and the frame itself as an array of data bytes. This frame is processed by a UWB transceiver.
MAC Layer

MAC layer ensures the successful transfer of the frame from point A to point B. So the following fields are used by this layer:

  • MAC_header

    • fcode - frame control field - it is used to determine what kind of UWB frame it is. Based on this field the individual nodes can decide whether to drop the packet or process it.

    • srcAddr - this field uniquely identifies the sender of the frame. This field may not be included in all UWB messages. In some cases, it is not important to know who sent the message

    • destAddr - the address of the node for which the message is intended. This field may not be included in all UWB messages.

    • seqNum - sequence number of the message. It is incremented modulo 256.

    • BC_num -number of BC_sequence. The tag sends the number of the last successful BC transaction. It is used by the Anchor to recognize if the tag receives the message, that was sent to the anchor by it.

    • BC_opt* - back-channel options. This field is sent only in back-channel data messages from Anchor to Tag. It contains optional parameters of back-channel behavior (immediate ACK etc.).

    • MAC_footer

      • CRC16 - cyclic redundancy check. Additional CRC to ensure consistency of the packet. (CRC is also added at the PHY layer, however, this is not enough ).

BC_opt[n]BC_opt[n-1]BC_opt[n-2]
n - this field contains lentgt of BC_opt parameters - it be extended in the futurenumber of ACK retransmissions after successful receive of back-channelimmediate AC
Presentation LayerThis layer act as a multiplexer. It takes the raw data from the frame and passes it to the specific application.
Application LayerThis is the top layer where the user payload is sent and received.

Let's continue with layer details here: