So I am using a nRF24L01+ transceiver in my project and I realize it has a power down mode that helps it save power in battery settings. However, if my arduino is running at 3.3v, then can I not simply power the transceiver through a digital I/O pin and just pull the pin low, essentially turning the transceiver completely off? Wouldn't that always be more efficient than using a power down mode which although minimal, will still use more current?
You can run the plus at 5v, so running the Arduino at 3v3 isn't necessary.
If you don't need to wake the nRF with interrupts then turning it off is feasible, but best done via a transistor as a switch. You may want to introduce a slight delay to allow it to initialize after powering up though.
Check the Data Sheet though. Would you actually be saving much by switching off as opposed to sleep?
Are you sure you can run the + at 5v? Everywhere online says 3.3v at the VCC of the chip. Also is a transistor necessary? And yea its probably not that helpful in power savings since in sleep mode its supposed to use only 900nA which is next to nothing. I was just wondering if thats bad for the chip if you do power it though a pin.
That depends on how much current the device draws. < say 25mA you could power from the pin, any more use a transistor.
Rob
A transceiver chip needs good supply decoupling, and Arduino pins cannot drive such a capacitive load without
exceeding their absolute maximum current specification (an uncharged 4.7uF ceramic will pull 100's of mA as
it charges up)
Best to use a switching transistor or MOSFET (PNP or p-channel high-side switch is simplest). The decoupling must be on the
nRF24L01+ side of the transistor to mean much.
tack:
You can run the plus at 5v, so running the Arduino at 3v3 isn't necessary.
NO, it takes a maximum of 3.6V.... Read the datasheet before posting advice like this.
The chip has 5V-tolerant logic inputs - but that's not the same as taking 5V power!!
The data sheet is for the chip itself though, not the modules. As far as I'm aware there is a 3v3 regulator on the board for Vcc, where it's a plus on the board.
Happy to be corrected but we've been running off 5v without any issues.
I'll admit I've made an assumption that a transceiver module is being used, rather than bare chip, as it seems these are available cheaper from China than you can buy the bare IC for.
So I am running it at 3.3v and currently using 5v logic. But that should soon be changed to a completely 3.3v arduino.
It also seems like its not worth it to run the transceiver on a pin especially if it requires more components to do it safely. It would be fine for me to plug it directly to the battery as long as the battery is in the chip range correct?
Also if I am trying to integrate the circuit into my own board rather than using a chip could i swap out the crystal for an smd crystal?