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

    Unable to update firmware on ExpansionBoard 3.1 - Cannot open DFU device

    Scheduled Pinned Locked Moved Firmware
    5 Posts 3 Posters 34 Views 3 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.
    • V Offline
      Victor Hooi
      last edited by

      I recently purchased several LoPy4 packs, and I'm really struggling to

      Firstly - is there a way to check what the current firmware on the ExpansionBoard 3.1 is?

      Secondly, I'm trying to follow the installation instructions at https://docs.pycom.io/updatefirmware/expansionboard/.

      My laptop is running Ubuntu 21.04.
      I have installed dfu-util. (Version 0.9).
      I have removed the LoPy4 board, so it's just the ExpansionBoard 3.1.

      I then press the "S1" button on the board, and plug in the USB cable to my computer.

      It does appear to be quite sensitive to timing - however, when I use "lsusb', I do see two different IDs:

      Normal mode (ef98):

      lsusb
      Bus 002 Device 002: ID 0bda:0328 Realtek Semiconductor Corp. USB3.0-CRW
      Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
      Bus 001 Device 005: ID 06cb:009a Synaptics, Inc. Metallica MIS Touch Fingerprint Reader
      Bus 001 Device 004: ID 13d3:56b2 IMC Networks Integrated Camera
      Bus 001 Device 003: ID 8087:0a2b Intel Corp. Bluetooth wireless interface
      Bus 001 Device 020: ID 04d8:ef98 Microchip Technology, Inc. Expansion3
      Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
      

      And then the DFU mode (ef99) - where I press the "S1" button before plugging it in:

       lsusb
      Bus 002 Device 002: ID 0bda:0328 Realtek Semiconductor Corp. USB3.0-CRW
      Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
      Bus 001 Device 005: ID 06cb:009a Synaptics, Inc. Metallica MIS Touch Fingerprint Reader
      Bus 001 Device 004: ID 13d3:56b2 IMC Networks Integrated Camera
      Bus 001 Device 003: ID 8087:0a2b Intel Corp. Bluetooth wireless interface
      Bus 001 Device 019: ID 04d8:ef99 Microchip Technology, Inc. 
      Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
      

      However, even if I run dfu-util after it's in the "ef99" mode, I get this error:

      $ dfu-util -D expansion31_0.0.11.dfu 
      dfu-util 0.9
      
      Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
      Copyright 2010-2016 Tormod Volden and Stefan Schmidt
      This program is Free Software and has ABSOLUTELY NO WARRANTY
      Please report bugs to http://sourceforge.net/p/dfu-util/tickets/
      
      Match vendor ID from file: 04d8
      Match product ID from file: ef99
      dfu-util: Cannot open DFU device 04d8:ef99
      dfu-util: No DFU capable USB device available
      

      Does anybody know how to update the ExpansionBoard 3.1 reliably?

      J 1 Reply Last reply Reply Quote 0
      • J Offline
        jcaron @Victor Hooi
        last edited by

        @Victor-Hooi have you tried using sudo or equivalent?

        1 Reply Last reply Reply Quote 0
        • V Offline
          Victor Hooi
          last edited by

          @jcaron Thank you - that was the trick.

          I needed to run sudo dfu-util for it to work correctly.

          Do you think that gotcha is worth mentioning on the firmware updating guide? How do we go about suggesting updates there?

          J 1 Reply Last reply Reply Quote 0
          • J Offline
            jcaron @Victor Hooi
            last edited by

            @Victor-Hooi ping @Gijs

            1 Reply Last reply Reply Quote 0
            • G Offline
              Gijs
              last edited by

              Hmm I don't remember ever having to use elevated privileges to run dfu-util, but I'll add it to the documentation, it could be a solution for some people! Thanks

              Gijs

              1 Reply Last reply Reply Quote 0

              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