I'm getting into sensor development and am wondering what the best techniques are for designing a battery (or perhaps soloar) powered system that wakes up periodically, samples, and then stores or forwards via RF. For example if I wanted to build a system that is stuck in the ground and measures soil moisture every hour, sends the data via XBee, and then goes to sleep. How do I do this? I've seen discussion like this somewhere and how the main problem is that you can't keep track of time accurately. In a case like my example, I may not care about the time because the receiving system probably knows the time of day.
So what is the Arduino software/hardware design pattern for a very low-power sleep with periodic wakeup? Could I do something like attach an external very low-power timer circuit that pulses the Arduino to wakeup every hour? Or does the Arduino board already have such a capability? Thanks.