I can't use Sleep Mod with DWM1001 Dev? I need Help...

Hi everybody,
I have DWM1001 Dev. ( link: www.decawave.com/products/dwm1001-dev )
and
I use to Github example ( link: https://github.com/Decawave/dwm1001-examples )

Init DWM1001 (name: Anchor) and Res DWM1001 (name: Tag)

So I want to Anchor calculator Distance and 1 second sleep. this is loop.

Example:
Anchor Calculate Distance (example: 127 cm)
Module Sleep 1 seconds (I need power efficient)
Anchor Calculate Distance (example: 132 cm)
Module Sleep 1 seconds (I need power efficient)
Anchor Calculate Distance (example: 115 cm)
Module Sleep 1 seconds (I need power efficient)
Anchor Calculate Distance (example: 130 cm)
Module Sleep 1 seconds (I need power efficient)


but I cant use to Sleep. I Need Helping… :frowning:
I don’t know use to sleep mode with Github Example files.

Thank you for reply…

You will need to refer to the Nordic SDK and port over the sleep mode example.
Also note that the DEV board needs a few solder bridges opened in order to remove the ~12mA used by the Segger J-Link-OB.
Of course then you will have no J-Link OB so maybe one of your last steps.
Good luck,
Ken

I can’t… Can you send me code?
DMW1000 is sleeping. No problem… But NRF is not sleep. :frowning: I can’t.

I think you mean DW1000 chip, correct?

Below is the code I used to put entire DVM1001 to sleep (even including MEMS, which is actually some overkill due to negligible MEMS consumption).
All the functions are from API, power consumption was less than 2uA.
But if you want NRF to wake up every second, code should be much more complicated - you should setup some timer to interrupt/wake up MCU and do something to ensure this interrupt does wake up the MCU core.
Moreover, you have to wake up DW1000 manually and set up it properly - see call to dwt_configuresleep in the code below.
I didn’t need this functionality, sorry, so you are to discover it on your own, example below is the good starting point IMHO.

[code] vLIS2_PowerDown();

    dwt_configuresleep( DWT_PRESRV_SLEEP | DWT_LOADEUI, DWT_WAKE_WK | DWT_WAKE_CS | DWT_SLP_EN);

    dwt_entersleep();

    // infinite loop if we accidentally are woken up
    do {
        // completely turn off MCU
        nrf_pwr_mgmt_shutdown(NRF_PWR_MGMT_SHUTDOWN_GOTO_SYSOFF);
    } while(1);    [/code]