WiSense FFD power consumption
I have not paid much attention to the power consumption of a full function device (FFD) till now. A WiSense node configured to operate as an FFD keeps it’s radio on at all times since it has to participate in mesh routing. The CC1101 radio consumes around 19 mA (at 3 Volts) in receive mode. When transmitting, the CC1101 consumes around 30 mA. Further, the micro (MSP430) on an FFD node runs at 16 MHz consuming around 5.0 mA (Vcc at 3.0 V). As a result, FFDs cannot run on batteries for long.
In most scenarios, mains power is the only option. In applications where the mesh network is installed outdoors, it is possible to utilize solar cells to power FFDs. Assuming an FFD has to stay powered 24/7, let us calculate the daily energy consumption. Assume supply voltage is 3.0 Volts. Assuming maximum sizes PDUs (71 bytes on the air), a single transmission will take 15 milli-seconds (WiSense nodes transmit at 38.4 kbps). Let us also assume that this FFD does not have any sensors. Assume the FFD makes a maximum of Nt transmissions per day.
Let ‘Tn’ seconds be the total time taken by Nt transmissions.
- Power consumed by micro and radio (in receive mode) will be Vcc * (5 mA+ 19 mA) -> 3 * 24 -> 72 mW (milli-watts).
- Power consumed by micro and radio (in receive mode) will be Vcc * (5 mA + 30 mA) -> 3 * 35 -> 105 mW (milli-watts).
- Energy consumption per day = Tn * 105 + (86400 – Tn) * 72 milli-joules
Assume this FFD makes a maximum of ‘Nt =1000’ transmissions per day and each transmission takes 15 milli-seconds.
Tn is then (15 * 1000) / 1000 = 15 seconds.
Energy consumption per day = 15 * 105 + (86400 – 15) * 72 -> 6222 joules
Assuming 6 hours of good sunlight, we only need a (6222 / (6 * 3600)) = .289 Watt panel to power this node 24/7.
The above calculation show that total energy consumption mainly depends on CC1101 power consumption in receive mode and to a lesser extent on the MSP430’s power consumption (if it is always active).
The FFD’s power consumption can be reduced by putting the MSP430 in LPM3 mode whenever it has nothing to do (this is now the default behavior of WiSense FFDs). When the CC1101 receives a packet it interrupts the MSP430 and the latter wakes up within a couple of microseconds. So no packets will be lost if the MSP430 is put to sleep (LPM3 mode). LPM3 mode power consumption is less than 4 micro-watts. With the micro in LPM3 mode, the FFD’s energy consumption mainly depends on the radio’s power consumption while listening (receive mode).
The CC1101 and the MSP430G2955 can operate at voltages as low as 1.8 V. Let us give a safety margin of say 0.3 Volts and operate the CC1101 at 2.1 V. Operating at a lower voltage has an added benefit of lower current consumption.
Energy consumed per day is ~ 86400 * (19 / 1000) * 2.1 -> 3448 Joules.
Assuming 6 hours of good sunlight, we only need a (34468 / (6 * 3600)) = .16 Watt panel to power this node 24/7.
To tide over consecutive bad weather days, we can choose a 1 W solar panel.
We need to choose a rechargeable battery with enough capacity to get through a week of bad weather. A 2500 mAh NiMH battery (1.2 V nominal voltage) has a maximum capacity of 2.5 * 3600 * 1.2 -> 10800 joules. Usable capacity will be lesser. We can use two of these batteries with a maximum capacity of 21600 Joules. Assuming usable capacity is 80 % (at an average discharge rate of 20 mA which is pretty low for these batteries), we get 21600 * .8 -> 17280 Joules. This will power the system for 17280 / 3448 -> 5 days if there is no solar input due to bad weather.