distance tool box - IQ data and hopping sequence

Hi,

I am trying to get IQ data from nrf_dm_iq_tones_t and hopping sequence from nrf_dm_get_hopping_sequence with some clues from  RE: Using proprietary ranging stack instead of nordic distance toolbox 

I can see data but when I sort the data with frequency index, it doesn't seem to be linear for both local and remote.

Here are some questions.

1. The IQ data array size is 80 and the hopping sequence array size is 75 then how can I match them?

I saw the first 4 values and the last value of IQ data are always 0 so I assume that the 75 hopping sequence fits 5th ~79th data of IQ data, is that correct?

2. "55 57 44 17 40 51 22 68 16 9 56 27 18 64 25 75 53 14 67 19 63 23 65 77 7 13 46 50 48 43 38 11 62 28 31 10 24 70 4 34 59 66 73 39 41 15 20 76 6 21 49 8 72 35 71 12 36 30 45 78 32 60 26 29 74 42 54 37 61 52 58 5 33 69 47"
 This is one example of the hopping sequence index and it seems that each device keeps using always same sequence even after reboot. Is that correct or do I need to do something more to get right values?
Thank you.
Parents
  • Hello,

    Unfortunately I will have to get back to you on this after the Holidays.

    Regards,

    Elfving

  • Hello again, and thank you for your patience over the Holidays.

    1. The IQ data array size is 80 and the hopping sequence array size is 75 then how can I match them?

    As you've correctly deduced, channels 0-3 and 79 are not used and reported as 0. The IQ data is reported ordered, meaning the each entry in the array is reporting the corresponding frequency (2400 + index MHz). The first measurement that is reported at index 4 corresponds to 2404 MHz and the last one that is reported at index 78 corresponds to 2478 MHz. We used to use all of the 80 frequencies 2400, 2401, ..., 2479 MHz and is the reason for why the size of the IQ data array is 80. The data is not reported in the order of the hopping sequence but in order of ascending frequency.

     This is one example of the hopping sequence index and it seems that each device keeps using always same sequence even after reboot.

    The hopping sequence changes when the seed changes which should be the case for every ranging. We used to have a bug in the sample where the hopping sequence was always the same, which might be what you are experiencing. This is fixed on the main branch or the latest release.

    Regards,

    Elfving

Reply
  • Hello again, and thank you for your patience over the Holidays.

    1. The IQ data array size is 80 and the hopping sequence array size is 75 then how can I match them?

    As you've correctly deduced, channels 0-3 and 79 are not used and reported as 0. The IQ data is reported ordered, meaning the each entry in the array is reporting the corresponding frequency (2400 + index MHz). The first measurement that is reported at index 4 corresponds to 2404 MHz and the last one that is reported at index 78 corresponds to 2478 MHz. We used to use all of the 80 frequencies 2400, 2401, ..., 2479 MHz and is the reason for why the size of the IQ data array is 80. The data is not reported in the order of the hopping sequence but in order of ascending frequency.

     This is one example of the hopping sequence index and it seems that each device keeps using always same sequence even after reboot.

    The hopping sequence changes when the seed changes which should be the case for every ranging. We used to have a bug in the sample where the hopping sequence was always the same, which might be what you are experiencing. This is fixed on the main branch or the latest release.

    Regards,

    Elfving

Children
No Data
Related