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

    Exit from DFU Mode

    Scheduled Pinned Locked Moved Expansion Board
    18 Posts 11 Posters 1.6k Views 12 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.
    • C Offline
      crumble @guideon
      last edited by

      @guideon

      Have you checked the device manager and disabled dfu?

      Sorry, I ran only intro trouble with Win7. Kepted my Win10 clean and updated my pytrack with a raspberry.

      G 1 Reply Last reply Reply Quote 0
      • G Offline
        guideon @crumble
        last edited by

        @crumble Well I have done it several times and still the same I have also tried on a different computer without success. I am wondering if there is a way to reset the board. Guy.

        1 Reply Last reply Reply Quote 0
        • T Offline
          tttadam
          last edited by

          I am having the same issue. My expansion board V3.1 stuck in dfu mode no matter what I do.
          Did you find a solution for that?
          Thanks

          1 Reply Last reply Reply Quote 0
          • D Offline
            danielcbit
            last edited by

            I'm having the same issue.

            The update completes successfully using my Mac Pro with macOS Mojave.

            sudo dfu-util -D /Users/daniel/Downloads/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
            Deducing device DFU version from functional descriptor length
            Opening DFU capable USB device...
            ID 04d8:ef99
            Run-time device DFU version 0100
            Claiming USB DFU Runtime Interface...
            Determining device status: state = dfuIDLE, status = 0
            dfu-util: WARNING: Runtime device already in DFU state ?!?
            Claiming USB DFU Interface...
            Setting Alternate Setting #0 ...
            Determining device status: state = dfuIDLE, status = 0
            dfuIDLE, continuing
            DFU mode device DFU version 0100
            Device returned transfer size 64
            Copying data from PC to DFU device
            Download [=========================] 100% 16384 bytes
            Download done.
            state(2) = dfuIDLE, status(0) = No error condition is present
            Done!

            However my expansion board 3.1 is still in DFU mode no matter what I do.

            As other parts of the Pycom documentation, this update steps seem to be half backed. This definitely does not inspire too much confidence in their products. Which is a pity...

            G 1 Reply Last reply Reply Quote 0
            • G Offline
              guideon @danielcbit
              last edited by

              @danielcbit Totally agree with you how can we trust Pycom if NO SUPPORT?

              1 Reply Last reply Reply Quote 0
              • N Offline
                Napfkuchen
                last edited by Napfkuchen

                I have the same problem. After updating the expansion board 3.1 with dfu-utils on ubuntu, the board is stuck in DFU mode. I tried to repeat it on Windows 10 and a raspberry pi. Still no luck.

                Has somebody found a solution?

                Napf

                1 Reply Last reply Reply Quote 0
                • J Offline
                  jimmo
                  last edited by

                  @guideon @tttadam @danielcbit @Napfkuchen

                  I have the same issue. I think I've tracked it down to a manufacturing issue with this variant of the board and the bootloader. I was able to make my board work by reprogramming the USB interface chip manually (it's a PIC16F which I've worked with before).

                  Unfortunately if you don't have a PICKit, I don't see a way to unbreak the board as DFU cannot overwrite the bootloader.

                  I've written to Pycom with the details, but I suggest you write to them to get a resolution, or return your board to where you bought it and see if you can track down an older revision. Hopefully they'll be able to explain better than my guess!

                  (Just in case anyone sees this, if you're using Linux and you have the PIC development tools installed (MPLAB) and you're wondering why the expansion board shows up in dmesg as a ttyACM device but /dev/ttyACM0 never appears, it's because Pycom are using Microchip's VID, which the MPLAB udev rules are interfering with).

                  T 1 Reply Last reply Reply Quote 1
                  • T Offline
                    tttadam @jimmo
                    last edited by

                    @jimmo All right I can write to them, but can we tag them in this thread also?
                    Are they reading this forum? Probably yes, so they should be avare of this issue.

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

                      @tttadam it’s quite irregular. These last few weeks they don’t seem to have an active presence on the forum at all.

                      1 Reply Last reply Reply Quote 0
                      • A Offline
                        Andy-ICT2U @guideon
                        last edited by

                        @guideon Has anyone got back to you? I have the same problem (Windows 10 and a v3.1 board) and it's unclear what is needed to get the board back to app mode without having to resort to @jimmo's methods. Anyone from @pycom here?
                        Can I confirm what I should be seeing?
                        I have gone through dfu-mode start up and performed the dfu-util-static -D expansion31_0.0.11.dfu which appeared to be successful.
                        Zadig still reports mode 0xEF99. Tried installing USB Serial (CDC) driver - seemed OK but still reporting 0xEF99.
                        Anyone got past this?
                        Cheers
                        Andy

                        N J 2 Replies Last reply Reply Quote 1
                        • N Offline
                          noobiemcfoob Pybytes Beta @Andy-ICT2U
                          last edited by

                          @Andy-ICT2U

                          I'm also stuck on the same issue using Ubuntu. Sucks too, I'm sitting on 10 expansion v3.1 boards that I can't play with.

                          1 Reply Last reply Reply Quote 1
                          • J Offline
                            jimmo @Andy-ICT2U
                            last edited by

                            @Andy-ICT2U @noobiemcfoob

                            Have definitely confirmed (with Pycom) now that the boards are faulty - unfortunately you'll need to get a replacement -- I assume they'll announce something?

                            The driver that you install with Zadig tells Windows what to do when it detects a given device. Windows doesn't know that 0xef98 and 0xef99 are even the same physical board -- it relies entirely on this identifier (the USB VID/PID) to decide what to do. (I've read a lot of places where people seem to have the mistaken impression that Zadig tells the board what mode to be in, or even that Zadig somehow tells dfu-util where to install the firmware).

                            On the working boards, the issue that people can run into is that the wrong driver is configured for a given mode, so they try and dfu-util to a device which windows thinks is a CDC ACM serial port, or tell windows that the dfu mode is a serial port.

                            But in this case, on the 3.1 boards, once dfu-util has been "successfully" run once, it will always boot in DFU mode (PID=0xef99) from that point.

                            I wrote to pycom again to ask them to update this thread.

                            1 Reply Last reply Reply Quote 3
                            • P Offline
                              pyoneer
                              last edited by

                              I have exactly the same problem. Unfortunately, I don't know if it was introduced by the firmware update or already existed before. The first thing I did after receiving the board was to execute the update... If I now check my usb devices (on ubuntu) with lsubs it gives:

                              Bus 001 Device 070: ID 04d8:ef99 Microchip Technology, Inc. 
                              

                              The part ef99 indicates firmware update mode as decribed here.
                              Interestingly, the device doesn't really seem to be in update mode, as trying to execute:
                              sudo dfu-util -D expansion31_0.0.11.dfu
                              yields:

                              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
                              

                              To perform a proper firmware update I still have to press and hold the S1 button while connecting the Expansion Board.

                              Hopefuly Pycom is working on a solution ...

                              1 Reply Last reply Reply Quote 0
                              • F Offline
                                frecfrec
                                last edited by

                                This post is deleted!
                                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