Home automation typically starts with the measurement of temperature from many locations. Ideally this should be accomplished with a wireless sensor.
The arrival of Ciseco’s RFu-328 Arduino compatible wireless module it should hopefully be possible to make a more intelligent sensor platform, the aim a battery lifetime of > 1 year for a sample frequency of every minute.
- > 1 year battery life from 2xAA battery (2000mAH)
- Lightweight RF protocol
- OTA (Over the air) Firmware upgrades
- Low Cost base, Low power base station
- Modern Enclosure Design
- User definable sample frequency
- Over the air encryption
Using an RFU Developer Board , RFu-328 , and Slice of Radio for Raspberry PI all of which make use of Ciseco’s SRF RF Modules it has been possible to begin to explore the possibilities of creating an extensible sensor platform using off the shelf component parts.
Here it is.
Left to Right: 2xAA Battery pack, Ciseco RFu-328 module mounted on RFu Developer Board, MCP9700A analog temperature sensor.
Code for the RFu can be developed using the standard Arduino IDE, with a library available from Ciseco for to allow interaction with the SRF radio module present on the larger RFu module.
The Test Scenario
The aim of achieving a battery life for the sensor of > 1 year is great, but waiting for 12 months to prove both the hardware and software isn’t desirable. So rather than sampling at a frequency of once a minute, the sample frequency is reduced to once every 2 seconds. This means that 1 day of runtime is development mode is equivalent to 30 days of runtime when sampling at one sample a minute.
We record the data sent from the sensor using an LLAP message, using a Raspberry Pi and Slice of radio. We’ve previously covered this in another article. This is then processed using Node-RED and uploaded to Xively to record and plot the results.
We sent data for battery voltage in mV measured using the ATMEGA328′s own supply voltage measurement function, and analog voltage from the MCP9700 to Xively every 2 seconds. Starting on the 1st December 2013.
Here is a screenshot of the xively feed, on Boxing Day (26th December 2013).
At this stage we’re only interested in the being able to run the sensor for more than 1 year on a single set of AA batteries, so the plot above is for battery voltage only. We’ll look at temperature sensing in a future article.
Working left to right on the graph above we’ll describe the date, and size of each voltage drop.
- November 27th – 3019mV Previous version of testing firmware with 20 second sample
- December 2nd - 2956mV Initial drop after replacement firmware with 2 second sample
- December 3rd – 2948mV
- December 6th – 2940mV
- December 8th – 2918mV
- December 16th – 2908mV
- December 19th – 2903mV
- December 25th – 2985mV
- Current Reading (26th Dec) – 2985mV
So, using the results from December 2nd to December 26th, a period of 24 days, we’ve seen a drop of 29mV, or 0.03V.
After 24 days of running at 2 second sample frequency, we’ve seen the supply voltage to drop by a fraction of a volt. Clearly there’s still a lot of life left in these batteries. Whilst the RFu may be getting close to the voltage tolerance of a 16MHz crystal, the SRF module itself is rated down to 2V. Decreasing the sample rate to 60 seconds, will give ~2 years of operations. (24 days *60/2).
So the target battery life is clearly achievable, we’ll begin to focus our efforts on getting actual sensing of temperatures, design of a PCB, and production of documentation in the New year.
Want to find out more then why not get in touch.
You can follow the on-going progress of the sensor documented above by watching the following Xively feed
Here’s a picture of the Sensor in situ