Navigation

    M5Stack Community

    • Register
    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    1. Home
    2. Maxrom
    M
    • Continue chat with Maxrom
    • Start new chat with Maxrom
    • Flag Profile
    • Profile
    • Following
    • Followers
    • Blocks
    • Topics
    • Posts
    • Best
    • Groups
    Save
    Saving

    Maxrom

    @Maxrom

    3
    Reputation
    6
    Posts
    945
    Profile views
    0
    Followers
    0
    Following
    Joined Last Online

    Maxrom Follow

    Posts made by Maxrom

    • RE: GROVE connector - still powered when StickC (orange) is turned off?

      Thanks for the info. The voltages I'm seeing on the GROVE connector when powered on, and powered off match with what your StickC is outputting. I have four StickC devices, only one of which cuts power fully to the GROVE connector when powered off. After opening the cases, the one device that behaves differently actually has a different colour PCB (it's a yellow colour, compared to red for the others). The components on the PCB are also different. The red PCB's also have a silk screen logo on them saying M5Stick which is missing from the yellow PCB. Either the yellow PCB, which is behaving differently, is a copy, or it's a different hardware revision. However, all four have the MPU6886 which suggests they are later revisions, but clearly there's different PCB designs, presumably from different factories maybe?

      Since I need the GROVE connector to power down when turned off, and I am happy to just have a 3.3v output at that connector, I've snipped the 5v pin to isolate it, then soldered a jumper wire from the 3v3 pin on the PCB to it. I now have 3.3v on the GROVE connector, which also looses power when the device is turned off. It's a bit of a hassle doing this modification, but at least it solves the problem. I hope in future versions, the StickC will disable power to the GROVE connector when powered off, otherwise any attached devices will run down the battery when not in use,

      posted in M5 Stick/StickC
      M
      Maxrom
    • RE: Different board versions

      I've bought a few of these recently, from Amazon in the UK. I've had to modify them for a project, so I've opened every one. They all had a red PCB, with M5StickC (Not M5Stuck I as you mentioned) and have the button battery for the RTC. No blue wire. I have to say, it sounds like your black PCB could be a copy. Have you tested the RTC to see if it keeps time after the main battery has died? Without the button battery, I don't think it would work properly.

      posted in M5 Stick/StickC
      M
      Maxrom
    • GROVE connector - still powered when StickC (orange) is turned off?

      I have two StickC devices. One of them, when turned off, cuts power to the GROVE connector. The other one keeps power to the GROVE connector. Why are they behaving differently, and which one is correct?

      Also, is this something that can be configured in software as I need both to cut power to the GROVE connector when powered off.

      posted in M5 Stick/StickC
      M
      Maxrom
    • RE: Defective Axp M5StickC (orange edition)?

      I can't answer your question directly, but I do have a question which is kind of related to something you mentioned.

      I have two M5StickC devices, one of which cuts power to the 5v GROVE pin when it's turned off. The other one keeps power to the 5v GROVE pin when turned off. Which is correct? I need the power at the GROVE connector to be shut off when the M5StickC is turned off (like you do as well I presume), so what's the situation here? Why do I have two devices behaving differently? Is one faulty? Has there been a hardware revision between them? I need to be able to cut power to the GROVE connector when the device is powered down.

      Also, checking with a multimeter, I can see that when powered up, the GROVE power pin is showing 5v, but when powered off, it's showing 3.8v. Not sure what's going on with this.

      posted in M5 Stick/StickC
      M
      Maxrom
    • RE: isCharging() and getBatteryLevel()

      I use the battery voltage to try and work out a sensible idea of battery level. Anything equal or over 4.1 can be considered full, less than 3.4 is pretty much dead, and 3.7 is generally where it'll spend most of it's time. It's not a linear drop off, so it will take some calculations to try and get it accurate around the 3.6 to 3.8 volt range. This is probably why the M5Stack library only gives 0/25/50/75/100 battery levels.

      I then use battery current to know if it's charging, discharging or fully charged. By getting the value from M5.Axp.GetBatCurrent() if you see a negative value, it's discharging, a positive value is charging and a zero value means fully charged while plugged in. The values returned will give you an idea of how much current is being drained from the battery in mA, or indeed how much current is being used to charge the battery, all in realtime. On the M5StickC it would be 85mA typically when charging.

      posted in M5 Stick/StickC
      M
      Maxrom
    • RE: Double buffer in m5stickC

      You need to look at using sprites to avoid the flickering / flashing when you blank the screen. Take a look at the example sprite projects to see how it's done. The M5.Lcd functions can be called on a sprite object, so bitmap drawing, text drawing etc can be done the same way. Clearing, and drawing the sprite happens off screen, and then is copied quickly to the screen with pushSprite() which avoids visible flashing. The examples provided show you how to do it all, but here's the basic process :

      1. create your sprite object
        TFT_eSprite tftSprite = TFT_eSprite(&M5.Lcd);

      2. create a sprite and give it the size
        tftSprite.createSprite(160, 80);

      3. clear the sprite
        tftSprite.fillSprite(WHITE);

      4. draw into the sprite
        tftSprite.drawBitmap(x, y, w, h,(uint16_t *)img, 0xffff);

      5. copy the sprite to the screen, and let it know where to draw it
        tftSprite.pushSprite(0, 0);

      posted in M5 Stick/StickC
      M
      Maxrom