dwm_loc_get API on anchor DWM1001-DEV

I don’t understand well what the response means for dwm_loc_get API on anchor.
For a tag it is clear, but for the anchor I don’t understand if the anchor measure it’s distance to the others like a tag does or if it takes the stored position. (At the moment I only have 2 modules and I can’t try it well)
Using this api on an anchor can I make a gateway like shown on the product brief?


It is not possible to get the position of a tag from an anchor. Anchors are not aware of the position tags in the system.

You may want to use a passive tag (“listener”) in order to build your gateway. It will report the position of all tags within its range.

Also note a gateway functionality will come with the release 2 of the software. It should be available in mid-Q2.

Thanks you,

I know that anchors are not aware of the position of the tags, that’s why I’m asking what that API return if asked to an anchor.

Which API should I use to make a listener and get the position of all tags? Just the position or even the distances?



If you use a tag in passive mode, then the command “LES” in shell mode will give you the coordinates of all tags in the networks.

The api to use to get location is dwm_loc_get.

Let me know how it goes,
Thank you,

Do I need shell mode? (At the moment I developed my system to use SPI)
Is “LES” equivalent to dwm_loc_get using SPI to communicate to a TAG in passive mode?
Thanks for the help

I’d say the shell mode over UART is a bit easier to use as it gives a “ready to use” listener. When used with a listener, LES is a command that will report location for each tags within UWB range.

You can look at getting the location with SPI and I’d say the [color=#333333][size=small]dwm_loc_get is the command to use. It will not give the exact same output as LES, you will need to do some post processing in your program.[/size][/color]


Ok, I have already developed the code to decode the TLV response and get all data, if the needed data are all there I will get them.

How can a TAG in passive mode get the position of other tags or anchor?

I have tested the dwm_loc_get command on listener and will not return tags positions. Actually there is no way how to read this positions via binary mode only via the shell les command.

The listener mode is working only with Anchor not TAG !


Now it’s very confusing and at the moment i don’t have enough devices to test that.

Shell mode works different from TLV mode via SPI/UART? Does it offer more functionalities?

To make a listener and to get the status (position or distances) of other tags, should I use a tag or an anchor?

TLV is probably better for a purely custom made application. Shell mode is much more user/human friendly.

A listener is a “passive” node, it can be be both anchor or tag as long as it is in passive mode.

As Drg mentioned, the quickest way to get position from a listener is to use the shell mode and the command “LES” or “LEC”. To enter the shell mode, send “\r” twice and wait for 1ms.

Then you can send the commands and will get position back from the device.

I would have assumed that the TLV mode was available on a passive tag but I’ve never tried it so I may have been wrong in my first recommendation. I’ll take a look at that when I have a chance.

Best regards

I’m currently waiting other modules from digi-key, they are out of stock now, so I can’t try anything.

What I want to clarify first is: does the SHELL mode offer more functionalities? Or are they the same of TLV mode modified to be more human friendly?

I don’t want to use SHELL mode since I’m developing a system which needs to manage those data.

When I’ll get my new modules I’ll let you know if I can do a listener.


I’m currently facing the same problem. I want to get the location data from the listener over UART or SPI.

Did you manage to get your listener working?

Best regards

As far as I tested, you can [color=#ff3366]ONLY[/color][color=#333333] [/color]get the other Tags location data in [color=#ff3333]UART Shell mode[/color].

Resurrecting this thread as it is exactly the same issue I have. According to the documentation, one can ask an anchor for the distances from tags ( https://www.decawave.com/dwm1001/api/ page 54, note “example 2, anchor mode”). But all attempts to get this data from an anchor result in the following:
40 01 00 41 0d 00 00 00 00 00 00 00 00 00 00 00 00 64 48 01 00. The last part is the part of interest: it claims it doesn’t see any. Is this a bug?

Hi David,

I think you have misunderstood the documentation.

When calling on the Tag: Tag’s position and distances from it (Tag) to the Anchors are returned.

When calling on the Anchor: Anchor’s position and distances from it (Anchor) to the surrounding Anchors are returned.