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

    Pytrack and Pysense firmware release 0.0.2

    Scheduled Pinned Locked Moved Announcements & News
    firmwarepytrackpysense
    27 Posts 9 Posters 12.2k Views 9 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.
    • J Offline
      jmarcelino @livius
      last edited by jmarcelino

      @livius
      Ha sorry I see Windows needs a DFU driver! No problem, libUSBk to the rescue.

      Try installing the driver package I generated:
      [now old, see above]

      or install libusbK and make your own using the inf-wizard :-)

      Once that's done dfu-util -D pysense_0.0.2.dfu will work (remember you only have about 7 seconds to run it after releasing the button, so install the driver first)

      DFU-UTIL has to be >= version 0.8
      Tested with PyTrack not sure if the PySense uses the same ID, will try it up later.

      1 Reply Last reply Reply Quote 1
      • D Offline
        daniel
        last edited by

        @jmarcelino thanks for the Windows instructions and the driver package!

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

          PySense and PyTrack DFU use different USB IDs so I generated two driver packages for Windows using libusbK (I don't know how to make a single one...)

          PySense: http://metavurt.net/software/drivers/PySense_DFU.zip
          PyTrack: http://metavurt.net/software/drivers/PyTrack_DFU.zip

          After installing the driver you need download dfu-util for Windows from http://dfu-util.sourceforge.net/releases/dfu-util-0.8-binaries/win32-mingw32/ , I recommend the static compiled binary to avoid any library issues, you only need one executable: dfu-util-static.exe

          Place the executable and the dfu firmware from Pycom together and get ready to run:
          dfu-util-static.exe -D pysense_0.0.2.dfu or
          dfu-util-static.exe -D pytrack_0.0.2.dfu depending on your firmware and board

          Then connect the board with the button pressed down, release the button after one second and run the command above - remember you only have 7 seconds to do so!

          The process will look like this
          0_1497008523329_Screen Shot 2017-06-09 at 12.40.37.png

          J 1 Reply Last reply Reply Quote 5
          • J Offline
            jobbyworld @joe2612
            last edited by

            @joe2612
            on macbook pro :
            I advice to specify device since another device is in dfu mode

            dfu-util -l
            dfu-util 0.7
            
            Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc.
            Copyright 2010-2012 Tormod Volden and Stefan Schmidt
            This program is Free Software and has ABSOLUTELY NO WARRANTY
            Please report bugs to dfu-util@lists.gnumonks.org
            
            Found Runtime: [05ac:8289] devnum=0, cfg=1, intf=3, alt=0, name="UNDEFINED"
            Found Runtime: [04d8:f011] devnum=0, cfg=1, intf=0, alt=0, name="UNDEFINED"
            

            so i advice to specify device :

            dfu-util --device 04d8:f011 -D pysense_0.0.2.dfu 
            dfu-util 0.7
            
            Copyright 2005-2008 Weston Schmidt, Harald Welte and OpenMoko Inc.
            Copyright 2010-2012 Tormod Volden and Stefan Schmidt
            This program is Free Software and has ABSOLUTELY NO WARRANTY
            Please report bugs to dfu-util@lists.gnumonks.org
            
            Filter on vendor = 0x04d8 product = 0xf011
            Opening DFU capable USB device... ID 04d8:f011
            Run-time device DFU version 0100
            Claiming USB DFU Runtime Interface...
            Determining device status: state = dfuIDLE, status = 0
            WARNING: Runtime device already in DFU state ?!?
            Found Runtime: [04d8:f011] devnum=0, cfg=1, intf=0, alt=0, name="UNDEFINED"
            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
            Dfu suffix version 100
            bytes_per_hash=327
            Copying data from PC to DFU device
            Starting download: [##################################################] finished!
            state(2) = dfuIDLE, status(0) = No error condition is present
            Done!
            ```
            J 1 Reply Last reply Reply Quote 0
            • J Offline
              jmarcelino @jobbyworld
              last edited by jmarcelino

              @jobbyworld
              If you update to dfu-util version 0.8 or later it should pick up the correct ids from the file to filter on

              1 Reply Last reply Reply Quote 0
              • J Offline
                johncaipa @jmarcelino
                last edited by johncaipa

                @jmarcelino thanks for the instructions!
                @daniel where can we find examples and libraries?
                regards

                1 Reply Last reply Reply Quote 1
                • L Offline
                  livius @daniel
                  last edited by

                  @daniel
                  for me pysense + wipy2 hangs after few seconds

                  upgrade was ok

                  dfu-util-static.exe -D pysense_0.0.2.dfu
                  dfu-util 0.8
                  
                  Copyright 2005-2009 Weston Schmidt, Harald Welte and OpenMoko Inc.
                  Copyright 2010-2014 Tormod Volden and Stefan Schmidt
                  This program is Free Software and has ABSOLUTELY NO WARRANTY
                  Please report bugs to dfu-util@lists.gnumonks.org
                  
                  Match vendor ID from file: 04d8
                  Match product ID from file: f011
                  Opening DFU capable USB device...
                  ID 04d8:f011
                  Run-time device DFU version 0100
                  Claiming USB DFU Runtime Interface...
                  Determining device status: state = dfuIDLE, status = 0
                  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!
                  

                  wipy2 after fresh

                  os.mkfs('/flash')
                  

                  with current firmware 1.7.2.b1 (official build)

                  i put 6 times os.uname() but only first 2 i get response and then it hang totally
                  all interfaces go down - wifi and uart
                  no info on COM/response on any command and no output

                  rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
                  ets Jun  8 2016 00:22:57
                  
                  rst:0x10 (RTCWDT_RTC_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
                  configsip: 0, SPIWP:0x00
                  clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
                  mode:QIO, clock div:2
                  load:0x3fff9010,len:12
                  ho 0 tail 12 room 4
                  load:0x3fff9020,len:388
                  load:0x40078000,len:11412
                  load:0x4009fc00,len:848
                  entry 0x4009fd9c
                  MicroPython v1.8.6-650-g9bacbbd4 on 2017-06-09; WiPy with ESP32
                  Type "help()" for more information.
                  >>> os.uname()
                  (sysname='WiPy', nodename='WiPy', release='1.7.2.b1', version='v1.8.6-650-g9bacbbd4 on 2017-06-09', machine='WiPy with ESP32')
                  >>> os.uname()
                  (sysname='WiPy', nodename='WiPy', release='1.7.2.b1', version='v1.8.6-650-g9bacbbd4 on 2017-06-09', machine='WiPy with ESP32')
                  >>> 
                  

                  i moved this wipy to expansion board and it work without any problem

                  think about people first, then computers

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

                    @livius after it hangs, does it revive by resetting the WiPy 2, or do you have to power cycle the pysense?

                    L 1 Reply Last reply Reply Quote 0
                    • L Offline
                      livius @daniel
                      last edited by livius

                      @daniel
                      it revive by pressing reset button on Wipy2
                      and back hang

                      UPDATE
                      pytrack is ok only pysense is affected

                      think about people first, then computers

                      J 2 Replies Last reply Reply Quote 0
                      • J Offline
                        jmarcelino @livius
                        last edited by

                        @livius
                        No problem here with the Pysense (also upgraded using Windows) and a LoPy (sorry I don't have a WiPy to test)

                        Not sure how many checks the DFU stuff uses (would think it was reliable since it's a USB.org standard) but maybe try flashing it again?

                        L 1 Reply Last reply Reply Quote 0
                        • J Offline
                          jmarcelino @livius
                          last edited by

                          @livius
                          Does the Pysense after update appear as a USB serial device using the usbser driver?

                          0_1497119839049_Screen Shot 2017-06-10 at 19.15.17.png

                          1 Reply Last reply Reply Quote 0
                          • L Offline
                            livius @jmarcelino
                            last edited by livius

                            @jmarcelino said in Pytrack and Pysense firmware release 0.0.2:

                            Not sure how many checks the DFU stuff uses (would think it was reliable since it's a USB.org standard) but maybe try flashing it again?

                            I have tried before 5 times before written here
                            also with different cable on different USB port - no difference
                            and with really short cable (used for near everythin programing)
                            e.g. white cable below
                            0_1497120825859_upload-0244a2c0-5595-4f1e-b223-ccfb034a6530

                            Does the Pysense after update appear as a USB serial device using the usbser driver?

                            yes
                            0_1497120892968_upload-a5383b83-7006-438e-b27a-1284065bc70b

                            think about people first, then computers

                            J 1 Reply Last reply Reply Quote 0
                            • J Offline
                              jmarcelino @livius
                              last edited by jmarcelino

                              @livius
                              Sorry should have figured you'd have done that already :-)

                              Not sure what it can be, but if pressing reset works I guess it's the WiPy crashing and not the Pysense shutting it off. Sounds like that was the question Daniel had.

                              L 1 Reply Last reply Reply Quote 0
                              • L Offline
                                livius @jmarcelino
                                last edited by

                                @jmarcelino said in Pytrack and Pysense firmware release 0.0.2:

                                Sorry should have figured you'd have done that already :-)

                                for us we can assume this always ;-)

                                think about people first, then computers

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

                                  @livius @jmarcelino In my case I was obtaining the same error:
                                  dfu-util(-static).exe -D pytrack_0.0.2.dfu
                                  Cannot open DFU device 04d8:f014
                                  No DFU capable USB device available

                                  However, running the same with this option finally flashed the Pytrack!

                                  dfu-util-static.exe --device 04d8:f014 -D pytrack_0.0.2.dfu

                                  Hope that this can help to whom have the same problem!

                                  Edit: I should add that before running that command I installed the driver packages which provided @jmarcelino and it didnt work after several attempts.

                                  1 Reply Last reply Reply Quote 2
                                  • T Offline
                                    titi974
                                    last edited by

                                    Hello, I followed every steps, both on windows or mac and I can't upgrade my pysense...
                                    So, to be clear, I'll only speak about the mac part.
                                    I installed dfu-util with brew, so I've the latest version (0.9).
                                    If I try to upload the firmware without specifying the device ID, I get :
                                    "dfu-util: No DFU capable USB device available"

                                    When I use dfu-util -l to see dfu capable devices plugged in my mac, I see two devices :
                                    "Found Runtime: [05ac:8290] ver=0146, devnum=6, cfg=1, intf=5, path="20-8", alt=0, name="UNKNOWN", serial="UNKNOWN"
                                    Found Runtime: [1209:2002] ver=0001, devnum=14, cfg=1, intf=0, path="20-5", alt=0, name="UNKNOWN", serial="UNKNOWN""

                                    The second one is pysense since it disappears when I unplug it.

                                    So I tried to force the device with "dfu-util --device 1209:2002 -D pysense_0.0.2.dfu" and this is what I get :
                                    "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/

                                    Opening DFU capable USB device...
                                    ID 1209:2002
                                    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
                                    dfu-util: Error: File ID 04d8:f011 does not match device (1209:2002 or 1209:2002)"

                                    It seems like my pysense doesn't have the good ideas... what should I do ?

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

                                      @titi974 Wel, if you are in Windows and you press the push buttom while you plug in, and then you maintein your finger one second more, you could see when you run the first command Cannot open device (id) DFU or something like that. By the way, if you run it correctly, you can heard the sound when a device is pluged in, and 7 seconds laters the sound that something has pluged out(despite that maybe it's still pluged in)

                                      If that doesnt work, you have to repeat the process sometimes. (plug in while pressing the buttom and running the first command)To me it didnt work the first attempts but I could obtain an output different than "dfu-util: No DFU capable USB device available"

                                      T 1 Reply Last reply Reply Quote 0
                                      • T Offline
                                        titi974 @Pajarraco
                                        last edited by

                                        @Pajarraco so, if you have read the entire thing, I've said that my problem is not that it's not recognised, it's that the IDs do not match...
                                        And, on windows I get the exact same results as I've had on mac (see my first answer to understand the thing about device IDs that do not match). And yes I'm doing the procedure that you described.
                                        I've been trying to make this work with my colleague since this morning so I think we've tried every possible way to launch it ahah and on different pcs and macs too.

                                        P J 2 Replies Last reply Reply Quote 0
                                        • P Offline
                                          Pajarraco @titi974
                                          last edited by

                                          @titi974 yes, I read that you have followed every steps... Well, maybe you can try to install the drivers which @jmarcelino has provided some posts bellow and retry the procedure

                                          1 Reply Last reply Reply Quote 0
                                          • J Offline
                                            jmarcelino @titi974
                                            last edited by jmarcelino

                                            @titi974
                                            There is something very weird with your Pysense.

                                            1209:2002 is the USB ID for the PIC16F1-USB-DFU-Bootloader project which sounds like what Pycom used here.

                                            However the firmware image and indeed the boards I've seen all use 04d8:f011. I wonder if yours is a very early version or if something slipped through production. Can you post your serial number? (sticker underneath)

                                            Maybe someone from Pycom can chime in on this, it's a head scratcher.

                                            T 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
                                            • 2
                                            • 1 / 2
                                            • First post
                                              Last post

                                            Pycom on Twitter

                                            Pycom