DWM3001CDK Fira BPRF3 ranging not working

Hi

I’ve got two DWM3001CDK boards and trying to configure them with BPRF set 3 (SP1) using “initf 3” and “respf 3”. But both devices are returning errors.

They do work in other modes such as BPRF set 4 using “initf 4” and “respf 4”.

The software I am using is from from the DWM3001C page - DWM3000 API Software and API Guide 08/2022.

Can anyone verify if these modes are working out of the box?

Regards
Ryan

I think they should not work, because initf/respf referred to the “deferred ds-twr” as specked in fira. In that mode the ranging frames are always either Bprf 4 (sfd 4z) or bprf 6 (sfd 4a).

Thanks alliv. However, in the sample code there is an option for using bprf3 with a proprietary format. Also, bprf1 and bprf 2 (sp0) both work.

/* uwb_stack version >8.x.x allows usage of SP1 RFRAMES on Deferred DS-TWR to transmit IoT data.

  • This mode is not specified in FiRa MAC 1.2, i.e. proprietary implementation.
  • In this mode both Initiator and Responder can form RFRAMES with proprietary PIE.
  • Maximum IoT data excahnge limited to approx 70 bytes bidirectional per TWR.
  • uwb_stack encrypts and guarantee the integrity of the packet, however the flow control, and
  • retransmission shall be implemented on the upper layer.
    */
    #define PROPRIETARY_SP1_TWR_EXAMPLE_ENABLE (1)

// Send sp1 data;
if (fira_param->session.rframe_config == FIRA_RFRAME_CONFIG_SP1)
{
#if (PROPRIETARY_SP1_TWR_EXAMPLE_ENABLE == 1)
diag_printf(“Sending initial TWR data\r\n”);
r = fira_helper_send_data(&fira_ctx, session_id, &data_params);
assert(r == UWBMAC_SUCCESS);
#else
assert(0); /* PROPRIETARY_SP1_TWR_EXAMPLE_ENABLE not allowed */
#endif