Having trouble deciding on which way to go to save power on a battery operated sensor:
Atmega328 stand alone, NRF24L01+PA+LNA, DS18B20
transmit appx every 8 seconds and use watchdog timer to power down everything (internal clock on Atmega)
use 2 AA batteries for power
use parasitic power on DS18B20 (the sensor is only about 10 centimeters away from the pcb.
Atmega328 stand alone, NRF24L01+PA+LNA, DS18B20, LM2596 module(3.3v)
transmit every 8 seconds and use watchdog timer to power down Atmega (internal clock)
use 3 AA batteries for power
Atmega gets the full 4.5v from the batteries
pull pin 5 up off the LM2596 chip on the module, attach 470K resistor to it, then run to a pin on the Atmega..if pin is LOW it shuts down the chip (according to datasheet it consumes apx 80uF when off)
have the DS18B20 and the NRF24L01 run from the LM2596 3.3v output
Im not concerned with adding the extra battery if I get more time between battery changes.
I currently have several 328P boards that I made up from bare boards bought on ebay (AA-Node). They each have a DS18B20 temperature sensor on them operating in 3-wire mode. They were designed to work with an NRF24L01 (not the LNA+PA) variant, but there's no reason why they couldn't use the LNA+PA variant. These units run off 2x AA battereies and currently report the temperature every hour (give or take) using the RocketScream Low Power library.
I started with the NRF24L01 radio but they didn't work very well (poor range) in the scenario I wanted to use them. I designed a simple PCB to allow me to use an RFM69CW radio unit as a drop in replacement for the NRF24L01 and that's working pretty good.
The AA-Node really is a bare bones board (the rectangular board in the photos). Another alternative is the MySensors board (the square board in the photos) that takes a Pro Mini module. Both take an NRF24L01 radio module.
UPDATE: I just checked the battery voltages (basic Energizer AA batteries) being reported and one of my nodes started out at 2.956v on the 13th. 5 days later on the 18th it is reporting the battery voltage from the same 2x AA batteries as 2.903v.
I agree with the idea of powering the whole thing from 3v (2 x AA cells, for example) as it avoids all the energy loss from voltage regulators. I have built a few radio-control projects with Atmega 328s using their internal 8Mhz oscillator and nRF24 modules for the wireless communication.
2.4GHz wireless is not good for long range or for penetrating obstacles such as concrete walls and leafy trees.
Robin2:
I have built a few radio-control projects with Atmega 328s using their internal 8Mhz oscillator and nRF24 modules for the wireless communication.
Can you give me an example of the low power code that you used? I read this multiple times and honestly its a bit mind boggling as to what all needs to be done.
I have the receiver set up exactly the way it needs to be, and am currently transmitting using an UNO with this code:
I know the delay is BS here (just a test), but still uncertain as to how to shut everything down for the max 8 seconds for a stand alone Atmega with no crystal.
I recently posted an example of the 8 second sleep and how to create an extended sleep using multiple 8 second sleep cycles. This link should take you to the post. (NOTE:The link doesn't work, please see later post)
Instead of delay(10000), you would sleep 10 seconds.