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. Hardware
  3. Sensor board w/ liPo charger and fuel gauge +BMP180 +HTU21

Sensor board w/ liPo charger and fuel gauge +BMP180 +HTU21

Scheduled Pinned Locked Moved Hardware
37 Posts 10 Posters 23.5k Views 5 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.
  • AWIA AWI

    @Anticimex Switching the Arduino is probably not a good idea :) but powering up the voltage sensitive sensors with a mosfet switched step-up converter is an option?

    AnticimexA Offline
    AnticimexA Offline
    Anticimex
    Contest Winner
    wrote on last edited by
    #21

    @AWI yes, but why bother with a mosfet for enabling the regulator (if it already have an enable signal)?

    Do you feel secure today? No? Start requiring some signatures and feel better tomorrow ;)

    1 Reply Last reply
    0
    • C Offline
      C Offline
      ceech
      Hardware Contributor
      wrote on last edited by ceech
      #22

      The main reason why I was dragged to the LTC4067 is the fact that it has so called Power path technology. It only uses the battery if there is no other available source of power. The benefit is much longer battery lifetime. It also has a proper 2A Lithium charger. Last but not least is the current monitoring, which can be translated into battery state of charge, which is another thing that interests me.
      I chose the voltage regulator for the fact that is fairly efficient and powerful even for ESP8266 modules and as simple as possible to implement. It only uses 35uA, which is as low as I ever saw. And the LTC4067 has Suspend mode that only uses a couple of uA as well.
      @tbowmo Prices for the HTU21 are lower, for me at least. And since the pinout is the same it is all for the better.
      I'll put some thought into the separate power options. The first thing that can be fairly simply done is to power the Atmega328 from the battery, and the sensors from the regulator.

      1 Reply Last reply
      0
      • C Offline
        C Offline
        ceech
        Hardware Contributor
        wrote on last edited by
        #23

        Which is more useful - an EEPROM or Flash memory chip?

        1 Reply Last reply
        0
        • AWIA Offline
          AWIA Offline
          AWI
          Hero Member
          wrote on last edited by
          #24

          My vote is for flash memory, but no deal breaker

          1 Reply Last reply
          0
          • C Offline
            C Offline
            ceech
            Hardware Contributor
            wrote on last edited by ceech
            #25

            Finally managed to put all things together and made the first two test boards. They look like this:
            03.jpg
            Main new features are LTC4067 lithium battery charger and XC6210, a low consumption voltage regulator.

            The board comes with a Torex XC6210 3.3V voltage regulator . It has low power consumption of 35μA, while delivering at least 700mA. Voltage drop is 50mV @ 100mA.

            LTC4067 battery charger with Automatic Battery Charging/Load Switchover

            It provides power for the circuit and charges the backup single-cell lithium battery while greatly extends battery life. You can monitor the voltages and currents. It has suspend mode, which reduces current consumption to around 40μA. The power source is a small, 5V solar cell. Connections:

            analog input A1 on ATmega 328 is FAULT signal from LTC4067
            analog input A0 on ATmega328 is battery voltage
            analog input A2 is solar cell voltage
            analog input A6 is input current ( I=V/R x 1000 )
            analog input A7 is battery charge current ( I=V/R x 1000 )
            digital output A9 - drive it high to put LTC4067 in SUSPEND mode

            The two trimmer potentiometers are used to determine the current for both the input side - to better match the internal resistance of the solar cell - and for the battery charge current. At shipping they are both set to about 2.5kOhm, which set both currents to about 75mA. Please refer to technical data sheet of LTC4067 for more information. It is available here:
            Official web page for LTC4067

            Or, ask me.

            This is the back side of the board with place for BMP180, HTU21 and EEPROM chip:
            03_02.jpg

            SparkmanS 1 Reply Last reply
            4
            • L Offline
              L Offline
              lafleur
              wrote on last edited by
              #26

              It need an RFM69 radio on the board....??

              C 1 Reply Last reply
              0
              • H Offline
                H Offline
                hawk_2050
                wrote on last edited by
                #27

                @ceech , I recently bought one of the predecessor boards to this new design. I was wondering if you had a better feel yet on likely end user pricing for this new one? Do you plan on populating all active parts, or providing them for users to place themselves? Really looking forward to this board becoming available.

                1 Reply Last reply
                0
                • C ceech

                  Finally managed to put all things together and made the first two test boards. They look like this:
                  03.jpg
                  Main new features are LTC4067 lithium battery charger and XC6210, a low consumption voltage regulator.

                  The board comes with a Torex XC6210 3.3V voltage regulator . It has low power consumption of 35μA, while delivering at least 700mA. Voltage drop is 50mV @ 100mA.

                  LTC4067 battery charger with Automatic Battery Charging/Load Switchover

                  It provides power for the circuit and charges the backup single-cell lithium battery while greatly extends battery life. You can monitor the voltages and currents. It has suspend mode, which reduces current consumption to around 40μA. The power source is a small, 5V solar cell. Connections:

                  analog input A1 on ATmega 328 is FAULT signal from LTC4067
                  analog input A0 on ATmega328 is battery voltage
                  analog input A2 is solar cell voltage
                  analog input A6 is input current ( I=V/R x 1000 )
                  analog input A7 is battery charge current ( I=V/R x 1000 )
                  digital output A9 - drive it high to put LTC4067 in SUSPEND mode

                  The two trimmer potentiometers are used to determine the current for both the input side - to better match the internal resistance of the solar cell - and for the battery charge current. At shipping they are both set to about 2.5kOhm, which set both currents to about 75mA. Please refer to technical data sheet of LTC4067 for more information. It is available here:
                  Official web page for LTC4067

                  Or, ask me.

                  This is the back side of the board with place for BMP180, HTU21 and EEPROM chip:
                  03_02.jpg

                  SparkmanS Offline
                  SparkmanS Offline
                  Sparkman
                  Hero Member
                  wrote on last edited by
                  #28

                  @ceech Looks great! When do you expect to have them available for sale?

                  Cheers
                  Al

                  1 Reply Last reply
                  0
                  • sj44kS Offline
                    sj44kS Offline
                    sj44k
                    wrote on last edited by
                    #29

                    @ceech Some impressive work you are pulling off here! I am also interested so keep us posted when you have it available !

                    1 Reply Last reply
                    0
                    • L lafleur

                      It need an RFM69 radio on the board....??

                      C Offline
                      C Offline
                      ceech
                      Hardware Contributor
                      wrote on last edited by
                      #30

                      @lafleur The board is meant to be used with either NRF24l01+, or ESP8266 radio modules. @hawk_2050 The price will be around 14EUR for the version without sensors, and 19EUR for the fully populated one. @Sparkman and @sj44k some boards will be available as soon as next week. Those are the test ones and since everything seem to work excellent, I'll make them available for purchase.

                      1 Reply Last reply
                      2
                      • C Offline
                        C Offline
                        ceech
                        Hardware Contributor
                        wrote on last edited by ceech
                        #31

                        For those interested, here is a link with more detailed description of this board:
                        http://www.ebay.com/itm/331641400414?ssPageName=STRK:MESELX:IT&_trksid=p3984.m1586.l2649
                        We will probably offer a bit less complex version here, on mysensors.org.
                        Enjoy.

                        1 Reply Last reply
                        0
                        • M Offline
                          M Offline
                          MikeF
                          wrote on last edited by
                          #32

                          I've just built a version of this, using the solar cell from the Solar Motion Light identified in this project: Solar Powered Mini-Weather Station. I'm using Domoticz as the controller.

                          I'm trying to understand what the solar and battery currents represent (I had to scale these by 1000, as Domoticz will only display currents in amps). Also, at what battery voltage level will the battery start to charge? and what level of solar voltage is required? I'm also concerned that the solar cell voltage can exceed 6V in bright sunlight - is there a need for overvoltage protection on the LTC4067?

                          (I'll post details and pics in My Projects shortly.)

                          C 1 Reply Last reply
                          0
                          • M MikeF

                            I've just built a version of this, using the solar cell from the Solar Motion Light identified in this project: Solar Powered Mini-Weather Station. I'm using Domoticz as the controller.

                            I'm trying to understand what the solar and battery currents represent (I had to scale these by 1000, as Domoticz will only display currents in amps). Also, at what battery voltage level will the battery start to charge? and what level of solar voltage is required? I'm also concerned that the solar cell voltage can exceed 6V in bright sunlight - is there a need for overvoltage protection on the LTC4067?

                            (I'll post details and pics in My Projects shortly.)

                            C Offline
                            C Offline
                            ceech
                            Hardware Contributor
                            wrote on last edited by ceech
                            #33

                            Here:

                            float readVcc() 
                            {
                              signed long resultVcc;
                              float resultVccFloat;
                              // Read 1.1V reference against AVcc
                              ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
                              delay(10);                           // Wait for Vref to settle
                              ADCSRA |= _BV(ADSC);                 // Convert
                              while (bit_is_set(ADCSRA,ADSC));
                              resultVcc = ADCL;
                              resultVcc |= ADCH<<8;
                              resultVcc = 1126400L / resultVcc;    // Back-calculate AVcc in mV
                              resultVccFloat = (float) resultVcc / 1000.0; // Convert to Float
                            
                              return resultVccFloat;
                            }
                            
                            int current = A6;
                            int chrg = A1;
                            int cell = A2;
                            int lipo = A0;
                            int batterycurrent = A7;
                            
                            void setup() 
                            {
                              Serial.begin(9600);
                            }
                            
                            void loop() 
                            {
                              float napetost = readVcc();
                            
                              float tok = ((analogRead(current) * napetost / 1024 ) / 2500) * 1000000; // convert the ADC value to miliamps
                              float tokbaterija = ((analogRead(batterycurrent) * napetost / 1024 ) / 2500) * 1000000; // convert the ADC value to miliamps
                              float panel = ( analogRead(cell) * napetost / 1024 ) * 2; // measuring input voltage
                              float baterija = ( analogRead(lipo) * napetost / 1024 ) * 2; // measuring battery voltage
                              int polnjenje = analogRead(chrg);
                              
                              Serial.print("Vcc = ");
                              Serial.print(napetost);
                              Serial.println("V");
                              delay(400);
                              Serial.print("Input current = ");
                              Serial.print(tok);
                              Serial.println("mA");
                              delay(400);
                              Serial.print("Charge current = ");
                              Serial.print(tokbaterija);
                              Serial.println("mA");
                              delay(400);
                              Serial.print("Solar cell voltage = ");
                              Serial.print(panel);
                              Serial.println("V");
                              delay(400);
                              Serial.print("Battery voltage = ");
                              Serial.print(baterija);
                              Serial.println("V");
                              delay(400);
                              Serial.print("CHRG = ");
                              Serial.println(polnjenje);
                              Serial.println("----------------------------");
                              delay(2000);
                            }
                            /*
                            Improving accuracy:
                            To do so, simply measure your Vcc with a voltmeter and with our readVcc() function. Then, replace the constant 1107035L with a new constant:
                            scale_constant = internal1.1Ref * 1024 * 1000
                            where
                            internal1.1Ref = 1,1 * Vcc1 (per voltmeter) / Vcc2 (per readVcc() function)
                            Example:
                            For instance, I measure 3,43V from my FTDI, the calculated value of Vref is 1,081V.
                            So (1,081 x 1000 x 1024) = 1107034,95 or 1107035L rounded up.
                            Source: http://provideyourown.com/2012/secret-arduino-voltmeter-measure-battery-voltage/
                            and
                            https://code.google.com/p/tinkerit/wiki/SecretVoltmeter
                            */```
                            1 Reply Last reply
                            0
                            • M Offline
                              M Offline
                              MikeF
                              wrote on last edited by
                              #34

                              @Ceech Thanks, I'll give this a try; I need to make some hardware mods first - I'm thinking of including a MOSFET in series with IN, as per datasheet.

                              C 1 Reply Last reply
                              0
                              • M MikeF

                                @Ceech Thanks, I'll give this a try; I need to make some hardware mods first - I'm thinking of including a MOSFET in series with IN, as per datasheet.

                                C Offline
                                C Offline
                                ceech
                                Hardware Contributor
                                wrote on last edited by ceech
                                #35

                                @MikeF Sure, if you think it's necessary. OVI pin on the PCB is already connected to input power source. How do you plan to connect the gate of the mosfet to the OVP pin?

                                1 Reply Last reply
                                0
                                • M Offline
                                  M Offline
                                  MikeF
                                  wrote on last edited by
                                  #36

                                  @Ceech I guess I'm concerned that the solar cell voltage Vin might exceed 7V - which the datasheet says is the absolute max. (and the max. overvoltage threshold Vovth is 6.2V). I've been getting >6.5V, with the solar cell not pointing directly at the sun (i.e., not due south / azimuth). I'll take some measurements with the solar cell disconnected. I can see that it would be very difficult to interrupt the IN connection (pin 12); is there another way of limiting the solar cell voltage?

                                  C 1 Reply Last reply
                                  0
                                  • M MikeF

                                    @Ceech I guess I'm concerned that the solar cell voltage Vin might exceed 7V - which the datasheet says is the absolute max. (and the max. overvoltage threshold Vovth is 6.2V). I've been getting >6.5V, with the solar cell not pointing directly at the sun (i.e., not due south / azimuth). I'll take some measurements with the solar cell disconnected. I can see that it would be very difficult to interrupt the IN connection (pin 12); is there another way of limiting the solar cell voltage?

                                    C Offline
                                    C Offline
                                    ceech
                                    Hardware Contributor
                                    wrote on last edited by ceech
                                    #37

                                    @MikeF Well not limiting, but reducing. Connect one or two ordinary diodes in series with the input, and you will reduce the voltage for 0.7V for every diode.

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


                                    28

                                    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