Hi all,

I've been looking further into this with the help of Will from Runtime. It
appears that the issue is (at least in part) due to the nRF HFXO being
enabled. After disabling the UART and TIMER_0 in the hello_world app, the
HFXO was still on. After looking through the hello_world app source code,
I'm fairly certain that the HFXO is not being turned on there. While
debugging I placed a breakpoint at the Reset_Handler and found that even at
that point, the HFXO was on. I believe, therefore, that the HFXO is being
turned on in the *bootloader*, and obviously remains on when the CPU starts
running the main application code. I'm starting to go through the
bootloader code to confirm this, but if so, I think it might be a good idea
to have a deinitialise function to turn off any peripherals used by the
bootloader just before it jumps to the main app code. That way, the
application code can start from a fresh slate.

Amr

On Thu, 5 Jul 2018 at 14:58, Amr Bekhit <[email protected]> wrote:

> Hello all,
>
> I've been experimenting with mynewt and the nRF52DK board trying to
> create a low power application. I've been working off the hello_world
> app since it is simple. By default, when running the hello_world app,
> the nRF52 consumes around 1.5mA. Disabling the UART (by settings
> UART_0: 0 and CONSOLE_UART: 0) reduces this current significantly to
> around 460uA. I've since been unable to significantly reduce this
> current even further. Disabling TIMER_0 causes a further reduction of
> about 15uA, but that's about it. Going through the nRF52832 product
> spec, pretty much all the peripherals are turned off by default. The
> only one that appears to be on is the radio, but setting
> NRF_RADIO->POWER to 0 doesn't seem to decrease the current
> consumption.
>
> According to the product spec, in System ON mode with all RAM
> retained, the nRF52 should consume around 1.5uA, so 460uA is quite a
> big difference. I can't think of what other peripherals could possibly
> be on that would consume all that current. As far as I can tell, the
> only peripherals turned on by the hello world app are the following:
> * A timer
> * Uart
> * Watchdog (turning that off didn't make a measurable difference,
> which makes sense considering it's meant to consume 300nA)
>
> If it's not peripherals, could this extra consumption be due to the
> CPU executing the mynewt OS? If so, how can I prove this?
>
> Amr
>

Reply via email to