Put the MDBT42Q in absolute low power mode

Posted on
  • Hi,

    I have checked into the power consumption of the Espruino and discovered that it consumes around 5 µA at its lowest.
    This is not the lowest power consumption mode given by the MDBT42Q datasheet which shows that is can go even below 1 µA in some cases.
    On the nrf5 SDK this mode corresponds to the SD_POWER_SYSTEM_OFF which almost turns off the device and only wakes it on GPIO input or reset.
    Is there a way to activate this mode using your programming interface ? Or is there a way to maybe add this function in a custom firmware?
    What would be the bast starting point to implement this ?

    Thanks in advance for your help !
    Kind regards,

    Thomas

  • Is there a way to activate this mode using your programming interface ?

    There's nothing exposed directly, no, but I guess it may be possible to force it just by poking registers (normally you'd send the request through the softdevice).

    The issue is that if you want to turn the system off you'd also have to configure ways to turn it back on, and that could potentially get quite complex. Once you're at the 5uA level even things like capacitor choice is going to have a big effect on power usage, so I figured it wasn't worth that effort.

    However, if you wanted to add something in a custom firmware you could look at what we do for Bangle.js where it is implemented (https://github.com/espruino/Espruino/blob/b01e9d814a748349a05bce9666b6e18d035dc850/libs/banglejs/jswrap_bangle.c#L4564) - it's literally just a call to sd_power_system_off but you've got to be careful to disable anything that might be using powerbeforehand.

    I'm not against adding an NRF.off function but I think if it's just a call to sd_power_system_off you're going to have to be super careful with it to actually get the lowest power consumption.

  • Hi Gordon,

    Thank you so much for your answer.
    I understand that getting to the very low consumption modes require extra care, even on how the rest of the components behave, and also understand the choice of not having implemented it.

    I will have a look at the link you sent about the Bangle.js and see if I can try to implement it myself.

    Thanks again,

    Thomas

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Put the MDBT42Q in absolute low power mode

Posted by Avatar for user142699 @user142699

Actions