This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Nrf52811 AoA TX timing, does this require manual timing

Hello,

we are experimenting with the Nrf52811 CTE feature and have a few doubts concerning the documentation. We program our experiments with bare-metal (no soft device) register level configuration and base this development on the product specification.

Here are some questions I would like to understand better.

(1) Suppose I want to configure the radio for AoA TX, i.e.\ a device with a single antenna is sending a continuous tone and a receiver with several antennas switches while receiving the continuous tone. For modes like BLE 1mbit there is an END event at the same time as the CRC, but that is when the CTE comes in. Since we are AoA Tx, there is no switching going on,

but the continuous tone should be held as long as specified. So how is this supposed to be implemented: the observation is that after CRC the radio sends a 1, but there is no way to know when it should stop doing so. Of course, it could be implemented with a Timer and PPI: the END event starts a timer and a CC-event of the timer invokes the TXEND task. Is that what is supposed to be done?

Note that in AoD TX, one can observe the switching state to know when the switching sequences has finished, but that is not a very desirable thing to do. It works as follows: after TXStart, wait

for CTE switching state to be non-idle, then wait for it to be idle. That is unfortunately possible in software only and the CPU can do no useful work in this period.

(2) The documentation is not clear about the option of having CTE sampling within the payload. Does this mean that the payload should contain a sequence of 1 as data and in AoD TX the switching will occur during payload? Does this require to turn off whitening? Is there a relation with the delays specified in DFECTRL2?

(3) The documentation is not very clear concerning the parameter AGCBACKOFFGAIN of DFECTRL2. Could someone explain why it is there anyhow and what it actually does. Autogain control is nowhere mentioned in any Nordic documentation but here!

Thanks!

-- Peter

Related