This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Least Expensive Method (regarding power) to monitor the voltage

I'm wanting to design a mesh system that will be running on batteries.

I need to keep track of the battery voltage. I don't plan on monitoring it often maybe a few times a day or so. When it falls too low I want it to send out a message, then save some data in the Flash and then shut down.

I'm just wondering what the least expensive way is to monitor the battery power - in regards to power. In the past I've used Microchip Pic's and this type of circuit:

electronics.stackexchange.com/.../low-current-battery-monitoring

But reading here I've come across this: devzone.nordicsemi.com/.../

Which seems to be completely internal (which sounds nice and cheap - in regards to pars) but I'm not sure if that's the best way.

I was curious what others were doing in similar circumstances?

Thanks,

Parents
  • Hi BSharp! I would try the internal solution if I were you. You could have a look at this blog post. The blog post is similar to the circuit you have used before. If the internal solution does not work, I would use the circuit you have used previously. Also, if you take a look at the Nordic Thingy SDK, have a look at the m_batt_meas.c source code. There's a function there that converts an ADC reading to battery voltage.

    static uint32_t adc_to_batt_voltage(uint32_t adc_val, uint16_t * const voltage)
    

    Not sure if it would work to use that, but it might be worth looking a bit further at the Nordic Thingy source code.

    To summarize, try the internal solution. If that doesn't work, use the voltage divider circuit you mention in the electronics.stackexchange.com link. Maybe consider looking at the Nordic Thingy SDK source code.

Reply
  • Hi BSharp! I would try the internal solution if I were you. You could have a look at this blog post. The blog post is similar to the circuit you have used before. If the internal solution does not work, I would use the circuit you have used previously. Also, if you take a look at the Nordic Thingy SDK, have a look at the m_batt_meas.c source code. There's a function there that converts an ADC reading to battery voltage.

    static uint32_t adc_to_batt_voltage(uint32_t adc_val, uint16_t * const voltage)
    

    Not sure if it would work to use that, but it might be worth looking a bit further at the Nordic Thingy source code.

    To summarize, try the internal solution. If that doesn't work, use the voltage divider circuit you mention in the electronics.stackexchange.com link. Maybe consider looking at the Nordic Thingy SDK source code.

Children
No Data
Related