DWS3000 dwt_readdiagnostics() sending 0 values

Hello everyone,

I want to get the power values of the first path index, i.e, the values of the registers from IP_DIAG_0 to 12 register bit values which give us the power magnitude and power indication. But I am always getting a value of zero (0) whenever I call the dwt_readdiagnostics() function.

I read in the user manual that the MINDIAG register has to be set to 0 from the default 1 value, to get the above prescribed values. I have changed the value in the program as well as changed it directly from the deca_val.h file. I am reading the value bit as 0 but still I am getting the values from IP_DIAG_0 to 12 as 0.

Can you please guide me in what exactly I am doing wrong or do some other steps have to be taken care of before. I am using two DWS3000 modules, the first module has dw_twr_initiator_sts.c and the other module has dw_twr_responder_sts.c program.

It will be a great help if you can guide me in this.

Thank you so much.

Hi @AviDhingra ,

Did you call the dwt_configciadiag(1) before.
This function is used to enable CIA diagnostic calculations in the IC during reception processing of frame.
You can find more details in the DW3XXX_Software_API_Guide.

Hope it helps,