What is the bear minimum to force a transmission?

I’ve been studying, and attempting to translate and otherwise run, various sample code, so far with no luck.

I know my basic SPI interactions are working. I can write and then read back various RW registers, so now I just need to kickstart the darn thing. I have two DWM1000s, ostensibly a transmitter/receiver pair, but for now I’m just trying to transmit and then confirm the four transmission status registers without even bothering to receive the message on the other device. Existing sample code, minimally translated to my controller of choice (PyBoard), is not working.

One thing I would like to know is, what is the absolute minimum amount of setup required, from a cold boot up, to get the DW1000 to actually transmit a message? Various sample codes go through a remarkable amount of setup and I can’t figure out which parts are actually required. I realize lots of fancy stuff is useful at a more advanced stage of use, but I need the absolute minimal set (the canonical Hello World) of DW1000 data transmission.

Should it be sufficient to simply write a string into 0x09 and then set the TXSTRT bit of 0x0D to trigger a transmit? Should I expect the TXFRS, TXPHS, TXPRS, and TXFRB bits of 0x0F to be set after performing those two commands, or is that simply not enough setup to get things going?

I realize the sample programs do a lot more than that, I’m not denying that fact. I just don’t know what the minimal set of commands is. Do I have to set the bandwidth, or is the default good enough (why wouldn’t the default be good enough)? Must I disable double buffered receiving in order to transmit or can I ignore that? Sample code does that, but it hardly seems necessary on the transmitter side. Is the default antenna delay good enough? Why would have I to override whatever default the chip boots up with? Do I have to set the reception/transmission delay in order to get an initial transmission to fire? I realize it’s a useful feature, but that isn’t my question at this time.

What is the absolutely minimum set of register writes required from a cold boot up to make the chip send a message and populate its four transmission status bits in 0x0F to prove that it actually sent a message?

Sorry for my frustration. Thank you for any assistance.

Hi Keith,
For the extreme bare minimum you can check for the default values set in the user manual, section 2.5 Default Configuration on Power Up.
These default setting are not optimised as you can read in the same section.
APU001 (attached) would be of a help. It tells about some Datasheet usecase.

Also the examples ex_01a_simple_tx / ex_02a_simple_rx would be of help. But do read the notes on the bottom in main.c to get it to work.

/Leo