Very high DWM1001 current consumption in OFF+SLEEP mode

Hello,
I would like to know how to minimize the current consumption of a tag when is out of reach of its UWB network (for example, when the tags is out of the office).

In this case, it seems that the tag wakes up each 60 s and tries to connect to its UWB network during about 0,5 s. So, it gives to me about 1.3 mA on average.

As we would like to reduce this current (when the tag is far away from the network), we tried to put the tag in OFF mode. In this state it shouldn’t try to connect to any UWB network, and it is what indeep happen. We follow this process:
1.- put the tag in Off mode
2.- put the tag to sleep
3.- RESET
However, we have seen that the current in this state (off+sleep), the current is quite big, more than 0.275 mA, which is much more than the tag is deep sleep (about 0.015 A).

Are these measurements correct? Are we doing something wrong?

We wait for any answer…

Thank you and best regards

Epenciso

What firmware do you use, PANS R2? Can you describe the hardware you are using and changing the configuration - via s/w or terminal window if using PANS?

Thank you for your reply, Kenneth

Yes, we are using PANS R2 and commands are sent via UART using PANS API.

Please, note the state and current consumption changes in the attached image. After Off comand and reset, the tag consumption is about 280uA.
Is there any way to reduce it?
We wait for your feedback, thank you again
Epenciso

Hi epenciso,

Just a question, do you keep BLE active on the tag and anchors ? Or do you need AES (which requires ble off) ?

If you can keep the BLE, then I would expect that when leaving the network, the tag will only perform BLE scan every 60s to look for anchors which is much more efficient in term of power.

Thank you,
Yves

Hi Yves, thank you for your reply

1.- This is what we observe is BLE is enabled and the tag is ACTIVE, and the tag is out of UWB or BLE range:

There is still a base current of more than 400uA, and the time the BLE spends looking for any other module seems to large, so average current is again in the order of 1mA.

2.- When the tag is in OFF state, and BLE is enabled, there are no BLE attempts to look for anchors, but the base current is again about 400uA.

Are these measurements the expected ones?

Is there any way (by API commands) to reduce this consumption when the tag is out of the network reach? If negative, would it be possible that Decawave modifies the firmware to set the tag in real deep sleep mode when it is out of the network reach?

Other way, the only solution which I find is to use an external hardware control to power down the whole module, and this is one thing we want to avoid.

Thank you again
Epenciso

Hi Espenciso,

Are you doing anything specific in the user application ? Or are you not using it at all ?

Thank you,
Yves

No, just using PANS firmware DWM1001_PANS_R2.0.hex

Ok Epenciso, so jut to clarify how to you perform the following ?

1.- put the tag in Off mode
2.- put the tag to sleep

Thank you,
Yves

Hi Yves,

My objective is to have a tag in real low power when it leaves the network, i.e. when it is out of UWB and BLE range to any other node.

1.- So, I start with a tag in low power mode (not responsive) working correctly: 15uA base current line. BLE is enabled in the tag.
2.- Then, I cut the power to every other node on the network (initiator and anchors)
3.- In this situation, is when the tag shows this BLE activity, and the base line is 425uA:

As this base line is too high, I follow the next procedure:

1.- I start again with a tag in low power mode working correctly: 15uA.
2.- Then, I cut the power to every other node on the network
3.- I send via UART a wakeup byte
4.- I send an Offline command: 05 02 8C 00
5.- I send a sleep command: 0A 00
6.- Finnally I send a reset command: 14 00
7.- In this situation, the tag shows no BLE activity, but the base line is 280uA (as you can see in the image in my second post)

If I send an Off command and a sleep command as you stated in the last post, the tag will not be in real Offline state untill a reset command is sent.So, the state of the tag will be the same as if no Offline command was sent.

Any advice is wellcome

Best regards
Epenciso

So, there is no way to set a tag in low power when is out ot reach of the network (UWB and BLE)?

Minimum current, as measured by us, is 280uA, which much higher than the 12uA when the tag is linked to the network.

I think this is one situation that the FW should avoid in the next releases, as it forces us to use external hardware to power down the module when this happens.

Regards
Epenciso

Hi Epenciso,

Yes, it is not possible to put the module totally to sleep when it is out of the network. PANS is expected to work automatically so it needs a certain period to detect when the Tag is back in the network.

Thanks for your inputs, we will think of some suitable solution but putting it totally to Off by default would not fit well for all applications.

To solve the issue it would require a customization of PANS. If that would be an option for you please contact me via a private message.

Cheers,
TDK

Hi Leapslabs,
Thanks for the answer.

However, maybe I have not explained my self. We do not like to have the module totally Off. Also, we think it is quite useful to wake up the module at certain periods to lookfor a network.

What we find ‘extrange’ is to have a current consumption larger than 280uA in betweeen these BLE wakeup periods. After a poll period and before the next one, why is not able the module to stay in an sleep state similar to the sleep state in normal low power (when the module has 12uA of current consumption)???. This is our remark. Actually, we find this total nonsense…

Regards
Epenciso

Hi Epenciso,

that’s is strange then. I believe we have not seen a such issue. We will verify this and let you know.

Thanks,
TDK

Hello Epensico

I am working with UART communication of DWM module and successful in communicating it with ESP8266. The data transfer is not 100% reliable however , the DWM gives the POS output. I have “lep” command in shell mode. Furthermore , I am trying to put UWB module to deep sleep mode for some time and then wake it up using only UART. I am currently using PANS R2 firmware in the UWB. You have mentioned some commands for offline , sleep and reset commands. I am afraid , i didn’t understand it well. Can you please explain it further on how I can use ESP8266 UART to put DWM into deep sleep mode and then wake it up after sometime. I am stuck on this topic for some time now and unable to find useful information anywhere other than this post. I hope you will respond soon with a solution.

Regards

Hi Leapslabs,
Have you been able to test this issue?

Regards
Epenciso

Hi Epenciso,

apologies, I didn’t get into it yet. I will try to get back to you this week.

Regards,
TDK

Hi Rick,

I will try to respond you regarding the low power mode.

When the module is in Tag Low Power (i.e. Responsive Mode is Off), the firmware will be most of the time in deep sleep. It will wake up periodically at the update rate to do the measurement, then to generate an interrupt and to go back to deep sleep again.

On a such interrupt event you can wake up the module, read the data out and then issue a sleep command. The available interfaces to do this is via UART/SPI or on-module UserApplication using PANS library. If you do not issue the sleep command, the module will stay awake and consumes more energy. Please see the API documentation for more information: https://www.decawave.com/dwm1001/api/

Similarily when you enter shell, the module will be awake. In order to go to sleep you need to issue command “quit”.

Cheers,
TDK

Thanks for your help.
Currently I am following the below method to achieve my desired goal. However, I am 90% successful.
I am using the DWM1001 in shell mode. I am using commands “nmt” and “nmo” to turn on and off the DWM. I take the position data in between using "lep: command!.I can see that the current consumption is 1.5mA during the off mode!. Isn’t it supposed to be in the microamps level as said in the documentation?
I can see that the "nmo " command completely turns off the DWM.

Hope to get a response as soon as possible.

Regards

Hi Rick,

in nmo mode the module does not go to deep sleep. It only keeps the UWB in offline mode.
If you want to use Low Power you need to use nmtl and let it control the module automatically.

Cheers,
TDK

Hi Ric
You need to configure the tag as low power with command ‘nmtl’, and then, quit the shell console with command ‘quit’. If you leave the console oppened it will consume about 1mA. If you do not set the tag as low power, the consumption will be also very high.

You can also use the movile App to set the tag as low power: just disable the responsive mode

Regards
Epenciso

1 Like