DW1000 User Manual
© Decawave Ltd 2017
Version 2.12
Page 52 of 242
because the accumulation stops when any tap value grows to be a 16-bit number. This is typically when the
sending device is close to the receiver, but in any case the number reported has been sufficient for correct
reception of the frame being acknowledged, so even if this results in a shorter preamble for the auto-ACK
frame this preamble should still have ample length for correct reception.
NOTE 2: It is also possible for the Preamble Accumulation Count (reported in RXPACC) to be a little larger
than the transmitted preamble length. This can occur with early detection of preamble and because the
accumulation count may include accumulation that continues through the SFD (until the SFD is detected). If
this occurs it can result in the automatic acknowledgement frame being sent with a longer preamble than
the frame soliciting the ACK. In the worst case this will be one size bigger. Allowance for this fact should be
made when programming a shorter than default SFD detection timeout in
, e.g. set a time-out consistent with the next greater preamble size. And similarly if setting a
very tight time for the RX frame timeout (in
Register file: 0x0C – Receive Frame Wait Timeout Period
allowance should be made for the possible additional duration of the preamble sequence.
5.3.1.2 SFD Initialisation
The SFD sequence to be included in the Auto ACK frame must be initialised prior to the first Auto ACK frame
being sent. The SFD sequence is only initialised upon an user TX request which will not have taken place if
the Auto ACK frame is the first transmitted frame after start-up or reconfiguration of channel parameters.
The most efficient way to ensure the SFD sequence is correctly initialised is to simultaneously initiate and
abort a transmission thereby forcing the SFD initialisation. This can be done by writing to the the system
control register
Register file: 0x0D – System Control Register
with both the transmission startbit TXSTRT and
the transceiver off bit TRXOFF set at the same time. No signal will actually be transmitted as a result of this
operation. This operation should be performed each time the communication parameters are configured or
reconfigured as this can change the SFD sequence the DW1000 will use for the next transmission.
5.3.2 Automatic Receiver Re-Enable
Automatic acknowledgement can also operate correctly when the RX auto-re-enable function is enabled (by
the RXAUTR bit in
Register file: 0x04 – System Configuration
), as may be the case in double-buffered mode
(see section
). Here when frame filtering and automatic acknowledgements are
enabled, the DW1000 will automatically transition from receiving into transmit mode to send the
acknowledgement frame and when the transmission is complete, the DW1000 will automatically return into
receive mode to await the next frame.
5.3.3 Automatic ACK Turnaround Time
The IEEE 802.15.4 standard specifies a 12 /- 0.5 symbols turnaround time for ACK transmission. In
the DW1000 this period is configurable via the ACK_TIM parameter in
Register file: 0x1A – Acknowledgement
5.3.4 Frame Pending bit
The standard IEEE 802.15.4-2011 MAC includes a frame pending bit in the frame control at the start of each
frame (see section
). This bit can be set to indicate more data is coming or in the
case of the ACK frame to indicate that the responding node has data to send to the node soliciting the ACK.