Instructions for upgrading Pytrack / LoPy

  • Hi, I am trying to find a way to update the firmware for the Pytrack & LoPy, but I can't seem to find any documentation. Any ideas? I don't have a expansion board.

    The updated doesn't seem to work and the DFU-UTIL returns success, but I still get a version by using os.uname()...

  • @cinezaster @jcaron thanks guys, I'll try that!

  • @jcaron I can confirm this for PyTrack!

  • For those using a Pysense for upgrade, there's actually a much simpler way to connect GND and G23: just connect pins 1 and 5 (GND and EXT_IO0) on the external I/O header.

    I suppose it's the same on the Pytrack?

  • @hjl If you use the Pymakr Plugin or a Serial Terminal to view the output from your device when you boot up (with pins GND and G23 connected), you will see a message like this appear:

    0_1502873747457_Screen Shot 2017-08-16 at 09.55.19.png

    This means your device is correctly going into firmware update mode.

    Now to use the Firmware Update Tool, you must unplug the USB cable from your computer and plug it into another port (sometimes Windows/Mac/Linux, do not release the serial address). Ensure that the jumper wire is in exactly the same position as when you saw the message appear above.

    Now run the Firmware Upgrade Tool and 'un-select' the box for High speed Transfer.

    This should then run successfully. Let me know if that helps!



  • @bucknall I am failing at this point.. Staying in bootloader means I am in firmware upgrade mode, right?

  • Hi @hjl,

    What seems to be the issue? Is it still not going in firmware upgrade mode?

  • @bucknall But still experiencing upgrade problems for the lopy..

  • @bucknall Hi, I've use the dfu-util to upgrade it with the 0.0.4 version and that seemed to be going OK..

  • Hi @hjl,

    Apologies for the slow reply, I've been out of office for the last few days.

    I've just tried the update procedure with a Pysense and LoPy, without any problems. I'll try it again with a Pytrack but the firmware is practically identical for the two shields.

    Have you updates the firmware on your Pytrack Shield? If you're using an older version of the firmware then this might be preventing you from updating.



  • @hjl
    You usually get a cu. and tty. port on macOS (actually it's a BSD thing, so the same for FreeBSD and other *nixes) they should be effectively the same thing other than historical differences.

    To be honest I never managed to upgrade the firmware using the Pytrack on high or low speed - neither worked - but I haven't tried in latest Pytrack firmware.

  • @bucknall The preconfigured serial port in the updater tools doesn't match my serial port. 0_1501957170445_Screen Shot 2017-08-05 at 20.18.23.png

    0_1501957182479_Screen Shot 2017-08-05 at 20.18.37.png


    difference...? I connect with an adapter through a USB-C port.

  • @hjl Tried different rates as well..! 0_1501956916246_IMG_2350.JPG

  • @hjl using the same method but at 57600 usually works for me. Not sure if that makes any difference.

  • I use the 'grabbers'. The Pycom Updater doesn't seem to work unfortunately. And now I can confirm that I am in the right mode:

    0_1501754148945_Screen Shot 2017-08-03 at 11.55.20.png

    And I have some progress:

    0_1501754167128_Screen Shot 2017-08-03 at 11.53.32.png

    But the monitor gives this:

    0_1501754269611_Screen Shot 2017-08-03 at 11.57.29.png

    So I think something went wrong while upgrading?

  • @hjl
    That means the LoPy is not in firmware update mode.

    You do need to start it (power up or reset) mounted on the Pytrack and with the P23-GND connection in place.

    On the Pytrack that is difficult because you either need to precariously "touch" the a bit of wire to the pins (risking a short-circuit), use test "grabber" clips to grab onto the pins which not everyone has, or place the LoPy on a breadboard and then run jumper wires between the pins on the Pytrack to the corresponding LoPy pins on the breadboard (just 5V power, GND, P0 and P1 should be enough)

  • Hi @hjl,

    We'll be releasing an update for our firmware update tool (later this month) that will automatically let you update via the pytrack/pysense.

    For the time being, you can try this method to update the lopy via the Pytrack -

    1. Open the Firmware Update Tool and set the speed to low speed.
    2. Ensure that GND and P2 (G23) are connected
    3. Reset the LoPy (press the reset button on the LoPy)

    It's a little difficult to do at the moment so we're planning to make it easier but with a bit of practice, this method does work!



  • Yes, thanks.. I was confused about the expansion board and 'jumpers' assuming I first was updating the Pytrack itself without connecting the LoPy. So! Almost there I guess.. :) But still;

    0_1501750713210_Screen Shot 2017-08-03 at 10.56.39.png

    Any last tricks?

  • @hjl just to be sure, you do have that jumper while you power on the board, right?

Log in to reply

Pycom on Twitter