Interface Powerdown

This note discusses an experimental (== unsupported) mbed interface firmware version which allows you to instruct it to power down. This has the effect of disconnecting the interface as a debugger and disabling the USB interface.

The semantics are:

The experimental firmware is at:

To load it, drag it on to your mbed and power-cycle. If you want to revert to the standard firmware at any time, go to /handbook/Firmware.

To request a powerdown, take a look at the example program:

Note, as the call is ignored when USB is connected, you can always plug in your mbed and reprogram it as normal.


19 Dec 2010 . Edited: 19 Dec 2010

Dose the new boot loader put IC1 it into

  • Sleep
  • Deep Sleep
  • Power Down
  • Deep Power Down

when  "__semihost( USR_POWERDOWN, &arg );" is called?

I also note that " #pragma NOINIT" & " #pragma INIT" don't work with the compiler. When trying to store vars for watchdog trace back.

#define WDG_LINE() (wdg_line = __LINE__)

#pragma NOINIT
uint16_t wdg_cnt;
int      wdg_line;
#pragma INIT

22 Jul 2011 . Edited: 22 Jul 2011

Did this ever get added to the main libs, if not how can I make a lib out of the expermental lib

23 Jul 2011 . Edited: 23 Jul 2011

I see __IO uint32_t PowerDown;  and that's it... what am I supposed to be looking for...........

28 Jul 2011 . Edited: 29 Jul 2011
Can no anyone can wake up from DeepSleep by any InterruptIn? While, sleep works right and, wakes up by an interrupt.
07 Oct 2011 . Edited: 07 Oct 2011

I seem to be able to reset from DeepSleep using the watchdog timer - see

14 Feb 2013
Does anybody know if the features of this experimental firmware were integrated in one of the latest firmaware release? (e.g. rev 16457)

Please log in to post a comment.