Questions about Nordic Distance Measurement library sample

The hardware I use is nrf52840Dongle, using nrf_dm sample for development.
There are a few problems:


1. I have 8 devices, all within communication range, 4 as base stations and 3 as tags. The base station is the reflector, which is achieved by commenting this code:

//if (peer_supported_test(info->addr)) {

I want to let the tag be the initiator only。What do I need to change?


2. I found that the tag sometimes only tests with certain base stations, and I want to test the tag with each base station, so that the measurement data of the tag is relatively average. Is there any better implementation method?


3. Test the two boards separately, and find that the measurement data can be output once per second when the distance is close. When the distance becomes longer, the output data will become slower. What parameters do you need to change?


Looking forward to your reply.

Regards

Parents
  • Hi,
     I understand the parameters in this way, and I don't know if my understanding is correct.

    For multiple device measurements, is it a one-time synchronization followed by device by device measurements?

    I'm not sure TIMESLOT meant the pink arrow part or the blue arrow part.

  • Hi.

    1. I have 8 devices, all within communication range, 4 as base stations and 3 as tags. The base station is the reflector, which is achieved by commenting this code:

    //if (peer_supported_test(info->addr)) {

    I want to let the tag be the initiator only。What do I need to change?

    Have you looked at the documentation describing the nRF Distance Measurement sample and how to use the Distance Measurement Library?

    2. I found that the tag sometimes only tests with certain base stations, and I want to test the tag with each base station, so that the measurement data of the tag is relatively average. Is there any better implementation method?

    Is this what you figured out yourself?

    3. Test the two boards separately, and find that the measurement data can be output once per second when the distance is close. When the distance becomes longer, the output data will become slower. What parameters do you need to change?

    There are several parameters deciding how fast output will be ready. Distance is one of these parameters so it is natural that it requires more time as the distance increases. If you've set CONFIG_DM_HIGH_PRECISION_CALC=y and can sacrifice precision for a higher output data rate, you can set it =n, as described in CONFIG_DM_MIN_TIME_BETWEEN_TIMESLOTS_US.

    June11 said:

    For multiple device measurements, is it a one-time synchronization followed by device by device measurements?

    I'm not sure TIMESLOT meant the pink arrow part or the blue arrow part.

    Could you please point to the source of this figure?

    Best regards,
    Mathias

Reply
  • Hi.

    1. I have 8 devices, all within communication range, 4 as base stations and 3 as tags. The base station is the reflector, which is achieved by commenting this code:

    //if (peer_supported_test(info->addr)) {

    I want to let the tag be the initiator only。What do I need to change?

    Have you looked at the documentation describing the nRF Distance Measurement sample and how to use the Distance Measurement Library?

    2. I found that the tag sometimes only tests with certain base stations, and I want to test the tag with each base station, so that the measurement data of the tag is relatively average. Is there any better implementation method?

    Is this what you figured out yourself?

    3. Test the two boards separately, and find that the measurement data can be output once per second when the distance is close. When the distance becomes longer, the output data will become slower. What parameters do you need to change?

    There are several parameters deciding how fast output will be ready. Distance is one of these parameters so it is natural that it requires more time as the distance increases. If you've set CONFIG_DM_HIGH_PRECISION_CALC=y and can sacrifice precision for a higher output data rate, you can set it =n, as described in CONFIG_DM_MIN_TIME_BETWEEN_TIMESLOTS_US.

    June11 said:

    For multiple device measurements, is it a one-time synchronization followed by device by device measurements?

    I'm not sure TIMESLOT meant the pink arrow part or the blue arrow part.

    Could you please point to the source of this figure?

    Best regards,
    Mathias

Children
No Data
Related