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. Development
  3. How to get battery volt / percentage message send to mqtt?

How to get battery volt / percentage message send to mqtt?

Scheduled Pinned Locked Moved Development
15 Posts 3 Posters 1.8k Views 3 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.
  • YveauxY Yveaux

    @gohan said in How to get battery volt / percentage message send to mqtt?:

    I think this needs to be a global variable

    Or prefix it with the 'static' keyword to indicate its value should persist over multiple runs.

    M Offline
    M Offline
    Mr_sensor
    wrote on last edited by
    #4

    @yveaux changed the position of int oldBatteryPcnt = 0; outside of the loop and added the static prefix static int oldBatteryPcnt = 0;
    Still not giving me the right result the first message seem ok but than it only has 0 ?

    Child ID 2Battery Voltage: 0.43 V
    Battery Percent: 12 %
    2289 TSF:MSG:SEND,2-2-0-0,s=255,c=3,t=0,pt=1,l=1,sg=0,ft=0,st=OK:12
    2297 MCO:SLP:MS=60000,SMS=0,I1=255,M1=255,I2=255,M2=255
    2304 TSF:TDI:TSL
    2306 MCO:SLP:WUP=-1
    2308 TSF:TRI:TSB
    2363 TSF:MSG:SEND,2-2-0-0,s=1,c=1,t=0,pt=7,l=5,sg=0,ft=0,st=OK:19.6
    T: 19.56
    2396 TSF:MSG:SEND,2-2-0-0,s=0,c=1,t=1,pt=7,l=5,sg=0,ft=0,st=OK:39.7
    H: 39.69
    0
    Child ID 2Battery Voltage: 0.00 V
    Battery Percent: 0 %
    2408 TSF:MSG:SEND,2-2-0-0,s=255,c=3,t=0,pt=1,l=1,sg=0,ft=0,st=OK:0
    2414 MCO:SLP:MS=60000,SMS=0,I1=255,M1=255,I2=255,M2=255
    2420 TSF:TDI:TSL
    2422 MCO:SLP:WUP=-1
    2426 TSF:TRI:TSB
    2482 TSF:MSG:SEND,2-2-0-0,s=1,c=1,t=0,pt=7,l=5,sg=0,ft=0,st=OK:19.6
    T: 19.57
    2512 TSF:MSG:SEND,2-2-0-0,s=0,c=1,t=1,pt=7,l=5,sg=0,ft=0,st=OK:39.5
    H: 39.52
    0
    Child ID 2Battery Voltage: 0.00 V
    Battery Percent: 0 %
    2523 MCO:SLP:MS=60000,SMS=0,I1=255,M1=255,I2=255,M2=255
    2531 TSF:TDI:TSL```
    1 Reply Last reply
    0
    • gohanG Offline
      gohanG Offline
      gohan
      Mod
      wrote on last edited by
      #5

      it looks as the analogread keeps returning zero

      M 1 Reply Last reply
      0
      • gohanG gohan

        it looks as the analogread keeps returning zero

        M Offline
        M Offline
        Mr_sensor
        wrote on last edited by
        #6

        @gohan Tried to find out what causing that but can not figure it out. I'm bot a real coderer so its trial and error :) and trying to understand form other sketches / posts. Any idea where to look for?

        1 Reply Last reply
        0
        • gohanG Offline
          gohanG Offline
          gohan
          Mod
          wrote on last edited by
          #7

          try adding a delay(500) before the analogread

          M 1 Reply Last reply
          0
          • gohanG gohan

            try adding a delay(500) before the analogread

            M Offline
            M Offline
            Mr_sensor
            wrote on last edited by
            #8

            @gohan said in How to get battery volt / percentage message send to mqtt?:

            delay(500)

            Hi, tried that (already tried it with wait). Now I added it here:

            delay(500);
                int sensorValue = analogRead(BATTERY_SENSE_PIN);
            

            Also tried it here:

             if (oldBatteryPcnt != batteryPcnt) {
                    // Power up radio after sleep
                    delay(500);       
                    sendBatteryLevel(batteryPcnt);
                    oldBatteryPcnt = batteryPcnt;
                } 
                                                                                                                                                                                  
              sleep(SLEEP_TIME); //sleep a bit  ```
            
            Both did not help still ending up with 0 . 
            So what should be the best place the right place to put the delay?
            1 Reply Last reply
            0
            • gohanG Offline
              gohanG Offline
              gohan
              Mod
              wrote on last edited by
              #9

              the second one is useless. It is odd that it misses the analog reads. What AVR boards version are you using?

              M 1 Reply Last reply
              0
              • gohanG gohan

                the second one is useless. It is odd that it misses the analog reads. What AVR boards version are you using?

                M Offline
                M Offline
                Mr_sensor
                wrote on last edited by
                #10

                @gohan I'm using the EasyPCB board with an arduino pro mini 3,3v

                1 Reply Last reply
                0
                • gohanG Offline
                  gohanG Offline
                  gohan
                  Mod
                  wrote on last edited by
                  #11

                  I mean in Arduino IDE library manager

                  M 1 Reply Last reply
                  0
                  • gohanG gohan

                    I mean in Arduino IDE library manager

                    M Offline
                    M Offline
                    Mr_sensor
                    wrote on last edited by
                    #12

                    @gohan

                    Arduino Pro or Pro Mini
                    Programmer AVR ISP
                    ATmega328P (3,3v 8mhz)

                    M 1 Reply Last reply
                    0
                    • M Mr_sensor

                      @gohan

                      Arduino Pro or Pro Mini
                      Programmer AVR ISP
                      ATmega328P (3,3v 8mhz)

                      M Offline
                      M Offline
                      Mr_sensor
                      wrote on last edited by
                      #13

                      Still not getting it working! Any thoughts on this?

                      1 Reply Last reply
                      0
                      • gohanG Offline
                        gohanG Offline
                        gohan
                        Mod
                        wrote on last edited by
                        #14

                        Try a simple example sketch that reads the analog pin just to make sure the hardware is OK, or try another pro mini

                        M 1 Reply Last reply
                        0
                        • gohanG gohan

                          Try a simple example sketch that reads the analog pin just to make sure the hardware is OK, or try another pro mini

                          M Offline
                          M Offline
                          Mr_sensor
                          wrote on last edited by
                          #15

                          @gohan Ok will try that see if I made a fault somewhere

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


                          10

                          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