DW1000 Chip Not updating SYS_STATUS

Hello ,

I am trying to Send Some Packet on DW Radio but After that It’s Stucking in

while(1)
{
status_reg = dwt_read32bitreg(SYS_STATUS_ID);

if(status_reg & SYS_STATUS_TXFRS)
{
	tx_count++;
	printf("Frame:1 # : %d\r\n",tx_count);
				
		break;
   }

}

When I Debug , I got that DW1000 is not Setting SYS_STATUS_TXFRS Bit .

After StartTx in While() I am Getting SYS_STATUS_TXFRS as (0x00800072) means TXPHS | TXPRS | TXFRB bit is Getting Set But TXFRS bit is not Settting;

What could be the Issue ?

(In dwt_initialisation ) Any Configuration Like LDO tune any other Configuration Can give this Type Of Issue ? Or How to Resolve this ?

Thanks & Regards,
Hardik

I am using SPI Clock Rate 2MHz In all Operation , Will it Give any Trouble Here ?
Or Any Hardware Side Dependency is there in this Issue ?
What could Be the Issue , Can you help ?

Thanks & Regards,
Hardik

Hi
See User manual ection 7.2.17 Register file: 0x0F on TXFRS

The TX frame sent flag is set when DW1000 completes frame transmission. It can be cleared by writing 1 to the that bit in the status register, or by instructing another transmission.

If the TX flag does not get set, then you have some issues in the frame configuration and the DW1000 is not able to send a misconfigured/malformed frame and frame configuration. Please check that your SPI is working correctly.
Are you using our examples for example 1a/2a.
APS022 I sent you earlier would also describe this (section 5.4)
Regards
L

Hello DecaLeo,

I checked SPI and frame configuration , it correct only.

But i am using custom board where crystal trim and all initial parameter is used as a DWM1001 module.

Is that creating any issue here ?

Thanks ,
Hardik