Report azimuth and elevation to DWM3000

Hi everyone.

I am trying to achieve Nearby Interaction using DWM3001CDK and iPhone 11, and to be able to check the azimuth and elevation obtained through communication with DWM3001CDK.
The FW is “Qorvo_Apple_Nearby_Interaction_1.0.0”.
I expected the obtained angles to be stored in “remote_aoa_azimuth_2pi” and “remote_aoa_azimuth_2pi”, but the displayed values were always 0.
Is there any good way to be able to check it with DWM3001CDK?
I would be so appreciate if someone give some help.

Hi @Neuse ,

This is expected, because DWM3001CDK has only one antenna and then It cannot calculate aoa.
You need QM33120W, to be able to calculate aoa.
https://www.qorvo.com/products/p/QM33120WDK1

Hi @Wassim_Qorvo ,
Thank you for your reply.
I understand that QM33120W is required. I will consider using QM33120W+nRF52840.

  1. Is it possible to display the azimuth and elevation even if the FW is set to “Qorvo_Apple_Nearby_Interaction_1.0.0”?
  2. If it can be displayed, is there a need to change the parameters? I am concerned that the following parameters are suspicious.
    Nearby_param

There was a typo, so I’ll correct it.

I expected the obtained angles to be stored in “remote_aoa_azimuth_2pi” and “remote_aoa_azimuth_2pi”, but the displayed values were always 0.

I expected the obtained angles to be stored in “remote_aoa_azimuth_2pi” and “remote_aoa_elevation_pi”, but the displayed values were always 0.

I set the antenna parameters as shown below and programmed printf to display local_aoa_measurements and remote azimuth and elevation.
Nearby_anntenaParam
Nearby_printf

But the displayed azimuth and elevation values were always 0.

Nearby_debug

  1. Could you please explain the antenna parameters in detail? There is an explanation in “fira_helper.h”, but I don’t understand it well.
  2. Are there any parameters in printf where the azimuth and elevation values are stored? If not, please let me know where it is stored.

I just want to be able to check the azimuth and elevation information displayed on the iPhone on the board side.
Thank you.

Hi @Neuse ,

First I would suggest for you to update your QNI SDK (to the last relase 3.1.0) from the website: https://www.qorvo.com/products/d/da008212

QM33120 has 2 antenna, and only one receiver switching inside the frame to give PdoA (or azimuth).
It’s not possible to have the elevation in this case, as you’ll need another receiver.
So, it’s normal to have only azimuth.
See output below, of QM33120 running QNI 3.1.0:

Hi @Wassim_Qorvo ,

I understood that the QM33120 requires one more receiver, so elevation cannot be obtained.
But iPhone is getting both azimuth and elevation. Is it possible to share the azimuth and elevation acquired by the iPhone to the QM33120?

According to “Qorvo_Nearby_Interaction_Accessory_Developer_Guide_3.1.0”, after the UWB message sequence sends the final message of SP3, “Measurement Report” and “Ranging Result Report Message” are performed in SP0.

Similar to this figure, I am experimenting with QM33120 as “Initiator” and iPhone as “Responder”.
Is the azimuth and elevation displayed on the iPhone not sent via “Ranging Result Report Message”? If it is sent, please let me know in which parameter it will be stored. If not, please tell me how to send azimuth and elevation.

I just want to be able to check the azimuth and elevation information displayed on the iPhone with the QM33120.
Thank you.

Hi @Neuse !

It seems that the iPhone doesn’t send the Ranging Result Report Message or doesn’t include directions.
The only way that I see to have azimuth (or elevation) in a non-PDoA device is to send it from the iPhone via BLE.
If you have a MacOS machine you can modify both embedded and iOS apps to include a new message to be sent from the iPhone to the Qorvo device including the info you need.

Kind regards!

Hi @carlos.silva ,
I’m surprised that there is no angle information in the Ranging Result Report Message.
Since there is a speed problem when using BLE, I would like to suggest a method of sending from the iPhone via UWB. The method is to send a message containing azimuth (or elevation) from the iPhone after the Ranging Session.
Which task and after which function should I place the function that receives messages on QM33120?
Thank you.

Hi @Neuse !

What can be done with UWB is limited to what Apple makes available in their NI API, so not much we can do here.

To do this via BLE you will have to add new messages to the User part of the message IDs.
On the iOS side, you can send a new message every time new data is available, from the NISessionDelegate “didUpdate” handler.

On the device side, look for the function “handle_new_data()” in ble_niq.c, where all BLE messages are handled, you’ll need to include a case for your new message.

Kind regards!

1 Like