If you are going to run small Transmitters and microcontroller off batteries, its critical to look at the power
consumption of what you are running, otherwise you will be replacing the batteries every week.
This means running the microprocessor in ultra low power consumption mode, and running the transmitter
as infrequently as possible.
For example, the little transmitter you are considering, draws 8 ma when transmitting.
Running this off a 9V battery, if its a small transistor radio type battery will drain the battery in just 12 hours.
Even running the Transmitter for just 1% of total time will drain the battery in just under 2 months.
Its critical to minimise battery consumption which means using the lowest possible supply voltages and keeping the transmitter
on time as low as possible.
Id be looking at running off 3 V which you can get from 2 AA cells in series, using the highest data rate you can manage
and thoroughly understanding issues like manchester coding,CRC error checking, and microcontroller power management.
Also, the frequencies that these small transmitters use , are commonly used by many common household appliances like garage door openers
car entry systems, wireless door alarms, wireless security systems etc so you must be able to recognise your data from everything else thats around.
The better transmitters like the Xbee use 2.4 Ghz and do all the hard work for you, which is one of the reasons they are more expensive.
They also draw 45 ma which means close to useless for running off batteries, unless you use a car battery.
Yes, I've given much thought to the battery usage. But I know it must be possible. There are small electronic devices like this that run on batteries for months before needing to be replaced. For instance, my parents have one of those Lunar clocks at their house that has a temperature sensor outside. It runs off a battery and is able to transmit the temperature back to the clock in the house and they don't have to replace the batteries in it but maybe once a year. It uses two AAA batteries.
What I'm thinking is as you said, keep my transmissions as short and fast as possible, and between transmissions put the controller into sleep mode with an interrupt set up. I know I can do an interrupt based on the reed switch being tripped, but I still have to figure out a way to do an interrupt on a time basis in order to send status updates. Which I'm thinking I'll do more like once an hour or maybe even once a day instead of ever 5 minutes like I previously mentioned. Just to cut down on battery usage. Also I think in the status update I'll send the current battery level so that the main system can alert when a battery is getting low in one of the wireless units.
By my calculations, which this is just an estimate and based on fully charged batteries at room temperature and such, 3 AAA batteries should be able to power one of these units for around 400 days (thats assuming 1 second data bursts once an hour). This is assuming around 1000 mAh Alkaline batteries. With everything in sleep mode it should be drawing < .1 mA, which would last 416 days under perfect conditions. If it used 12 mA for 1 second each hour, over 416 days it should only decrease the battery life time by around 14 days if that long. (This is figured basing it on taking 150 days to gather enough 1 second bursts to equal a full hour, so in 300 days the total drain from bursts would be 24 mAh, or ~34 mAh over 425 days. So I just figured 1000 - 34 = 966 mAh / .1 = 9660 hours / 24 = 402.5 days)
If I went with Lithium batteries, which I know is more expensive, the time should be tripled at least. Even if my estimate is double what I can actually achieve 200 days still isn't terrible, although shorter than I'd like. My goal if I can figure out a way to do it will be to make the batteries last for at least a year.