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. OpenHardware.io
  3. 💬 Button size radionode with sensors swarm extension

💬 Button size radionode with sensors swarm extension

Scheduled Pinned Locked Moved OpenHardware.io
atsha204aflashhumidityrf69lightuv lightbatterymysensortemperatureota
189 Posts 28 Posters 40.5k Views 25 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.
  • G Offline
    G Offline
    Gerator
    wrote on last edited by
    #170

    Hi @koresh I'm having problems with battery monitor. Trying to find out what's wrong, I have realiced that A6 analog reads from regulator output. So It allways reports 3,3V, isn't it?

    Also, I read that unregulated could go up to 6,5V. Wouldn't this destroy radio module? I think I'm missing something.

    Thanks.

    KoreshK 1 Reply Last reply
    0
    • D Offline
      D Offline
      diogoc
      wrote on last edited by
      #171

      Hi. Do you have unassembled pcbs to sell?

      KoreshK 1 Reply Last reply
      0
      • G Gerator

        Hi @koresh I'm having problems with battery monitor. Trying to find out what's wrong, I have realiced that A6 analog reads from regulator output. So It allways reports 3,3V, isn't it?

        Also, I read that unregulated could go up to 6,5V. Wouldn't this destroy radio module? I think I'm missing something.

        Thanks.

        KoreshK Offline
        KoreshK Offline
        Koresh
        Contest Winner
        wrote on last edited by
        #172

        @gerator Oh.. so sorry. It is new forum reporting system. Didn't saw your message.
        A6 reads unregulated voltage (3.5-6.5V) through divider (1/3). So it can't destroyed nothing.

        1 Reply Last reply
        0
        • D diogoc

          Hi. Do you have unassembled pcbs to sell?

          KoreshK Offline
          KoreshK Offline
          Koresh
          Contest Winner
          wrote on last edited by
          #173

          @diogoc I will try to find them. But all of components are 0402... :eyes:

          1 Reply Last reply
          0
          • bjornhallbergB Offline
            bjornhallbergB Offline
            bjornhallberg
            Hero Member
            wrote on last edited by
            #174

            @Koresh I still have a bunch of v1 boards that I never got to work because of power consumption (I presume). I thought I'd make one more attempt.

            I tried bridging the jumper and I'm using a 2032 battery. Consumption varies between 2 and 4mA on different boards. On some boards it fluctuates a lot. The instructions above are not immediately clear. Do I have to remove the LDO AND capacitors as well?

            1 Reply Last reply
            0
            • Y Offline
              Y Offline
              yury
              wrote on last edited by
              #175

              @bjornhallberg

              while measuring current draw , was there FDTI adapter connected also?

              bjornhallbergB 1 Reply Last reply
              0
              • Y yury

                @bjornhallberg

                while measuring current draw , was there FDTI adapter connected also?

                bjornhallbergB Offline
                bjornhallbergB Offline
                bjornhallberg
                Hero Member
                wrote on last edited by bjornhallberg
                #176

                @yury No I ran them on just a 2032 battery at the time, just had it in an external battery holder. I also removed the LDO on one of the boards and bridged the two top pads, with no apparent effect.

                Unless there is something wrong with my DMM.

                alexsh1A 1 Reply Last reply
                0
                • bjornhallbergB bjornhallberg

                  @yury No I ran them on just a 2032 battery at the time, just had it in an external battery holder. I also removed the LDO on one of the boards and bridged the two top pads, with no apparent effect.

                  Unless there is something wrong with my DMM.

                  alexsh1A Offline
                  alexsh1A Offline
                  alexsh1
                  wrote on last edited by
                  #177

                  @bjornhallberg I have the same v1 board you have with a sleeping power consumption being 5uA. I also have Si1132 sensor soldered and had some issues with power consumption initially as the standard Si1132 lib did not implement sleep function for this sensor.

                  1. what sensors do you have? Do they properly put to sleep? BH1760?
                  2. can you share the sketch?
                  3. removing the LDO will not help you to bring down consumption from 3mA. 3mA most likely mean your radio is not sleeping. Such consumption will kill CR2032 very quickly - no chance running the board on such consumption
                  4. did you try a different multimeter?
                  5. there could be a problem with one of the tantalum capacitor. @yury could you remind which one has to be removed please?

                  I suggest you start with 5)

                  bjornhallbergB 1 Reply Last reply
                  0
                  • alexsh1A alexsh1

                    @bjornhallberg I have the same v1 board you have with a sleeping power consumption being 5uA. I also have Si1132 sensor soldered and had some issues with power consumption initially as the standard Si1132 lib did not implement sleep function for this sensor.

                    1. what sensors do you have? Do they properly put to sleep? BH1760?
                    2. can you share the sketch?
                    3. removing the LDO will not help you to bring down consumption from 3mA. 3mA most likely mean your radio is not sleeping. Such consumption will kill CR2032 very quickly - no chance running the board on such consumption
                    4. did you try a different multimeter?
                    5. there could be a problem with one of the tantalum capacitor. @yury could you remind which one has to be removed please?

                    I suggest you start with 5)

                    bjornhallbergB Offline
                    bjornhallbergB Offline
                    bjornhallberg
                    Hero Member
                    wrote on last edited by bjornhallberg
                    #178

                    @alexsh1 Thanks for the suggestions! Reassuring to know that you succeeded.

                    1. I haven't added any sensors so it's just the default ones.
                    2. https://github.com/EasySensors/ButtonSizeNode ... may need some cleaning up @Koresh or do we use v2 code for v1 sensor as well?
                    3. I thought as much ... damn. I'm using the CW version radio with the adapter plate. I also thought about the radio but unlike the NRF radio this one should work with no counterfeit units?
                    4. No my other DMM was out of batteries. Found my old crappy DMM and it says the same, ~2mA.
                    5. I did remove both caps and it's still at ~2mA.

                    You're probably right about something not sleeping. Or else I've done a horrible soldering job on the four radios I've attached so far. All four sensors behave pretty much the same.

                    Also, at least on Domoticz they changed things around now so you have to use V_LEVEL instead of V_LIGHT_LEVEL or what? https://www.domoticz.com/forum/viewtopic.php?t=18577 With V_LIGHT_LEVEL I get some incomprehensible percent value reported.

                    alexsh1A 1 Reply Last reply
                    0
                    • bjornhallbergB bjornhallberg

                      @alexsh1 Thanks for the suggestions! Reassuring to know that you succeeded.

                      1. I haven't added any sensors so it's just the default ones.
                      2. https://github.com/EasySensors/ButtonSizeNode ... may need some cleaning up @Koresh or do we use v2 code for v1 sensor as well?
                      3. I thought as much ... damn. I'm using the CW version radio with the adapter plate. I also thought about the radio but unlike the NRF radio this one should work with no counterfeit units?
                      4. No my other DMM was out of batteries. Found my old crappy DMM and it says the same, ~2mA.
                      5. I did remove both caps and it's still at ~2mA.

                      You're probably right about something not sleeping. Or else I've done a horrible soldering job on the four radios I've attached so far. All four sensors behave pretty much the same.

                      Also, at least on Domoticz they changed things around now so you have to use V_LEVEL instead of V_LIGHT_LEVEL or what? https://www.domoticz.com/forum/viewtopic.php?t=18577 With V_LIGHT_LEVEL I get some incomprehensible percent value reported.

                      alexsh1A Offline
                      alexsh1A Offline
                      alexsh1
                      wrote on last edited by
                      #179

                      @bjornhallberg

                      1. No - please double check the board. There are options for a few sensors. Which ones do you have. Sensors on board.

                      2. Code really depends on sensors on board you have.

                      3. This is not about counterfeit radio. Just radio NOT SLEEPING. That's it.

                      4. OK.

                      5. OK

                      First thing first. Let's deal with your sleeping problem.
                      Identify which sensors you have on board or post a good quality photo of the board.
                      Try to use minimum sketch (see commends below - choose the correct Mhz band):
                      and measure the current

                      #define MY_DEBUG
                      #define MY_RADIO_RFM69
                      // Please use one!!!!!!
                      //#define MY_RFM69_FREQUENCY   RF69_433MHZ
                      //#define MY_RFM69_FREQUENCY   RF69_868MHZ
                      //#define MY_RFM69_FREQUENCY   RF69_915MHZ
                      #define MY_NODE_ID AUTO
                      #define MY_TRANSPORT_UPLINK_CHECK_DISABLED
                      #define MY_PARENT_NODE_IS_STATIC
                      #define MY_PARENT_NODE_ID 0
                      
                      #include <Wire.h>
                      #include <BH1750.h> //Make sure you are using this one https://github.com/claws/BH1750
                      BH1750 lightMeter;
                      #include "SparkFun_Si7021_Breakout_Library.h"
                      Weather sensor;
                      #include <MySensors.h>
                      #define SPIFLASH_BLOCKERASE_32K   0xD8
                      #define SPIFLASH_CHIPERASE        0x60
                      
                      
                      void setup() {
                      lightMeter.begin(BH1750::ONE_TIME_LOW_RES_MODE);
                        noInterrupts();
                        _flash.initialize();
                        _flash.sleep();
                        interrupts();
                      }
                      
                      
                      void loop() {
                      lightMeter.begin(BH1750::ONE_TIME_LOW_RES_MODE);
                      lux = lightMeter.readLightLevel();
                      Serial.print("Lux="); Serial.println(lux);
                      sleep(10000);
                      }
                      
                      1 Reply Last reply
                      0
                      • bjornhallbergB Offline
                        bjornhallbergB Offline
                        bjornhallberg
                        Hero Member
                        wrote on last edited by
                        #180

                        @alexsh1 I may have made a bit of a mistake with some glitchy chinese test probes. De-glitched cables and connected to a proper lab power supply gave very different readings (with the default git-sketch) ...

                        0_1544111693735_IMG_20181206_162510-01.jpeg

                        Still a bit confused over the differing readings. I get that the board I stripped from regulator and capacitors would perform better though. So do I have to do the same for all the other boards as well? Of course, I could save the worst performing boards for later and run them on 2xAA or something in places where space isn't an issue.

                        KoreshK alexsh1A 2 Replies Last reply
                        0
                        • bjornhallbergB bjornhallberg

                          @alexsh1 I may have made a bit of a mistake with some glitchy chinese test probes. De-glitched cables and connected to a proper lab power supply gave very different readings (with the default git-sketch) ...

                          0_1544111693735_IMG_20181206_162510-01.jpeg

                          Still a bit confused over the differing readings. I get that the board I stripped from regulator and capacitors would perform better though. So do I have to do the same for all the other boards as well? Of course, I could save the worst performing boards for later and run them on 2xAA or something in places where space isn't an issue.

                          KoreshK Offline
                          KoreshK Offline
                          Koresh
                          Contest Winner
                          wrote on last edited by
                          #181

                          Hi @bjornhallberg.
                          I've done many tests today with your code. All tested boards were the newer ones. So I completely had no ideas until I read your last message. Now all is clear for me. You have battery draining ~10-100ua, not 1-2mA. As I see your boards contain 107J capacitors. It was an absolutely failed batch of capacitors. We resoldered all of these capacitors on all the boards after we had found this problem with @alexsh1. Unfortunatelly some of these boards had been sent until we found this problem. We are so sorry you had to deal with these failed boards. I suggest I send you some new tested buttonsized v1 boards to you. Also I can send good capacitors to rework failed boards and some of my new interesting boards for free.

                          bjornhallbergB 1 Reply Last reply
                          1
                          • bjornhallbergB bjornhallberg

                            @alexsh1 I may have made a bit of a mistake with some glitchy chinese test probes. De-glitched cables and connected to a proper lab power supply gave very different readings (with the default git-sketch) ...

                            0_1544111693735_IMG_20181206_162510-01.jpeg

                            Still a bit confused over the differing readings. I get that the board I stripped from regulator and capacitors would perform better though. So do I have to do the same for all the other boards as well? Of course, I could save the worst performing boards for later and run them on 2xAA or something in places where space isn't an issue.

                            alexsh1A Offline
                            alexsh1A Offline
                            alexsh1
                            wrote on last edited by
                            #182

                            @bjornhallberg @Koresh That's what I wrote a few posts above - start with the capacitors :-)

                            My suggestion - get a decent DMM. Brymen BM235 or 121GW or any Fluke.
                            Measuring a sleeping current is challenging and some unexpansive Chinese DMM manage it just really well. BUT! You do not want to waist your time just because your meter is crap and was completely off on some readings.

                            1 Reply Last reply
                            1
                            • KoreshK Koresh

                              Hi @bjornhallberg.
                              I've done many tests today with your code. All tested boards were the newer ones. So I completely had no ideas until I read your last message. Now all is clear for me. You have battery draining ~10-100ua, not 1-2mA. As I see your boards contain 107J capacitors. It was an absolutely failed batch of capacitors. We resoldered all of these capacitors on all the boards after we had found this problem with @alexsh1. Unfortunatelly some of these boards had been sent until we found this problem. We are so sorry you had to deal with these failed boards. I suggest I send you some new tested buttonsized v1 boards to you. Also I can send good capacitors to rework failed boards and some of my new interesting boards for free.

                              bjornhallbergB Offline
                              bjornhallbergB Offline
                              bjornhallberg
                              Hero Member
                              wrote on last edited by
                              #183

                              @koresh Package went under the "Postnord" radar! Woohoo, perfect! I will start replacing the old capacitors and finally be able to deploy the sensors. Very nice of you to include some product samples as well. Really excited about these sensors!

                              0_1545404328533_IMG_5979.jpg

                              1 Reply Last reply
                              0
                              • Christoph BlankC Offline
                                Christoph BlankC Offline
                                Christoph Blank
                                wrote on last edited by
                                #184

                                Hi guys, quick question: I'm using a LiFePo4 3.2V battery directly on the board (sensors part removed).
                                Somehow the battery percentage always shows 100 - how should I change the default code to make this work?

                                Right now I'm using the code like here: https://github.com/EasySensors/ButtonSizeNode/blob/master/ButtonSizeNode.ino

                                KoreshK 1 Reply Last reply
                                0
                                • Christoph BlankC Christoph Blank

                                  Hi guys, quick question: I'm using a LiFePo4 3.2V battery directly on the board (sensors part removed).
                                  Somehow the battery percentage always shows 100 - how should I change the default code to make this work?

                                  Right now I'm using the code like here: https://github.com/EasySensors/ButtonSizeNode/blob/master/ButtonSizeNode.ino

                                  KoreshK Offline
                                  KoreshK Offline
                                  Koresh
                                  Contest Winner
                                  wrote on last edited by
                                  #185

                                  @christoph-blank Hi, thanks for using this board. In the first version of this board the divider is conected after LDO, so you can't measure voltage above 3.3V. In the second version the divider is connected to the battery directly. You use 3.2v battery so it is not problem for you. But LiFePo4 battery has very flat discharge curve so it can be hard to read this level with reasonable accuracy.
                                  alt text
                                  I will try to find LiFePo4 battery and add some piece of code soon. Yet you can play with followed code

                                    // Get the battery Voltage
                                    int sensorValue = analogRead(BATTERY_SENSE_PIN);
                                    // 1M, 470K divider across battery and using internal ADC ref of 1.1V1
                                    // ((1e6+470e3)/470e3)*1.1 = Vmax = 3.44 Volts
                                    /* The MySensors Lib uses internal ADC ref of 1.1V which means analogRead of the pin connected to 470kOhms Battery Devider reaches  
                                     * 1023 when voltage on the divider is around 3.44 Volts. 2.5 volts is equal to 750. 2 volts is equal to 600. 
                                     * RFM 69 CW works stable up to 2 volts. Assume 2.5 V is 0% and 1023 is 100% battery charge    
                                     * RFM 69 HCW works stable up to 2.5 volts (sometimes it can work up to 2.0V). Assume 2.5 V is 0% and 1023 is 100% battery charge  
                                     * 3.3V ~ 1023
                                     * 3.0V ~ 900
                                     * 2.5V ~ 750 
                                     * 2.0V ~ 600
                                     */
                                  
                                  #ifdef  MY_IS_RFM69HW
                                    int batteryPcnt = (sensorValue - 750)  / 1.5;
                                  #else
                                    int batteryPcnt = (sensorValue - 600)  / 3;
                                  #endif
                                  
                                  Christoph BlankC 1 Reply Last reply
                                  0
                                  • KoreshK Koresh

                                    @christoph-blank Hi, thanks for using this board. In the first version of this board the divider is conected after LDO, so you can't measure voltage above 3.3V. In the second version the divider is connected to the battery directly. You use 3.2v battery so it is not problem for you. But LiFePo4 battery has very flat discharge curve so it can be hard to read this level with reasonable accuracy.
                                    alt text
                                    I will try to find LiFePo4 battery and add some piece of code soon. Yet you can play with followed code

                                      // Get the battery Voltage
                                      int sensorValue = analogRead(BATTERY_SENSE_PIN);
                                      // 1M, 470K divider across battery and using internal ADC ref of 1.1V1
                                      // ((1e6+470e3)/470e3)*1.1 = Vmax = 3.44 Volts
                                      /* The MySensors Lib uses internal ADC ref of 1.1V which means analogRead of the pin connected to 470kOhms Battery Devider reaches  
                                       * 1023 when voltage on the divider is around 3.44 Volts. 2.5 volts is equal to 750. 2 volts is equal to 600. 
                                       * RFM 69 CW works stable up to 2 volts. Assume 2.5 V is 0% and 1023 is 100% battery charge    
                                       * RFM 69 HCW works stable up to 2.5 volts (sometimes it can work up to 2.0V). Assume 2.5 V is 0% and 1023 is 100% battery charge  
                                       * 3.3V ~ 1023
                                       * 3.0V ~ 900
                                       * 2.5V ~ 750 
                                       * 2.0V ~ 600
                                       */
                                    
                                    #ifdef  MY_IS_RFM69HW
                                      int batteryPcnt = (sensorValue - 750)  / 1.5;
                                    #else
                                      int batteryPcnt = (sensorValue - 600)  / 3;
                                    #endif
                                    
                                    Christoph BlankC Offline
                                    Christoph BlankC Offline
                                    Christoph Blank
                                    wrote on last edited by
                                    #186

                                    @koresh said in 💬 Button size radionode with sensors swarm extension:

                                    @christoph-blank Hi, thanks for using this board. In the first version of this board the divider is conected after LDO, so you can't measure voltage above 3.3V. In the second version the divider is connected to the battery directly. You use 3.2v battery so it is not problem for you. But LiFePo4 battery has very flat discharge curve so it can be hard to read this level with reasonable accuracy.
                                    alt text
                                    I will try to find LiFePo4 battery and add some piece of code soon. Yet you can play with followed code

                                      // Get the battery Voltage
                                      int sensorValue = analogRead(BATTERY_SENSE_PIN);
                                      // 1M, 470K divider across battery and using internal ADC ref of 1.1V1
                                      // ((1e6+470e3)/470e3)*1.1 = Vmax = 3.44 Volts
                                      /* The MySensors Lib uses internal ADC ref of 1.1V which means analogRead of the pin connected to 470kOhms Battery Devider reaches  
                                       * 1023 when voltage on the divider is around 3.44 Volts. 2.5 volts is equal to 750. 2 volts is equal to 600. 
                                       * RFM 69 CW works stable up to 2 volts. Assume 2.5 V is 0% and 1023 is 100% battery charge    
                                       * RFM 69 HCW works stable up to 2.5 volts (sometimes it can work up to 2.0V). Assume 2.5 V is 0% and 1023 is 100% battery charge  
                                       * 3.3V ~ 1023
                                       * 3.0V ~ 900
                                       * 2.5V ~ 750 
                                       * 2.0V ~ 600
                                       */
                                    
                                    #ifdef  MY_IS_RFM69HW
                                      int batteryPcnt = (sensorValue - 750)  / 1.5;
                                    #else
                                      int batteryPcnt = (sensorValue - 600)  / 3;
                                    #endif
                                    

                                    Thank you very much, what are the other differences between V1 and V2? I believe I have V1 but I'm not sure.
                                    The above code is what I currently use, and I removed the sensor part of the module. However, it shows 100% until the end (until it's not sending anymore).

                                    Looking forward to your tests!
                                    Christoph

                                    1 Reply Last reply
                                    0
                                    • KoreshK Offline
                                      KoreshK Offline
                                      Koresh
                                      Contest Winner
                                      wrote on last edited by Koresh
                                      #187

                                      Hope will test the new version of this universal board soon. Now it has additional inexpensive accelerometer, magnetic sensor, led, reset button, multifootprint for lora/hw/cw radio without adapter and improoved 4layers design :)
                                      0_1563489045797_IMG_20190709_173131.jpg

                                      1 Reply Last reply
                                      0
                                      • mahesh2000M Offline
                                        mahesh2000M Offline
                                        mahesh2000
                                        wrote on last edited by
                                        #188

                                        hi, this looks great -- is the assembled board, or just the board itself available anywhere? newbie here, i don't know what to do. if i can buy the assembled board, it would be so fantastic. thanks!!!

                                        NeverDieN 1 Reply Last reply
                                        0
                                        • mahesh2000M mahesh2000

                                          hi, this looks great -- is the assembled board, or just the board itself available anywhere? newbie here, i don't know what to do. if i can buy the assembled board, it would be so fantastic. thanks!!!

                                          NeverDieN Offline
                                          NeverDieN Offline
                                          NeverDie
                                          Hero Member
                                          wrote on last edited by
                                          #189

                                          @mahesh2000 https://www.openhardware.io/view/299/Button-size-radionode-with-sensors-swarm-extension

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


                                          14

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.1k

                                          Posts


                                          Copyright 2025 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