Which are the *best* NRF24L01+ modules?
-
@rollercontainer
Have you tried to measure the power consumption whithout radio, and just putting the atmega328 in deep sleep (sleep(0)) ?
Normally you should then see something less then 10 micro amperes.
If the node still consumes around 1mA in this situation, then I would advise to look at the soldering and the other components.
With BOD disabled, an atmega328p in deep sleep consumes around 1 micro Ampere,.
Did you use the atmea328P version or the standard atmega328 (without the P) ?@GertSanders I wrote "below 1mA" because I couln't recal the exact value, just for pointing to the relation between radio consumption and idle without radio.
I've got 328P from Reichelt.de and messured again withoput mysensors.h and with SLEEP_MODE_PWR_DOWN. The multimeter reads 0,09mA at 60.00mA range set. Looks valid to me.
-
@GertSanders I wrote "below 1mA" because I couln't recal the exact value, just for pointing to the relation between radio consumption and idle without radio.
I've got 328P from Reichelt.de and messured again withoput mysensors.h and with SLEEP_MODE_PWR_DOWN. The multimeter reads 0,09mA at 60.00mA range set. Looks valid to me.
@rollercontainer
If you are using the internal pull up resistors on the switch input pins, then indeed you will get something like 30-60mA.
That is why we use external pull up resistors for switches when we want to go for lowest possible power consumption.The internal pul up resistors have a value around 30K-45K (there is some variation). The pull up resistors I use are 1MOhm, this cuts the current consumption by two factors.
-
@rollercontainer : you cannot get a proper measurement using only just a multimeter. Fluke or no Fluke, it just isn't going to happen. Lookup "burden voltage." Enough said, as this has been covered in-depth all over the place.
-
You both missed the point. My problem isnt the idle consumption yet. My problem is, that all the radios consume too much. Is there a way to get it down, or do I have to dump them all?
-
You both missed the point. My problem isnt the idle consumption yet. My problem is, that all the radios consume too much. Is there a way to get it down, or do I have to dump them all?
-
Holidays are over, back to work ^^
To clarify it again:
First I tried with complete 2AA slim node, several radios, sensor and the default binarySwitchSleep 2.0.0beta sketch. (15mA)
For the second run: NO radio, sensor or MySensors.h were used. Therefore I wrote a minimal sketch with SLEEP_MODE_PWR_DOWN to ensure that the AVR is going to sleep mode. (< 0,1 mA)
This leads me to the conclusion, that every of my ~20 radios is faulty. Are there any ways to prove this? -
Holidays are over, back to work ^^
To clarify it again:
First I tried with complete 2AA slim node, several radios, sensor and the default binarySwitchSleep 2.0.0beta sketch. (15mA)
For the second run: NO radio, sensor or MySensors.h were used. Therefore I wrote a minimal sketch with SLEEP_MODE_PWR_DOWN to ensure that the AVR is going to sleep mode. (< 0,1 mA)
This leads me to the conclusion, that every of my ~20 radios is faulty. Are there any ways to prove this?@rollercontainer
Sure. Buy a "known good" radio for comparison. -
Are the radios in the store here known as good and working now? I know we had issues with a bad seller previously, has this been sorted now?
-
@rollercontainer
Sure. Buy a "known good" radio for comparison.@NeverDie are you sure the node enters deep sleep? The current you measure is typical for a non sleeping radio. Main problems I have with the bad radio's is that these stay awake until they "found a parent". Where do you live? If you drop me a message I can send a tested one.
-
@NeverDie are you sure the node enters deep sleep? The current you measure is typical for a non sleeping radio. Main problems I have with the bad radio's is that these stay awake until they "found a parent". Where do you live? If you drop me a message I can send a tested one.
@AWI said:
@NeverDie are you sure the node enters deep sleep?
I don't recall. It's been a while since I ran the tests. Presently I'm using RFM69's, which draw about 100na when sleeping, but at some point this summer I hope to revisit using NRF24L01's. I've already received the SMD modules that Gert Sanders is using, and I'll be giving them a try on the boards he designed, so the odds are favorable that I'll be getting the same or similar results. I received the boards from the fab, so after I receive the remaining parts I'll do the assembly.
Earlier in this thread it was advised to order direct from Itead, on the grounds that they were manufacturing them. So, going directly to a reputable source might increase your confidence of getting what's advertised. Frankly, these things are cheap enough that I'd suggest going to several different such sources and then vet what you get using an oscilloscope. I did that earlier in this thread, and you can compare your results with the screenshots I posted to ID your chip. Of course, that by itself doesn't guarantee that the antenna was properly matched, which is why I think comparing the ranges of different modules from different sources is probably still a good idea. Even if the components are right, the dielectric of the PCB could throw off the match, and you won't know that just by looking at it.
-
Unfortunately i don't have an oscilloscope at the moment. So i have to just test them in the circuit as intended to be used.
-
@NeverDie I already bought these ~20 radios from 5 different dealers...
@AWI I am not sure, therefore I am asking here. But what more can I do? I am using a default sketch with only this modification:#define MY_NODE_ID 70 #define MY_PARENT_NODE_ID 0 #define MY_REPEATER_FEATURE falseThe node is useable, so it sends reed contact changes to the mqttClientGateway which sends it to my raspi. Is the static method preventing the node from deep sleep?
I live in northern germany. Thx for the offer. But I dont really believe, that all radios are faulty by now.
-
@NeverDie I already bought these ~20 radios from 5 different dealers...
@AWI I am not sure, therefore I am asking here. But what more can I do? I am using a default sketch with only this modification:#define MY_NODE_ID 70 #define MY_PARENT_NODE_ID 0 #define MY_REPEATER_FEATURE falseThe node is useable, so it sends reed contact changes to the mqttClientGateway which sends it to my raspi. Is the static method preventing the node from deep sleep?
I live in northern germany. Thx for the offer. But I dont really believe, that all radios are faulty by now.
@rollercontainer
I still suspect either a configuration or a measurement error. I suggest you photograph in detail everything you're doing and post it. If you're overlooking something, maybe somebody will spot it. Otherwise, there's just not much to go on. -
I setup a new Arduino IDE 1.6.9 portable with MySensors 1.5 and flashed a standard 8MHz bootloader with BOD off.
Idle current is nearly unmessureable by my MM, showing only 0,01 mA at 60,00 mA range.
Next step is to get a 1MHz bootloader to work with low current.Thx for your words, guys.
-
flashed the 1MHz Optiboot again, compiled the sketch and loaded it up. Idle current is staying under 0,01mA. So, looks like the 2.0.0beta libs are "guilty".
-
flashed the 1MHz Optiboot again, compiled the sketch and loaded it up. Idle current is staying under 0,01mA. So, looks like the 2.0.0beta libs are "guilty".
@rollercontainer Interesting...with 2.0b I have 6uA consumption in a sleep mode on Pro Mini + nrf24l01+
-
hi.
there is no interest to use 1mhz during sleep mode because in this mode clock is stopped. No matter the freq, if you have no problem in your circuit and software is well configured and bod disabled, just the atmel in standalone is consuming 140nA in deep sleep.
1mhz can be helpful during active mode but it reacts slower, wake up slower, and can cause trouble for communication like serial... and sometimes it can be less effective vs keeping internal rc.
But 1mhz is useful, used in certain ways of course, i use it too ;) -
it is working with lower voltages at 1mhz, thats the reason I use it on a 2 AA node.
-
But @scalz is saying that only in sleep mode the frequency does not matter, it has no effect on the power consumption. However, it will effect your power consumption while the MCU is awake, but there're discussions regarding the length of time its awake some times means that it uses less power if using a higher frequency due to it performing its tasks quicker and then returning to sleep.
-
So, I guess the question is whether waking up at 8mhz on 1.8v will be a problem or not. It's out of spec according to the datasheet. I'd certainly much prefer to wake-up the atmega328p at 8mhz than 4mhz or 1mhz, because then the wake-up time can be very, very short (<4us). No other setting that I know of comes anywhere close to 4us.