Multiple DWM1001-Devs cannot find eachother

Hello!
I am working on an indoors positioning system for a drone.
I have bought 4 DWM1001-Dev for prototyping it, and I’m exploring how they work. I slapped a connector on them and I’m using a Raspberry 3 to configure them. I uploaded the latest firmware (v2) and set to work.
This is my current setup:
They are all on same network (using the “nis” command via - in my case nis 0x1234 ).
1 is an Anchor Initiator (setup with acas true false false true true 2 false).
2 are normal Anchors (setup with acas false false false true true 2 false).
1 is Tag (setup with nmt)

The problem I’m encountering is that none of the devices are visible on the android app, nor can they find eachother(checking with LA and LB). Does anyone have any suggestions on what I’m doing wrong?
Also, is there a minimum anchor distance requirement? I couldn’t find anything in the documentation.
Thank you!

Hi Stephano,

Can you send the output of si command from each anchors ?

Thanks
Yves

@Yves_Bernard
Tag:
dwm> si
[000069.680 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000069.680 INF] uwb0: panid=x1234 addr=xDECAB12D50B51286
[000069.690 INF] mode: bn (act,-)
[000069.690 INF] uwbmac: disconnected
[000069.690 INF] enc: off
[000069.700 INF] ble: addr=D7:EA:BE:9D:6B:6C

Anchor 1
dwm> si
[000009.090 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000009.090 INF] uwb0: panid=x1234 addr=xDECA167A8F15CAA2
[000009.100 INF] mode: bn (act,-)
[000009.100 INF] uwbmac: disconnected
[000009.100 INF] enc: off
[000009.110 INF] ble: addr=DC:8D:50:03:1E:90

Anchor 2:
dwm> si
[000011.290 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000011.290 INF] uwb0: panid=x1234 addr=xDECAC248FCD259B1
[000011.300 INF] mode: bn (act,-)
[000011.300 INF] uwbmac: disconnected
[000011.300 INF] enc: off
[000011.310 INF] ble: addr=E5:E3:95:E5:9A:DB

Anchor 3:

dwm> si
[000007.440 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000007.440 INF] uwb0: panid=x1234 addr=xDECAE320B53510BB
[000007.450 INF] mode: bn (act,-)
[000007.450 INF] uwbmac: disconnected
[000007.450 INF] enc: off
[000007.460 INF] ble: addr=CE:24:22:B5:A2:CC

I just noticed that using the acas and nmt commands do not change the “mode” - is this supposed to be happening?

Hi Stephano,

The issue is that your nodes are set as bridge node and not anchor.

Can you try the following command on the initiator:
acas 1 0 0 1 1 2 0

And this command on the anchors:
acas 0 0 0 1 1 2 0

Perform a reset after using the commands (with reset uart-shell command)

Thanks
Yves

@Yves_Bernard

Initiator:

dwm> acas 1 0 0 1 1 2 0
acas: ok
dwm> reset
DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> si
[000007.830 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000007.830 INF] uwb0: panid=x1234 addr=xDECA167A8F15CAA2
[000007.840 INF] mode: bn (act,-)
[000007.840 INF] uwbmac: disconnected
[000007.840 INF] enc: off
[000007.850 INF] ble: addr=DC:8D:50:03:1E:90

Anchor 2:
dwm> acas 0 0 0 1 1 2 0
acas: ok
dwm> reset

DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> si
[000010.270 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000010.270 INF] uwb0: panid=x1234 addr=xDECAC248FCD259B1
[000010.280 INF] mode: an (act,-)
[000010.280 INF] uwbmac: disconnected
[000010.280 INF] uwbmac: bh disconnected
[000010.290 INF] cfg: sync=0 fwup=0 ble=1 leds=1 init=0 upd_rate_stat=120 label=DW59B1
[000010.290 INF] enc: off
[000010.300 INF] ble: addr=E5:E3:95:E5:9A:DB

Anchor 3:
dwm> acas 0 0 0 1 1 2 0
acas: ok
dwm> reset

DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> si
[000008.590 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000008.590 INF] uwb0: panid=x0000 addr=xDECAE320B53510BB
[000008.600 INF] mode: an (act,-)
[000008.600 INF] uwbmac: disconnected
[000008.600 INF] uwbmac: bh disconnected
[000008.610 INF] cfg: sync=0 fwup=0 ble=1 leds=1 init=0 upd_rate_stat=120 label=DW10BB
[000008.610 INF] enc: off
[000008.620 INF] ble: addr=CE:24:22:B5:A2:CC

After these commands, the DW1001 tags blink slowly, which I believe indicates that they can’t find any other device. Using LB on the tag also returns no result.
Where can I find a human-readable version of the modes and the options in the () ?

There is an issue with the initiator:

dwm> acas 1 0 0 1 1 2 0
acas: ok
dwm> reset
DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> si
[000007.830 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000007.830 INF] uwb0: panid=x1234 addr=xDECA167A8F15CAA2
[000007.840 INF] mode: bn (act,-)
[000007.840 INF] uwbmac: disconnected
[000007.840 INF] enc: off
[000007.850 INF] ble: addr=DC:8D:50:03:1E:90

Do you have any node on a raspberry pi with the gateway image ? If yes that’s not correct, the raspberry pi will force the device to act as a bridge node.

You currently have no initiator within the network that’s why nodes cannot join. The initiator is in charge of initiating and maintaining the network.

Let me know how it goes
Yves

@Yves_Bernard
Just before reading your message, I was testing by re-imaging the devices and I managed to configure them successfully by using the android app - and I also discovered that attaching them to the raspberry pi automatically reconfigures the devices as gateways. This was the problem causing all of this, as I was configuring them through the rasp.
Is there no way to avoid this? I am using my raspberry to control the drone, so it is necessary for it to somehow connect to the DWM1001.

Hi Stefano,

In that case do not use the image we provide on the rasperry pi.

This image should be used only for a raspberry pi connected to a node meant to be a bridge node.

You can use any official image on the raspberry pi and you will be able to interface with the node configured as an anchor.

What is your exact design ? The tag is on the drone and use the anchors as reference points ?

Thanks
Yves

1 Like

@Yves_Bernard
Thank you! I thought it was a feature of the DWM1001 and not of the Raspberry image. I uploaded a new image and I was able to get it working!
My design is as you say, tag on drone and anchors as reference points.

In short: using the provided raspberry image will automatically configure connected DWM1001 as gateways.

Hi Stefano,

the default Raspberry Pi image for PANS takes control of the modules by installing the Kernel Module, DWM Daemon and DWM Proxy.

You can disable them temporary using the following commands:
$ sudo /etc/init.d/dwm1001-proxy stop
$ sudo /etc/init.d/dwm1001 stop
$ sudo rmmod dwm

To disable permanently see service(8), update-rc.d(8) and /etc/modules.

Cheers,
TDK

1 Like

Hi there

I am having the same issue as Stefano where I cannot get the DWM1001 to talk to each other. To start with I am using Putty to send shell commands through the J-link.

I set one as an Anchor Initiator acas <1 0 0 1 1 2 0>

I set the other as a normal anchor acas <0 0 0 1 1 2> 0

nis command is nis <0x1234>

I then reset it and check the system info and this is the result.

ANCHOR INITIATOR

DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> nis <0x1234>
nis: ok
dwm> acas <1 0 0 1 1 2 0>
acas: ok
dwm> reset
reset: Command not found.
dwm> reset

DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> si
[000021.050 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000021.050 INF] uwb0: panid=x0000 addr=xDECACE316392DAB9
[000021.060 INF] mode: an (act,-)
[000021.060 INF] uwbmac: disconnected
[000021.060 INF] uwbmac: bh disconnected
[000021.070 INF] cfg: sync=0 fwup=0 ble=1 leds=1 init=0 upd_rate_stat=120 label=DWDAB9
[000021.070 INF] enc: off
[000021.080 INF] ble: addr=EB:66:5A:8E:BD:71
dwm> la
[000031.730 INF] AN: cnt=0 seq=xFF
[000031.730 INF]
dwm>

ANCHOR 1

DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> nis <0x1234>
nis: ok
dwm> acas <0 0 0 1 1 2 0>
acas: ok
dwm> reset

DWM1001 TWR Real Time Location System

Copyright : 2016-2019 LEAPS and Decawave
License : Please visit https://decawave.com/dwm1001_license
Compiled : Mar 27 2019 03:35:59

Help : ? or help

dwm> si
[000004.490 INF] sys: fw2 fw_ver=x01030001 cfg_ver=x00010700
[000004.490 INF] uwb0: panid=x0000 addr=xDECAA34E1AA3D8B7
[000004.500 INF] mode: an (act,-)
[000004.500 INF] uwbmac: disconnected
[000004.500 INF] uwbmac: bh disconnected
[000004.510 INF] cfg: sync=0 fwup=0 ble=1 leds=1 init=0 upd_rate_stat=120 label=DWD8B7
[000004.510 INF] enc: off
[000004.520 INF] ble: addr=D5:7B:C7:B3:A4:A1
dwm> la
[000021.090 INF] AN: cnt=0 seq=xFF
[000021.090 INF]
dwm>

Any help would be appreciated, cheers,

Macgregor

Hi MacGregor,
In my case the problem was caused by me using the provided raspberry pi image. What are you using to interface with the decawave?
Can you detect them with your phone?

Hi Stefano

I am just using the USB connection they provided with the board and plugging it straight to my laptop. I am then using putty to send and receive commands/data. I am able to receive acceleration data (although the readings are pretty funky, I am getting numbers like 16000, what units is it meant to be in?) I am just not able to get the boards to talk to each other yet.
Yes my phone is able to detect their Bluetooth but it wont let me connect although I haven’t yet put any thought into this.

Cheers

So I noticed that because I had been sending the nis command like this: nis <0x01234> instead of this: nis 0x1234 it wasnt actually setting the address to x1234, I have fixed this but they still will not connect to each other.

It works! As it turned out the above comment I made was true for all commands I was using. As soon as i removed the <> from the command, used the correct commands, and reset the boards afterwards, I was able to create a tag that would give me distances to the tags by using the les command. Now onto UART and SPI!