nRF5 action!
-
For measuring small currents I'm using Texas Instruments EnergyTrace piece of technology and it works pretty well. You just need one of their development boards with energytrace special microcontroller embedded which is very cheap. More infos here: http://43oh.com/2015/09/how-to-measure-an-energia-applications-power-usage-with-energytrace/
It can be used to measure other boards power usage also - you just need to take of some jumpers and plug in your external board.
It gives you real time energy measurements and with plotting too(and battery life estimation is displayed real time too). No need to worry about burden voltage and other external factors which affect the measurements.
-
@mtiutiu
I think maybe the nRF52 DK also has some energy measurement capability, but I haven't looked into it. -
Looks like I was wrong earlier about the voltage reference being Vcc when doing an analog read on a pin. Instead, it seems to be a fixed reference. In any case, I'm getting better results with an expression like this, which is independent of Vcc:
millivolts = (analogRead(PIN)*3000/4095)
What are others here doing in this case?
-
Looks like I was wrong earlier about the voltage reference being Vcc when doing an analog read on a pin. Instead, it seems to be a fixed reference. In any case, I'm getting better results with an expression like this, which is independent of Vcc:
millivolts = (analogRead(PIN)*3000/4095)
What are others here doing in this case?
@NeverDie
As mentioned earlier by someone the nrf52 is preset to 0.6v internal ref and a 1/5 divider so 0 - 3v is the max input so your calculation is correct.
The nrf51 is different because the ref can be set to a few different settings but the default is vdd. -
I don't think sendSignalStrength function is implemented yet, but you should be able to get this info with:
int16_t transportGetSendingRSSI(void) int16_t transportGetReceivingRSSI(void) -
@Toyman
it has been explained above in the topic ;)
you have to follow -
I don't think sendSignalStrength function is implemented yet, but you should be able to get this info with:
int16_t transportGetSendingRSSI(void) int16_t transportGetReceivingRSSI(void) -
-
@Toyman
it has been explained above in the topic ;)
you have to follow -
Regarding the PCB/KiCad comments.
I was trying out KiCad and copied the NRF52832 DC/DC schematic from the datasheet.It might be of help for someone.
https://github.com/Omemanti/KiCAD/tree/master/NRF52832PS. been at KiCad for a couple of hours, been used to Eagle, so please double check.
-
@NeverDie
As mentioned earlier by someone the nrf52 is preset to 0.6v internal ref and a 1/5 divider so 0 - 3v is the max input so your calculation is correct.
The nrf51 is different because the ref can be set to a few different settings but the default is vdd.@rmtucker said in nRF5 Bluetooth action!:
@NeverDie
As mentioned earlier by someone the nrf52 is preset to 0.6v internal ref and a 1/5 divider so 0 - 3v is the max input so your calculation is correct.
The nrf51 is different because the ref can be set to a few different settings but the default is vdd.I've lately found that I seem to get a more accurate measurement if I multiply by 3131 instead of 3000. Just an empirical result with no real theory behind it.
-
What's going to be the best way to reduce the sleep current and Tx current on the nRF52? Since I'm feeding off a supercap for power, it's noticeably worse (by an order of magnitude) on the same task than the atmega328p+rfm69 combo. I've already increased the datarate to 2mbps, and it's inherently lower Tx current should give it a natural advantage.
I guess I'll try reducing Tx power and see if that makes much of a dent....
I suppose reducing 3 separate packets to one single packet, and maybe turning off ACK requests might also help. Then, maybe all of the LONG_WAIT's can be eliminated. Is the radio still awake even if the CPU is sleeping during a "wait" period? If so, that might be a large chunk of the wasted power.
I wonder if the mysensors mesh networking (which I don't intend to use) might be getting in the way, and possibly keeping it awake longer than it otherwise would be? Can I disable the mysensors meshnetworking just to be sure?
Sorry for the shotgun blast of questions, but I'm trying to get a sense of what will yield the highest payoff.
-
Since I'll be reducing Tx power in an attempt to reduce current consumption, I'll be using a scanner program to try to find empty channels. The only one I know of is: https://github.com/nRF24/RF24/tree/master/examples/scanner
for the nRF24L01, but it seems to work well enough if you let it run awhile. Anyone else using one that they like? -
Since I'll be reducing Tx power in an attempt to reduce current consumption, I'll be using a scanner program to try to find empty channels. The only one I know of is: https://github.com/nRF24/RF24/tree/master/examples/scanner
for the nRF24L01, but it seems to work well enough if you let it run awhile. Anyone else using one that they like?@NeverDie said in nRF5 Bluetooth action!:
Since I'll be reducing Tx power in an attempt to reduce current consumption, I'll be using a scanner program to try to find empty channels. The only one I know of is: https://github.com/nRF24/RF24/tree/master/examples/scanner
for the nRF24L01, but it seems to work well enough if you let it run awhile. Anyone else using one that they like?Nevermind. I see now that there's an entire entry on it:
https://forum.mysensors.org/topic/2454/node-cant-see-gateway-less-than-10m-away/11 -
I don't know if it is actually related, but I'll post the link to this programmer :)
adafruit.com/product/3571@gohan said in nRF5 Bluetooth action!:
I don't know if it is actually related, but I'll post the link to this programmer :)
adafruit.com/product/3571Not sure it's even legal to use this if you ever plan to sell PCBs on openhardware.io ...
You may use the J-Link EDU for non profit educational purposes only! Non-profit educational purposes means that you >may not use the J-Link EDU and its J-Link software.
- direct or indirect in or for a profit organization or business purposes or other undertaking intended for profit
- direct or indirect in any other commercial environment (e.g. office)
- to develop, debug, program or manufacturer a commercial product (or parts thereof)
- to use it to either earn money or reasonably anticipate the receipt of monetary gain from it.
-
@gohan said in nRF5 Bluetooth action!:
I don't know if it is actually related, but I'll post the link to this programmer :)
adafruit.com/product/3571Not sure it's even legal to use this if you ever plan to sell PCBs on openhardware.io ...
You may use the J-Link EDU for non profit educational purposes only! Non-profit educational purposes means that you >may not use the J-Link EDU and its J-Link software.
- direct or indirect in or for a profit organization or business purposes or other undertaking intended for profit
- direct or indirect in any other commercial environment (e.g. office)
- to develop, debug, program or manufacturer a commercial product (or parts thereof)
- to use it to either earn money or reasonably anticipate the receipt of monetary gain from it.
-
In my testing, NRF5_PA_LOW did offer some modest reduction in overall current consumption, but it's no silver bullet.
The range with NRF5_PA_MIN is just a few feet, so I don't consider it practical for the vast majority of use cases.
So, further reductions in current consumption will have to come from somewhere (?) else.
I suppose the next step is to turn-off auto ACK's and any listening for ACK's by the mote. Hopefully (?) there's a switch in myconfig which does that.