This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AWR1843: TX Phase shift control

Part Number: AWR1843

We want to use TX phase shift on AWR1843. In the picture attached is a part of rl_sensor.h from mmwave SDK 03_02_00_04.

It says that phase shift value for all TX antennas is 8bit data. Is it signed or unsigned value? I suppose phase shift goes from -90 to 90 possibly.

I understand you used it for AWR1243P but it says that can be used for AWR1843 with txPhaseShifter field in profile Config.

As it is described in document: http://www.ti.com/lit/ug/tiduen5/tiduen5.pdf Imaging Radar Using Cascaded mmWave Sensor Reference Design (pages 12/13)

it says that when 2*lambda is between TX antennas, we have 0, 4pi*sin(theta), 8pi*sin(theta),... and that is clear. But is not clear for example how 32*pi*sin(theta) will be written into 8bit register.

( Unless you subtract n*360 ? )

TX0:  0 is written in register of first TX antenna.

TX1:  4pi*sin(theta) and theta = 30deg in register we need to write: integer(4pi*sin(30) * 180/pi / 5.625 = 64), 64 is written in register of second TX antenna?

TX2:  8pi*sin(theta) and theta = 30deg in register we need to write: integer(8pi*sin(60) * 180/pi / 5.625 = 221), 221 is written in register of third TX antenna?

What about negative angle for beam steering? If we want for example -45 degrees, 4pi*sin(theta) and 8pi*sin(theta) are negative, what to do then?

Short explanation about data formats should be a good answer to the question.

Regards,

Predrag

  • Hi,


    The Phase Shifters in the AWR1243P and AWR1843 are 6-bit phase shifters, with each code corresponding to a phase shift of 5.625 degrees (or 360/2^6). The values are unsigned, and the phase shift goes from 0 to 354.375 degrees in steps of 5.625 degrees.

    Beam steering is achieved by appropriate configuration of the phase shifters. Phase rolls over at 360.

    Negative values of theta would still result in a phase shifter setting between 0 and 360 degrees for each TX.

    Best Regards,

    Anand

  • Hi Anand,

    Thank you for your answer. If I understand you correctly can you confirm that this calculation is OK for d_tx = 2*lambda:

    1. We want +35 degrees beam steer: tx0 goes 0, tx1 goes uint( ( (4pi * sin(35) * 180 / pi) - n * 360) / 5.625) = 9,  tx2 goes 18 

    1. We want -35 degrees beam steer:  tx0 goes 0, tx1 goes uint( ( (4pi * sin(-35) * 180 / pi) + n * 360) / 5.625) =  55,  tx2 goes 46 (2*55 mod 64)?

    As I understood correctly, maximum value to write into register is 63, for phase=354.375deg / 5.625, so I need to go from 110 to 46?

    Because in profileCfg we need to specify phase values we are writing to the register: tx2_value*256*256 + tx1_value*256 + tx0_value.

    (+- n * 360 is done for going back to [0,2pi) )

    Regards,

    Predrag

  • Hi Predrag,

    Your understanding is correct.

    Best Regards,

    Anand