6 years, 5 months ago.

Low power mbed platform selection

I am using the mbed LPC1768 module for my development, but for a battery based device, I'd like to select a more power optimized platform for my application (a battery powered wireless sensor project), after some reading online, it seems the mbed NXP LPC11U24 is a good hit, is there better platform (low power consumption wise) from mbed family? Thanks in advance.

That depends on what you requirements are for the module. Also are you going to make your own board, or do you want to use an existing mbed board completely?

posted by Erik - 01 Jul 2015

Good question Erik, I used to create my own board (processor + sensor + wireless module), but it's time consuming and costly..., after some development on LPC1768 in my previous project, I want to re-use an existing mbed board as the main control board and this main control board talks to some external peripheral boards (sensor and wireless module). So if the mbed board can support multiple level low power modes, multiple power domains, lowest possible idle/sleep/ current, memory retention block, etc. it will help me to design better product.

posted by Hank Fang 01 Jul 2015

3 Answers

6 years, 4 months ago.

I'm currently working on a sensor network using battery-powered sensors based on mBuino and a nRF24L01+ module, Fairly low-budget, but more importantly: low power! The picture below shows a test-node on mini-breadboard, powered by just a button-cell! (The standard holder on the bottom of mBuino). I have another button-cell powered mBuino laying around. It wakes up when I shake it and goes to sleep after a few seconds. After many months it still works perfectly. /media/uploads/maxint/mbuino_rf24_buttoncell.jpg

Looks good!, can you pop your code up on Mbed?

posted by Paul Staron 01 Aug 2015

Will do when I have something shareable. At the moment I'm still looking into various protocol options. The operational test is based on the recent ports by Akash Vibhute of Maniacbug's RF24 libraries. I'm also looking into the newer Arduino versions of those libraries (see also this topic) and into the Arduino based sensor nodes on MySensors.org. Because of the larger support base, it would be nice if my mbed sensor nodes could be compatible with MySensors, but I probably will not have the time to port their code myself. Unfortunately the protocol of the RF24Network library is incompatible with MySensors.

posted by Maxint R&D 07 Aug 2015
6 years, 5 months ago.

There are quite some good MCUs for low-power design in mbed. For example the entire Freescale KLxx range works good, with deepsleep currents of about 3uA (similar for other low-power boards, this means 10 years+ coin cell operating time if it would be in deepsleep all the time).

Problem: These boards are not designed for low-power operation. You can start cutting alot of tracks on the PCB, but it is not ideal.

Silicon labs recently added a range of boards (https://developer.mbed.org/platforms/?tvend=20) specifically for low-power. I haven't tried it myself yet, but since they have coin cell holders, I assume the entire board can work at low current levels. They also support their own devices within mbed, which is good, they are still new though, so might be bit buggy. Other problem is: They are nice dev boards, but not that good for prototyping, unless you are interested in all the stuff on them.

If you want BLE also, there are several boards build around the NRF52822 module which will have low power consumption of the entire board. If you are not interested in BLE this is a bit pointless though.

There is the LPC1114, which is in DIP package and might be easier to use stand-alone.

Finally, there are some other LPC boards. I don't know which ones have low board power consumption, but one which I do know about is the mbuino: https://developer.mbed.org/platforms/Outrageous-Circuits-mBuino/. You can search on the site (preferably using google, since mbed search is bad) about some topics/questions regarding its power consumption: People got the power consumption of the entire board to a few uA. Of course this is because there is nothing on it, but often you don't want much on it anyway. If it has enough pins is for you to decide.

Thanks Erik! you have pointed many useful directions..., I am sure some of your suggestions will be included in my next project.

posted by Hank Fang 01 Jul 2015
6 years, 5 months ago.

As Erik mentioned the Silicon Labs EFM32 boards are optimised for low energy. They can easily be run at low power levels without using the peripherals so no track cutting or board mods. I would say this will be the best platform for low energy projects. The Simplicity Studio (SiLabs own IDE/compiler) does have a rather useful energy profiler function that will give you a real-time 'scope' like display indicating average and instantaneous current consumption. This also works with Mbed generated programs without any code exporting/importing.

A couple of things to be aware of, not all of the EFM32 features are on Mbed yet, bit of a work in progress, but what is there does appear to be working okay. The Wonder(M4) and Giant(M3) gecko's are the more powerful chips, plenty of Flash/Ram but do lack a little in speed (48MHz) compared to the LPC1768. The Zero(M0+) gecko does not have enough Flash/Ram to be able to use the Memory LCD on Mbed, so if you want a low power display option you need the Happy(M0+) gecko. Another problem, to be honest this is the case with most of development boards with toys on them, many of the external digital I/O's are shared so you would need to select the pins carefully, but there are plenty for most uses.

If you are prepared to make your own board, the Freescale KLxx's are the best option right now, particularly with low power deep sleep and using Erik's Wake-Up library sleeping as much as possible between tasks does work well and easy to program using the FRDM board as the target programmer.