I've done a quick analyses of expected battery life based on a bunch of assumptions on the number of packets transmitted, and the current consumed for TX/RX/sleep (of 25mA, 10mA and 0.1mA respectively). This doesn't account for things like moving motorised valves or battery return factor, conversion efficiency or lots of other things, but it gives an idea of what we might be able to improve by playing with the timer in openhab by looking at the relative values...
The bottom line is that from a protocol perspective alone, there is a significant advantage in reducing the sleep time when using a 5 minute wakeup - you can increase from 1.36 to nearly 2 years by reducing from 2 seconds to 0.5 seconds. If the wakeup period is 1 hour, then the increase isn't as dramatic (2.16 to 2.25 years), and the difference between 1 hour and 1 day wakeup is minimal. So, from this, we can say that there is a significant gain to reducing this time where the wakeup period is low.
Anyway... What this tells me (from the protocol perspective) is that I should look at reducing the time when the wakeup period is short as it will likely help significantly. I'll have a think about how to implement this.
However, I know the first response I'm going to get is - "this analyses is wrong as I only get 1 month" (or whatever) :).
I think this should give an idea of what could be achieved for a simple battery device if its well managed and designed. Of course in the case of the valve motor, this will adversely impact the battery life - I don't know how many times this is moving per day - if it's only a few times then it probably doesn't make a lot of difference - if you're changing the valve position every 5 minutes to control the temperature, then that's a different story and we could expect that to have a big impact on the life (potentially around 1 to 2 months based on my quick analyses and assumptions)...
Battery quality is another issue that can have a dramatic impact - a good AA battery can have a capacity of 2500mAH (or more!), while a cheap rechargeable might be 600mAH.
The fact that people are only getting 1 month as opposed to the ~1 year that I see below may indicate more "severe" issues than just the protocol. If I use myspreadsheet and work backwards to get 1 month, it tells me that we'd have to have the device awake about 50% of the time, or transmitting every second or two. Again, treat these numbers as an indicator as this analyses is rough, but it gives an idea of what would need to be happening to get this battery life.
Anyway.... That's a bit of a brain dump with some food for thought (maybe not too specific to Danfoss). It would be interesting to know how often the valves are operating in these devices though as that's something I'm unclear of...
Chris
(I hope this formats ok...)
| Battery capacity |
2000 |
2000 |
2000 |
2000 |
2000 |
2000 |
mAH |
| Wakeup period |
300 |
300 |
3600 |
3600 |
86400 |
86400 |
seconds |
| Receive duration |
2 |
0.5 |
2 |
0.5 |
2 |
0.5 |
seconds |
| Average current |
0.17 |
0.12 |
0.11 |
0.10 |
0.10 |
0.10 |
mA |
| Battery life (days) |
494.59 |
700.34 |
788.34 |
820.35 |
831.36 |
832.78 |
days |
| Battery life (years) |
1.36 |
1.92 |
2.16 |
2.25 |
2.28 |
2.28 |
years |