🤖Have you ever tried Chat.M5Stack.com before asking??😎
    M5Stack Community
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    [SOLVED] How to charge M5StickC and M5StickC Plus (beyond 3.7V)?

    FAQS
    2
    3
    7.8k
    Loading More Posts
    • 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.
    • S
      sloflo
      last edited by sloflo

      Hey folks,

      I'm having a bit of an issue here. I have both a M5StickC and a M5StickC Plus and I wrote a simple little Arduino program that displays both the battery voltage and also the percentage charged.
      My problem: they don't charge to more than 3.7V. I would like them to be topped off at 4.2V

      I tried:

      • charging with my PC (5V/0.5A) / charging with my phone charger (5V/3A)
      • charging while turned off / charging while turned on
        Nothing seems to do anything.

      In all the above cases, I'm charging it via USB-C. If I'm supposed to charge it via the pins, let me know, haven't tried that yet

      Any help appreciated,
      Flo

      EDIT: The problem was that I didn't read the voltage correctly. I was using M5.Axp.GetVbatData() / 1000.0 and that's off by a factor 1.1. The correct way to read the battery voltage is M5.Axp.GetBatVoltage().

      1 Reply Last reply Reply Quote 0
      • felmueF
        felmue
        last edited by

        Hello @sloflo

        charging the battery via USB-C is the preferred way.

        When you say they are stuck at 3.7 V, is that the value your Arduino program displays or is that the value you measured between GND and BAT pin?

        Thanks
        Felix

        GPIO translation table M5Stack / M5Core2
        Information about various M5Stack products.
        Code examples

        1 Reply Last reply Reply Quote 1
        • S
          sloflo
          last edited by sloflo

          Danke @felmue ,

          Your answer pointed me in the right direction.
          The voltage between GND and BAT pins was indeed 4.0V+, so I went back to check my code.

          I noticed that the official documentation for the AXP on the M5StickC only mentions M5.Axp.GetVbatData() (which is what I used and what gave me weird readings) but the AXP code example uses M5.Axp.GetBatVoltage() and the latter actually gives me the correct number.

          What's the difference between these two? Is it just the *1.1/1000?

          Cheers,
          Flo

          1 Reply Last reply Reply Quote 0
          • First post
            Last post