Skip to content
  • MySensors
  • 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. General Discussion
  3. Need working example battery powered sensor

Need working example battery powered sensor

Scheduled Pinned Locked Moved General Discussion
21 Posts 8 Posters 11.2k Views 7 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.
  • rvendrameR rvendrame

    http://forum.mysensors.org/topic/486/my-2aa-battery-sensor/36

    J Offline
    J Offline
    jovo
    wrote on last edited by
    #4

    @rvendrame said:

    http://forum.mysensors.org/topic/486/my-2aa-battery-sensor/36

    Yes, i have seen this discussion. it has great information and i should try some of them.

    To be more precise on my initial request, i think i should prioritize exploring the software options so it would be great if someone could clarify the best low-power options in the sketches. I am now just using the "sleep-time" option from the default mysensor sketches, but there are many more sleep options to choose for when checking the lowpower sketch. In particular, is there an difference between just sleep and power down. I guess so and since i like to work with a timer, if i can power down the node for a number of minutes, i guess that has great savings. a suggestion for a mysensors based power-down sketch would be great.

    1 Reply Last reply
    0
    • J Offline
      J Offline
      jovo
      wrote on last edited by jovo
      #5

      Spend some time today researching this topic.
      I concluded that I need a step-up anyway since the DHT-22 have a min Vcc of 3.3 which is easily reached when batteries are depleting, so I bought some of these.

      But this is not enough. I am fascinated by the extreme low power use of what we reported by EasyIoT in the low power guide by lowering the freq of the CPU.

      avrdude -c usbtiny -p m328p -U lfuse:w:0x62:m 
      

      and

      avrdude -c usbtiny -p m328p -U efuse:w:0x07:m
      

      After some struggle I manage to burn the fuses (or at least AVRDUDE gave me a successful status). Then I edited the boards.txt and selected the EasyIoT board from the list. The problem I have now is that I cannot upload sketches anymore:
      avrdude: stk500_recv(): programmer is not responding
      avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x15
      I played a bit with the com speed setting in board.txt (as this resolved also my fuse burn issue earlier). Unfortunately, no success...

      Now my questions:

      • anybody similar experience after fuse buring and how to resolve this?
      • how can I revert back to the original fuse setting so I can use my arduino again?
      m26872M funky81F 2 Replies Last reply
      0
      • J jovo

        Spend some time today researching this topic.
        I concluded that I need a step-up anyway since the DHT-22 have a min Vcc of 3.3 which is easily reached when batteries are depleting, so I bought some of these.

        But this is not enough. I am fascinated by the extreme low power use of what we reported by EasyIoT in the low power guide by lowering the freq of the CPU.

        avrdude -c usbtiny -p m328p -U lfuse:w:0x62:m 
        

        and

        avrdude -c usbtiny -p m328p -U efuse:w:0x07:m
        

        After some struggle I manage to burn the fuses (or at least AVRDUDE gave me a successful status). Then I edited the boards.txt and selected the EasyIoT board from the list. The problem I have now is that I cannot upload sketches anymore:
        avrdude: stk500_recv(): programmer is not responding
        avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x15
        I played a bit with the com speed setting in board.txt (as this resolved also my fuse burn issue earlier). Unfortunately, no success...

        Now my questions:

        • anybody similar experience after fuse buring and how to resolve this?
        • how can I revert back to the original fuse setting so I can use my arduino again?
        m26872M Offline
        m26872M Offline
        m26872
        Hardware Contributor
        wrote on last edited by m26872
        #6

        @jovo
        I don¨t have a straight answer. If you can't communicate with it, I think it's hard to do anything.

        Anyway I'll share my note since I researched this a while ago. I never got to the point when actually burn fuses. But I wrote this entry in my boards.txt:

        s328o1.name=ArduinoProMini-3.3V-8MHz(BOD 2.7V) FUSE-CHANGE to (int1MHz, BOD 1.8V)
        s328o1.upload.protocol=arduino
        s328o1.upload.maximum_size=30720
        s328o1.upload.speed=7200
        # http://www.gammon.com.au/forum/?id=11497
        # http://www.martyncurrey.com/?p=823
        s328o1.bootloader.low_fuses=0x62
        s328o1.bootloader.high_fuses=0xda
        s328o1.bootloader.extended_fuses=0x06
        #Omit .path and .file to simply burn the fuses. See https://code.google.com/p/arduino/wiki/Platforms
        #s328o1.bootloader.path=atmega
        #s328o1.bootloader.file=ATmegaBOOT_168_atmega328_pro_8MHz.hex
        s328o1.bootloader.unlock_bits=0x3F
        s328o1.bootloader.lock_bits=0x0F
        s328o1.build.mcu=atmega328p
        s328o1.build.f_cpu=1000000L
        s328o1.build.core=arduino
        s328o1.build.variant=standard
        

        Edit: Since I wrote that I've learn from here that BOD disabled saves 15-20uA. So now I would go for EasyIots setting with extended fuses 0x07.
        Edit2: It turned out that I had to use AvrStudio (v4.19+win7) with my avrispmkII to successfully burn fuses and bootloader (precompiled optiboot). Arduino IDE with avrdude just gave me trouble.

        1 Reply Last reply
        0
        • T Offline
          T Offline
          TimO
          Hero Member
          wrote on last edited by
          #7

          Is avrdude still working? Are you for example able to read out the fuses?
          Your fuses seem to be okay, I think there is an error in your board.txt. How are you trying to Upload the Sketch? Via ISP?

          1 Reply Last reply
          0
          • J jovo

            Spend some time today researching this topic.
            I concluded that I need a step-up anyway since the DHT-22 have a min Vcc of 3.3 which is easily reached when batteries are depleting, so I bought some of these.

            But this is not enough. I am fascinated by the extreme low power use of what we reported by EasyIoT in the low power guide by lowering the freq of the CPU.

            avrdude -c usbtiny -p m328p -U lfuse:w:0x62:m 
            

            and

            avrdude -c usbtiny -p m328p -U efuse:w:0x07:m
            

            After some struggle I manage to burn the fuses (or at least AVRDUDE gave me a successful status). Then I edited the boards.txt and selected the EasyIoT board from the list. The problem I have now is that I cannot upload sketches anymore:
            avrdude: stk500_recv(): programmer is not responding
            avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x15
            I played a bit with the com speed setting in board.txt (as this resolved also my fuse burn issue earlier). Unfortunately, no success...

            Now my questions:

            • anybody similar experience after fuse buring and how to resolve this?
            • how can I revert back to the original fuse setting so I can use my arduino again?
            funky81F Offline
            funky81F Offline
            funky81
            wrote on last edited by funky81
            #8

            @jovo my experiences quite different with you. I can successfully compiled and upload the sketches. Unfortunately, the packet from node, never reach gateway. Even though I pump the NRF24L01+ power with step up regulator, but still the same. Since then, I never try it with 1MHz again...

            To revert it again, burn your fuses again. Check this in Using the internal clock section

            1 Reply Last reply
            0
            • J Offline
              J Offline
              Jan Gatzke
              wrote on last edited by Jan Gatzke
              #9

              I think you need a modified Arduino bootloader for 1 Mhz operation. The bootloader does the serial communication wich is very timing critical. And when the bootloader is compiled with 8 mhz the baud value simply doesn't match.

              Regarding power consumption...did you remove the LEDs? The power LED alone needs about 2 mA. This would explain your values.

              funky81F 1 Reply Last reply
              0
              • J Jan Gatzke

                I think you need a modified Arduino bootloader for 1 Mhz operation. The bootloader does the serial communication wich is very timing critical. And when the bootloader is compiled with 8 mhz the baud value simply doesn't match.

                Regarding power consumption...did you remove the LEDs? The power LED alone needs about 2 mA. This would explain your values.

                funky81F Offline
                funky81F Offline
                funky81
                wrote on last edited by
                #10

                @Jan-Gatzke mind to share it how?

                1 Reply Last reply
                0
                • J Offline
                  J Offline
                  Jan Gatzke
                  wrote on last edited by Jan Gatzke
                  #11

                  I have never done this before. But basically you need the c code of the bootloader for your Arduino. Then open it with a text editor and change the f_cpu value. Then compile and flash it using avrdude.

                  I googled and found this:
                  http://angryelectron.com/how-to-update-the-bootloader-on-arduino-pro-mini-328/

                  I would use Atmel studio for these low level tasks if you are running on Windows.

                  J 1 Reply Last reply
                  0
                  • J Jan Gatzke

                    I have never done this before. But basically you need the c code of the bootloader for your Arduino. Then open it with a text editor and change the f_cpu value. Then compile and flash it using avrdude.

                    I googled and found this:
                    http://angryelectron.com/how-to-update-the-bootloader-on-arduino-pro-mini-328/

                    I would use Atmel studio for these low level tasks if you are running on Windows.

                    J Offline
                    J Offline
                    Jan Gatzke
                    wrote on last edited by
                    #12

                    @Jan-Gatzke said:

                    I have never done this before. But basically you need the c code of the bootloader for your Arduino. Then open it with a text editor and change the f_cpu value. Then compile and flash it using avrdude.

                    I googled and found this:
                    http://angryelectron.com/how-to-update-the-bootloader-on-arduino-pro-mini-328/

                    I would use Atmel studio for these low level tasks if you are running in Windows.

                    Edit: Found already compiled bootloaders here: http://forum.arduino.cc/index.php?topic=160647.15

                    funky81F 1 Reply Last reply
                    1
                    • J Jan Gatzke

                      @Jan-Gatzke said:

                      I have never done this before. But basically you need the c code of the bootloader for your Arduino. Then open it with a text editor and change the f_cpu value. Then compile and flash it using avrdude.

                      I googled and found this:
                      http://angryelectron.com/how-to-update-the-bootloader-on-arduino-pro-mini-328/

                      I would use Atmel studio for these low level tasks if you are running in Windows.

                      Edit: Found already compiled bootloaders here: http://forum.arduino.cc/index.php?topic=160647.15

                      funky81F Offline
                      funky81F Offline
                      funky81
                      wrote on last edited by
                      #13

                      @Jan-Gatzke Thank you very much Sir....Now this is getting excited :+1:

                      funky81F 1 Reply Last reply
                      0
                      • J Offline
                        J Offline
                        jovo
                        wrote on last edited by jovo
                        #14

                        I broke one Arduino by removing the power regulator
                        I broke another one while playing with the fuses (I think?) in an attempt to set the 1Mhz system clock.
                        I tried all suggested "low power/sleep/pwr_dwn sketches" I came across, but one of them was giving my a better power consumption then the default "sleep time" option used in the sketches of mysensors.
                        The only thing that was working as removing the LED. This saves approx. 1.2mA.

                        I am now at 3.3mA sleep consumption. Adding the DC-DC power booster to the config once received from China, so I expect to add another extra mA consumption.
                        Not sure if 4.5mA sleep pwr draw is sustainable for battery operators (only 26 days on a 2800mAh batterypack).

                        Since I believe that lowering the clock rate could be the solution for my project, I ordered some more mini-pro's to experiment more with the fuses setting.

                        Overall, despite the mixed results, still a very interesting project where I had great learning on my rusty hardware and programming skills....

                        Any further suggestions to improve pwr consumption remain always welcome :-)

                        AWIA 1 Reply Last reply
                        0
                        • J jovo

                          I broke one Arduino by removing the power regulator
                          I broke another one while playing with the fuses (I think?) in an attempt to set the 1Mhz system clock.
                          I tried all suggested "low power/sleep/pwr_dwn sketches" I came across, but one of them was giving my a better power consumption then the default "sleep time" option used in the sketches of mysensors.
                          The only thing that was working as removing the LED. This saves approx. 1.2mA.

                          I am now at 3.3mA sleep consumption. Adding the DC-DC power booster to the config once received from China, so I expect to add another extra mA consumption.
                          Not sure if 4.5mA sleep pwr draw is sustainable for battery operators (only 26 days on a 2800mAh batterypack).

                          Since I believe that lowering the clock rate could be the solution for my project, I ordered some more mini-pro's to experiment more with the fuses setting.

                          Overall, despite the mixed results, still a very interesting project where I had great learning on my rusty hardware and programming skills....

                          Any further suggestions to improve pwr consumption remain always welcome :-)

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

                          @jovo I had some problems with mini's I ordered which can be "switched" between 3.3 and 5v. These mini's use a voltage divider that consumes around 2 mA.! Apart from the led and regulator I alse needed to remove this divider to get to less consumption.
                          upload-4891e188-701a-4c2b-a302-afd4caa9b6b0

                          J hansiiiH 2 Replies Last reply
                          0
                          • AWIA AWI

                            @jovo I had some problems with mini's I ordered which can be "switched" between 3.3 and 5v. These mini's use a voltage divider that consumes around 2 mA.! Apart from the led and regulator I alse needed to remove this divider to get to less consumption.
                            upload-4891e188-701a-4c2b-a302-afd4caa9b6b0

                            J Offline
                            J Offline
                            jovo
                            wrote on last edited by
                            #16

                            @AWI: Tx for the feedback. I checked with my mini's. I got both versions: 5v and 3v3 (ordered from BEEStore). They seems not to be switchable. they 3v3 one have a 8Mhz crystal and the regulator (AMS 1117) for 3v3. the 5v one has 16Mhz crystal and a 5v version of this regulator.

                            I was wondering, in my design I plan to power the board directly from the VCC pin (not the raw). I suspect that the regulator doesn't consume much in this case. let me see if I can find a datasheet of this component.

                            1 Reply Last reply
                            0
                            • J Offline
                              J Offline
                              jovo
                              wrote on last edited by jovo
                              #17

                              Humm, from the AMS1117 datasheet:

                              Quiescent Current AMS1117: 5-11mA.
                              It looks like to has some significant quiescent current.
                              Perhaps for me good idea to research a little further in this direction.

                              1 Reply Last reply
                              0
                              • funky81F funky81

                                @Jan-Gatzke Thank you very much Sir....Now this is getting excited :+1:

                                funky81F Offline
                                funky81F Offline
                                funky81
                                wrote on last edited by
                                #18

                                @Jan-Gatzke i've tried this bootloader with several of my arduino pro mini.
                                most of them run @ 1 Mhz, thanks to you. but somehow the current consumption dont decrease. but i've check with my usbtiny for the fuse, it already @ 1MHz....

                                no clue what happen here

                                1 Reply Last reply
                                0
                                • AWIA AWI

                                  @jovo I had some problems with mini's I ordered which can be "switched" between 3.3 and 5v. These mini's use a voltage divider that consumes around 2 mA.! Apart from the led and regulator I alse needed to remove this divider to get to less consumption.
                                  upload-4891e188-701a-4c2b-a302-afd4caa9b6b0

                                  hansiiiH Offline
                                  hansiiiH Offline
                                  hansiii
                                  wrote on last edited by
                                  #19

                                  @AWI Hello AWI, sorry i know the topic is old, but i have exatly the same minis bought. Can you tell me what i have to remove or can you attach a photo. many thanks
                                  greetings
                                  hansiii

                                  AWIA 1 Reply Last reply
                                  0
                                  • hansiiiH hansiii

                                    @AWI Hello AWI, sorry i know the topic is old, but i have exatly the same minis bought. Can you tell me what i have to remove or can you attach a photo. many thanks
                                    greetings
                                    hansiii

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

                                    @hansiii that was certainly a while ago.. I removed all resistors near the voltage selector and the regulator (5 legs)

                                    hansiiiH 1 Reply Last reply
                                    0
                                    • AWIA AWI

                                      @hansiii that was certainly a while ago.. I removed all resistors near the voltage selector and the regulator (5 legs)

                                      hansiiiH Offline
                                      hansiiiH Offline
                                      hansiii
                                      wrote on last edited by
                                      #21

                                      @AWI Thank you!
                                      now i have removed the three resitors, before that I had only removed the regulator. Now the battery drain
                                      is away.
                                      0_1474006120595_Arduino_pro.jpg

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


                                      16

                                      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
                                      • MySensors
                                      • OpenHardware.io
                                      • Categories
                                      • Recent
                                      • Tags
                                      • Popular