Skip to content
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. Announcements
  3. 💬 Battery Powered Sensors
  • Getting Started
  • Controller
  • Build
  • Hardware
  • Download/API
  • Forum
  • Store

💬 Battery Powered Sensors

Scheduled Pinned Locked Moved Announcements
battery
347 Posts 55 Posters 67.0k Views 53 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • GertSandersG GertSanders

    @Meshx86
    No problem to ask. I use the intern measurement method, which uses the internal 1.1V reference of the atmega328, so even if the Vcc value changes from 3.2V -> 2.6V, the reference will always be 1.1V, and the internal method allows you to calculate the actual measured battery voltage based on a difference with the reference, even with a declining value on Vcc (if powered by the same batteries).

    Meshx86M Offline
    Meshx86M Offline
    Meshx86
    wrote on last edited by
    #41

    @GertSanders sorry mate, am more of a software guy..

    according to the lib i've seen and @Yveaux's example for the internal method, at the begining you need to define a corrective value :

    const float VccCorrection = 1.0/1.0;  // Measured Vcc by multimeter divided by reported Vcc
    
    Vcc vcc(VccCorrection);
    

    is this necessary for an accurate reading ? and is the corrective value need to be just entered once (like a calibration per arduino) or need to be reconfigured every time you replace a battery ?

    GertSandersG 1 Reply Last reply
    0
    • N Offline
      N Offline
      Nicklas Starkel
      wrote on last edited by
      #42

      Good article/site on why Alkaline is the best way to go for Mysensors nodes :)
      http://batteryuniversity.com/learn/article/elevating_self_discharge

      AWIA 1 Reply Last reply
      2
      • Meshx86M Meshx86

        @GertSanders sorry mate, am more of a software guy..

        according to the lib i've seen and @Yveaux's example for the internal method, at the begining you need to define a corrective value :

        const float VccCorrection = 1.0/1.0;  // Measured Vcc by multimeter divided by reported Vcc
        
        Vcc vcc(VccCorrection);
        

        is this necessary for an accurate reading ? and is the corrective value need to be just entered once (like a calibration per arduino) or need to be reconfigured every time you replace a battery ?

        GertSandersG Offline
        GertSandersG Offline
        GertSanders
        Hardware Contributor
        wrote on last edited by
        #43

        @Meshx86
        The corrective value is needed every time you change a battery, AND if you need high accuracy.
        On my battery based nodes I do not have a need for absolute accuracy, I just need to see the trend of the Vcc value.
        Changing the battery happens every 12-24 months (depends on the use), so I'm not very interested in absolute accuracy. If you need real accurate measuring, I would suggest a real Analog-To_Digital chip.

        Meshx86M 1 Reply Last reply
        2
        • GertSandersG GertSanders

          @Meshx86
          The corrective value is needed every time you change a battery, AND if you need high accuracy.
          On my battery based nodes I do not have a need for absolute accuracy, I just need to see the trend of the Vcc value.
          Changing the battery happens every 12-24 months (depends on the use), so I'm not very interested in absolute accuracy. If you need real accurate measuring, I would suggest a real Analog-To_Digital chip.

          Meshx86M Offline
          Meshx86M Offline
          Meshx86
          wrote on last edited by
          #44

          @GertSanders thanks , i think accuracy isn't a deal breaker, i believe everyone's concern is to just know when the batteries need to be replaced (hopefully that can be done without specifying the voltage correction).

          YveauxY 1 Reply Last reply
          1
          • Meshx86M Meshx86

            @GertSanders thanks , i think accuracy isn't a deal breaker, i believe everyone's concern is to just know when the batteries need to be replaced (hopefully that can be done without specifying the voltage correction).

            YveauxY Offline
            YveauxY Offline
            Yveaux
            Mod
            wrote on last edited by
            #45

            @Meshx86 ok, being quoted so many times I can also add my 5 cents :smile:
            The correction factor is optional. You can use it to improve the measured voltage, as the internal voltage reference is only accurate up to so many percentage (have to look up the number). It is unique to the arduino used.
            This factor should however not depend on the batteries, possibly on environmental factors (e.g. Temperature)

            http://yveaux.blogspot.nl

            Meshx86M 1 Reply Last reply
            0
            • YveauxY Yveaux

              @Meshx86 ok, being quoted so many times I can also add my 5 cents :smile:
              The correction factor is optional. You can use it to improve the measured voltage, as the internal voltage reference is only accurate up to so many percentage (have to look up the number). It is unique to the arduino used.
              This factor should however not depend on the batteries, possibly on environmental factors (e.g. Temperature)

              Meshx86M Offline
              Meshx86M Offline
              Meshx86
              wrote on last edited by
              #46

              @Yveaux one last, i promise :P

              if max battery voltage is actually 3.2v, does that mean that the battery percentage would show 100% for quite sometime before it starts dropping below 3.0v (assuming vmax is set to 3.0) ? or would it increase the inaccuracy gap ?

              YveauxY 1 Reply Last reply
              0
              • Meshx86M Meshx86

                @Yveaux one last, i promise :P

                if max battery voltage is actually 3.2v, does that mean that the battery percentage would show 100% for quite sometime before it starts dropping below 3.0v (assuming vmax is set to 3.0) ? or would it increase the inaccuracy gap ?

                YveauxY Offline
                YveauxY Offline
                Yveaux
                Mod
                wrote on last edited by
                #47

                @Meshx86 the function Read_Perc() takes a boolean as 3rd parameter. Default it's true, which means the result is clipped to 0..100% range.
                So, if maximum is set to 3v, and you are currently above it, it will report 100% until you drop below 3v.

                http://yveaux.blogspot.nl

                1 Reply Last reply
                0
                • N Nicklas Starkel

                  Good article/site on why Alkaline is the best way to go for Mysensors nodes :)
                  http://batteryuniversity.com/learn/article/elevating_self_discharge

                  AWIA Offline
                  AWIA Offline
                  AWI
                  Hero Member
                  wrote on last edited by
                  #48

                  @Nicklas-Starkel The article mostly talks about rechargeable batteries. I prefer non rechargeable Lithium batteries (like coin cells) for their energy density and very low self discharge.
                  My major concern with (cheap) alkaline batteries is their leakage of aggressive chemicals. I had to trash my first nodes because of this :unamused:

                  N tonnerre33T 2 Replies Last reply
                  0
                  • AWIA AWI

                    @Nicklas-Starkel The article mostly talks about rechargeable batteries. I prefer non rechargeable Lithium batteries (like coin cells) for their energy density and very low self discharge.
                    My major concern with (cheap) alkaline batteries is their leakage of aggressive chemicals. I had to trash my first nodes because of this :unamused:

                    N Offline
                    N Offline
                    Nicklas Starkel
                    wrote on last edited by
                    #49

                    @AWI in the first part it states:
                    "Primary cells such as lithium-metal and alkaline retain the stored energy best, and can be kept in storage for several years."
                    So you are correct and between Alkaline and Lithium-metal maybe the latter would be best. :)
                    I have no experience with coin cells and will do some testing with them as soon as I can.
                    Since this is the battery article, would you please tell me what you use and how you use it. What you expected and if the batteries lived up to your expectations. Would be cool to know as you've had more experience then me (and many like me)!

                    AWIA 1 Reply Last reply
                    0
                    • AWIA AWI

                      @Nicklas-Starkel The article mostly talks about rechargeable batteries. I prefer non rechargeable Lithium batteries (like coin cells) for their energy density and very low self discharge.
                      My major concern with (cheap) alkaline batteries is their leakage of aggressive chemicals. I had to trash my first nodes because of this :unamused:

                      tonnerre33T Offline
                      tonnerre33T Offline
                      tonnerre33
                      Hardware Contributor
                      wrote on last edited by
                      #50

                      @AWI I'm agree with you but coin cells have less capacity. The difference of the self discharge between coin cells and alkaline is not important (1% vs 2%), but the capacity and size are.

                      Here is a link with the Battery self-discharge rates :
                      http://www.gammon.com.au/power

                      1 Reply Last reply
                      0
                      • N Nicklas Starkel

                        @AWI in the first part it states:
                        "Primary cells such as lithium-metal and alkaline retain the stored energy best, and can be kept in storage for several years."
                        So you are correct and between Alkaline and Lithium-metal maybe the latter would be best. :)
                        I have no experience with coin cells and will do some testing with them as soon as I can.
                        Since this is the battery article, would you please tell me what you use and how you use it. What you expected and if the batteries lived up to your expectations. Would be cool to know as you've had more experience then me (and many like me)!

                        AWIA Offline
                        AWIA Offline
                        AWI
                        Hero Member
                        wrote on last edited by
                        #51

                        @Nicklas-Starkel I mostly use a 'large' version lithium cell i.e. Cr123. These were used large in compact camera's and have a huge capacity and very little self discharge. My best example is the sensor in the fridge which measure temp and humidity every 10 secs and sends with nrf24l01 (MySensors of course). This one runs for almost two years now and has a stable 3.02V since the second month.

                        The coin cells need special care a these have a high 'internal resistance'. You need to be careful with designing the sketch so that the load is as short and light as possible.

                        There are some of my postings on this site which elaborate on the subject. (I'm on a mobile phone right now...)

                        N 1 Reply Last reply
                        1
                        • AWIA AWI

                          @Nicklas-Starkel I mostly use a 'large' version lithium cell i.e. Cr123. These were used large in compact camera's and have a huge capacity and very little self discharge. My best example is the sensor in the fridge which measure temp and humidity every 10 secs and sends with nrf24l01 (MySensors of course). This one runs for almost two years now and has a stable 3.02V since the second month.

                          The coin cells need special care a these have a high 'internal resistance'. You need to be careful with designing the sketch so that the load is as short and light as possible.

                          There are some of my postings on this site which elaborate on the subject. (I'm on a mobile phone right now...)

                          N Offline
                          N Offline
                          Nicklas Starkel
                          wrote on last edited by
                          #52

                          @AWI OMG there is so many options when you look at it!
                          I think it all boils down to design (size) or money.
                          Normal AA roughly 0.3EUR/pc are quite large but OK power but cheap
                          CR123 roughly 2.5EUR/pc are quite small and OK power but expensive
                          Coin cell roughly 1EUR/pc and they are the smallest but not packing a good punch while being semi cheap/expensive.

                          Obviously I have to build one node with each and put them in flowerpots around the flat to see in in action :)

                          And to top it off, I know there is a company in USA that has created a new battery that will double 'Ah' in same size batteries. They should launch this month i think, but think they will go for cellphone makers in the beginning.

                          parachutesjP 1 Reply Last reply
                          0
                          • N Nicklas Starkel

                            @AWI OMG there is so many options when you look at it!
                            I think it all boils down to design (size) or money.
                            Normal AA roughly 0.3EUR/pc are quite large but OK power but cheap
                            CR123 roughly 2.5EUR/pc are quite small and OK power but expensive
                            Coin cell roughly 1EUR/pc and they are the smallest but not packing a good punch while being semi cheap/expensive.

                            Obviously I have to build one node with each and put them in flowerpots around the flat to see in in action :)

                            And to top it off, I know there is a company in USA that has created a new battery that will double 'Ah' in same size batteries. They should launch this month i think, but think they will go for cellphone makers in the beginning.

                            parachutesjP Offline
                            parachutesjP Offline
                            parachutesj
                            wrote on last edited by
                            #53

                            I am not getting it...

                            I have a 3.3V Pro Mini, it is connected to my table power supply and want it to be powered by a coin cell later. To test the VCC lib, I set

                            const float VccExpected   = 3.21;
                            

                            What do I need to put here?

                            const float VccCorrection = 3.21/3.21;
                            

                            It always returns BatteryPercentage of 2 or 3% seems the function is not calculating right. Anyhow I saw there is another function to call Read_Volts()

                            float volts = (float)vcc.Read_Volts();
                            int myPerc = volts *100 / VccExpected; 
                            

                            So "myPerc" returns a value of 98% which seems feasible, also when reducing Voltage it drops.
                            But still, not getting the values with the build in function read_Perc()

                            1 Reply Last reply
                            0
                            • Moebius LutchingM Offline
                              Moebius LutchingM Offline
                              Moebius Lutching
                              wrote on last edited by
                              #54

                              I'm building my home automation with a few Whisper Nodes (https://talk2.wisen.com.au/product-talk2-whisper-node-avr/) and I just got them working with the MySensor code. I'm running most of my projects with two AA but I just setup one with a CR2032 transmitting my attic temperature every 5 minutes to see how it goes. One thing I discovered is that the board comes two "built-in" resistor divider to monitor the battery and power supply voltage, which is pretty handy... also they have added a Mosfet on the battery voltage divider, I guess to eliminate the constant current leak consumed by the voltage divider, am I right?! (https://bitbucket.org/talk2/whisper-node-avr/overview#markdown-header-voltage-monitor)

                              1 Reply Last reply
                              0
                              • bjacobtB bjacobt

                                Hi,
                                I'm sorry what do you mean by "control your resistance value"

                                this is my circuit,

                                1M resistor to +V rail, 470K resistor to GND and middle point to A0.

                                0_1478097209731_IMG_1543.JPG ,

                                GertSandersG Offline
                                GertSandersG Offline
                                GertSanders
                                Hardware Contributor
                                wrote on last edited by
                                #55

                                @bjacobt

                                It seems you are missing the capacitors connecting each side of the crystal to ground. Those should be between 15 and 25pf (depends on the crystal), normally ceramic type.

                                1 Reply Last reply
                                0
                                • GertSandersG GertSanders

                                  Here is a view of a node running exactly 1year. The effect of a bad radio is seen here as the fast voltage drops. I had a very low charged battery to start with, replaced it with new batteries which also discharged fast, and replaced both batteries and the radio. Since mid january 2016 the node has been running as expected. My guess is that this combo will run for 2 years (given how it has been working the past 9 months).

                                  This node measures battery voltage, temperature and humidity and sends 3 messages about every 5 minutes.

                                  0_1474202873202_Screen Shot 2016-09-18 at 14.41.30.png

                                  And here is the battery measurement of the second node that went "online" the same day (18/sep/2015, with a good radio, and similarly used batteries from the start). This node sends very few messages (at least 1 every 24 hours, and when one of 3 contacts are opened). Most days it just sends 1 message.

                                  0_1474203476121_Screen Shot 2016-09-18 at 14.55.05.png

                                  So even with batteries already at a low level, you can make useful nodes using the MySensors setup :-)

                                  C Offline
                                  C Offline
                                  chaeron
                                  wrote on last edited by
                                  #56

                                  @GertSanders

                                  How are you sending the voltage?

                                  Sensor = S_MULTIMETER and value = V_VOLTAGE in a normal message?

                                  Thx!

                                  GertSandersG 1 Reply Last reply
                                  0
                                  • C chaeron

                                    @GertSanders

                                    How are you sending the voltage?

                                    Sensor = S_MULTIMETER and value = V_VOLTAGE in a normal message?

                                    Thx!

                                    GertSandersG Offline
                                    GertSandersG Offline
                                    GertSanders
                                    Hardware Contributor
                                    wrote on last edited by
                                    #57

                                    @chaeron
                                    Correct :-)

                                    C 1 Reply Last reply
                                    0
                                    • GertSandersG GertSanders

                                      @chaeron
                                      Correct :-)

                                      C Offline
                                      C Offline
                                      chaeron
                                      wrote on last edited by
                                      #58

                                      @GertSanders

                                      Thanks! I'll use that approach for all my house sensors, since right now all I send is battery percentage..

                                      ...at least until/if they add support for a I_Battery_Voltage internal value. 😈

                                      1 Reply Last reply
                                      0
                                      • meanmrgreenM Offline
                                        meanmrgreenM Offline
                                        meanmrgreen
                                        wrote on last edited by
                                        #59

                                        Realy n00b in electronics here but do you need to use those exact values of the resistors when hooking this up?

                                        mfalkviddM 1 Reply Last reply
                                        0
                                        • meanmrgreenM meanmrgreen

                                          Realy n00b in electronics here but do you need to use those exact values of the resistors when hooking this up?

                                          mfalkviddM Offline
                                          mfalkviddM Offline
                                          mfalkvidd
                                          Mod
                                          wrote on last edited by mfalkvidd
                                          #60

                                          @meanmrgreen are you reffering to the 470K+1M resistors? (This is a long thread)
                                          If so, they can be any size but the code will need to be adjusted if the ratio between the resistors is changed.

                                          Also, less resistance will drain the battery faster.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          7

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular