Getting ranges to anchors on a MQTT topic on PANS 2

Hi,

Are the ranges to anchors submitted to a MQTT topic? I already had success accessing this data by the SPI API (dwm_loc_get) and by the UART API (using les or lec with the location engine disabled). I tried to disable the LE of a tag expecting the ranging values would be sent to dwm/node/<node_id>/uplink/location instead of the estimated pose.

Message received with LE disabled:

 {
  "position": {
    "x":"NaN",
    "y":"NaN",
    "z":"NaN",
    "quality":100 
  },
  "superFrameNumber":383
}

Hi Gustavo,

no, when the LE is disabled, the position is not calculated on board so that’s why you have got NaN.

To send the ranges you can write an application using the DWM library and send the ranges in the IOT user data to the MQTT Broker. The encoding of the data is up to you. Please refer to the Release 2 documentation for more information.

Cheers,
TDK

Thank you @leapslabs

I have some more doubts to ask if you don’t mind. In PANS 2.0, are the ranges sent in the UWB messages to the gateway or only the calculated location? If they are, can I build some code on the raspberry to extract those ranges and make my own MQTT message to publish?

If I understand correctly your answer, the ranges are NOT sent by the UWB and I have only some options to access them on my server:

  1. Connect some extra hardware on the tag to wire extract the ranges (SPI/UART) and send it by other wireless network (e.g. Wi-Fi)
  2. Load my own firmware on the tags that extract the ranges by the C API, and sent it by UWB via the IoT userdata field.

Is that correct?

I read on the documentation that the IoT userdata can send 34 Bytes per 12 seconds and it makes me confused. Can someone explain better what is the limits of the payloads and messages per second?

best regards,
Gustavo

Hi Gustavo,

yes, it’s correct that only the position is sent over UWB. You can use the two options as you have mentioned to send the ranges to the server.

The data on the tag can be sent at the same update rate as the position update rate, e.g. at 10 Hz. The 12s came probably from some text related with Anchors. The Anchor has fixed update rate of sending/receiving IOT data at 12s.

Cheers,
TDK