Welcome to the Pycom forum Forum
    • \[\[global:header.categories\]\]
    • \[\[global:header.recent\]\]
    • \[\[global:header.tags\]\]
    • \[\[global:header.popular\]\]
    • Login

    Explore Pybytes | Official Documentation | Report a Firmware Bug/Issue | GitHub

    Board resets when I2C is used on battery only (Expansionboard 3.2)

    Scheduled Pinned Locked Moved Discussion
    12 Posts 4 Posters 94 Views 4 Watching
    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.
    • P Offline
      PSH_IS_NIVA
      last edited by Gijs

      I have a program that reads a I2C device via P9 and P10 pins.
      The program works fine if the board is supplied by USB power, but when it is supplied by battery only, it keeps resetting. I have pin-pointed that the reset happens as soon as the I2C is initialized.

      Some additional information:

      • Tried with both LoPy4s and FiPys on Expansion v 3.2.
      • Tried with different units of both boards and expansion boards to rule out defective specimens.
      • Do not use pullups on the I2C.
      • Voltage on the 5V-pin is about 4.7V with USB supply and about 3.6V (same as the battery itself) when on battery only.
      • When on battery only, the moment the I2C is used the voltage (on 5V-pin) drops under 3V and the unit resets.
      • The "raw" battery voltage does not drop.
      • The I2C device is powered by the 3.3V-pin and GND.
      • It doesn't matter whether the I2C device is connected or not.
      • I can run other power consuming devices like e.g. WiFi on battery only with out any drop in voltage on the 5V-pin.
      robert-hhR J P 3 Replies Last reply Reply Quote 0
      • robert-hhR Offline
        robert-hh @PSH_IS_NIVA
        last edited by

        @PSH_IS_NIVA
        Does that happen with any I2C device or just with the one you are using?
        I anything else connected to P9 and P10?
        Could it be that there is a short of the wires connected to P9 and P10 to a high level signal, like Vdd?
        And as always: which firmware version are you using.

        P 1 Reply Last reply Reply Quote 0
        • P Offline
          PSH_IS_NIVA @robert-hh
          last edited by

          @robert-hh said in Board resets when I2C is used on battery only:

          Thank you for your reply..

          Does that happen with any I2C device or just with the one you are using?

          Well, think so, I have tried with three devices of which two are the same type.

          I anything else connected to P9 and P10?

          No.

          Could it be that there is a short of the wires connected to P9 and P10 to a h
          igh level signal, like Vdd?

          No. As I mentioned above even without a device or anything else connected the problem occurs.

          And as always: which firmware version are you using.

          Different boards, but the current one: Pycom MicroPython 1.20.2.r3 [v1.11-a6eabf9fe] on 2020-02-26; LoPy4 with ESP32

          robert-hhR 1 Reply Last reply Reply Quote 0
          • J Offline
            jcaron @PSH_IS_NIVA
            last edited by

            @PSH_IS_NIVA have you tried using different pins to see if that changes anything?

            P 1 Reply Last reply Reply Quote 0
            • robert-hhR Offline
              robert-hh @PSH_IS_NIVA
              last edited by

              @PSH_IS_NIVA So just to confirm: You tried different expansion boards too?

              P 1 Reply Last reply Reply Quote 0
              • P Offline
                PSH_IS_NIVA @robert-hh
                last edited by

                @robert-hh said in Board resets when I2C is used on battery only:

                @PSH_IS_NIVA So just to confirm: You tried different expansion boards too?

                Yes I did.

                1 Reply Last reply Reply Quote 0
                • P Offline
                  PSH_IS_NIVA @jcaron
                  last edited by

                  @jcaron said in Board resets when I2C is used on battery only:

                  @PSH_IS_NIVA have you tried using different pins to see if that changes anything?

                  Not sure :) I did in fact at one point try P2 and P3 which worked with USB power, but now I do not recall if i also tried that with battery only power. Will revert tomorrow on that..

                  P 1 Reply Last reply Reply Quote 0
                  • P Offline
                    PSH_IS_NIVA @PSH_IS_NIVA
                    last edited by

                    It seems to me there is a major problem with expansion board v3.2.!!

                    After some more testing I found out that none of three expansion boards v3.2 can run ANYTHING on battery alone.

                    • They reset as soon as the the program uses the I2C interface
                    • BUT more important they ALWAYS reset after 20-30 seconds with very simple programs. A simple program just blinking the rgb-led, resets after a short while when on battery alone.

                    Today I found one older v3.1 board I had, and on this board the test programs I used here work fine with battery alone.

                    robert-hhR 1 Reply Last reply Reply Quote 0
                    • robert-hhR Offline
                      robert-hh @PSH_IS_NIVA
                      last edited by

                      @PSH_IS_NIVA OK. So either a design flaw or a manufacturing problem. Time for Pycom to act.

                      P 1 Reply Last reply Reply Quote 0
                      • P Offline
                        PSH_IS_NIVA @robert-hh
                        last edited by

                        @robert-hh said in Board resets when I2C is used on battery only:

                        @PSH_IS_NIVA OK. So either a design flaw or a manufacturing problem. Time for Pycom to act.

                        Yep!

                        Just did one more test.

                        • 6 pcs Expansion board v3.2
                        • 1 pcs Expansion board v3.1
                        • 1 pcs LoPy4 (Pycom MicroPython 1.20.2.r3 [v1.11-a6eabf9fe] on 2020-02-26; LoPy4 with ESP32)
                        • 1 pcs FyPy (Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32)
                          and the following program on both modules:
                        import pycom
                        from time import sleep
                        pycom.heartbeat(False)
                        for i in range(5):
                          pycom.rgbled(0xFF0000)
                          sleep(0.01)
                          pycom.rgbled(0x000000)
                          sleep(0.5)
                        
                        sleep(3)
                        
                        while True:
                          pycom.rgbled(0xFFFFFF)
                          sleep(0.01)
                          pycom.rgbled(0x000000)
                          sleep(2)
                        

                        Result when using either of the two programmed modules on any of the expansion boards v3.2 with battery only:
                        Reboot after 14 white blink - every time.

                        Same on the expansion board v3.1: no reboot.

                        Just to be sure i checked for new firmware with firmware updater v1.16.5 and there the current version for the modules is 1.20.2.r1

                        I can't find any (new) firmware for the expansion board v.3.2 (https://docs.pycom.io/updatefirmware/expansionboard/)

                        X 1 Reply Last reply Reply Quote 2
                        • X Offline
                          Xykon administrators @PSH_IS_NIVA
                          last edited by

                          @PSH_IS_NIVA We accidentally shipped a number of Expansion Board 3.2 that were designed for a specific customer.

                          Anyone who received an Expansion Board 3.2 please email support@pycom.io so we can provide a resolution.

                          Thanks a lot.

                          Christian Ehlers

                          1 Reply Last reply Reply Quote 0
                          • P Offline
                            PSH_IS_NIVA @PSH_IS_NIVA
                            last edited by PSH_IS_NIVA

                            The problem is solved!

                            We got a new firmware for the expansion board from Pycom.

                            As far as the information I have got from Pycom, the reason was that a custom expansion board firmware with a 30 sec watch dog implemented, was accidentally shipped on boards to others than the costumer who requested this function.

                            The problem was entirely related to the firmware and not to the I2C bus as indicated in the headline and the initial post.

                            1 Reply Last reply Reply Quote 2

                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                            With your input, this post could be even better 💗

                            Register Login
                            • 1 / 1
                            • First post
                              Last post

                            Pycom on Twitter

                            Pycom