Updating Firmware
To update the firmware on the Pysense/Pytrack/Pyscan/Expansion Board v3, please see the following instructions. The firmware of Pysense/Pytrack/Pyscan/Expansion Board v3 can be updated via the USB port using the terminal tool, DFU-util.
The latest firmware DFU file can be downloaded from the links below:
While in the normal, application mode, the Pysense/Pytrack/Pyscan/Expansion Board v3 require a Serial USB CDC driver, in DFU, bootloader mode, the DFU driver is required. Below, the USB Product ID is depicted for each case.
Board
DFU bootloader (update mode)
Application firmware (normal mode)
Pytrack
0xF014
0xF013
Pysense
0xF011
0xF012
Pyscan
0xEF37
0xEF38
Expansion Board v3
0xEF99
0xEF98
Note: USB Vendor ID is always 0x04D8.
Installing the DFU-util Tools
macOS
If using homebrew:
$ brew install dfu-utilIf using MacPorts:
port install libusb dfu-utilLinux
Ubuntu or Debian:
$ sudo apt-get install dfu-utilFedora:
$ sudo yum install dfu-utilArch:
$ sudo pacman -Sy dfu-utilWindows
DFU-util v0.9 – Tool to upload the firmware to the Pytrack/Pysense
Zadig – Installer tool for the Pytrack/Pysense board DFU Firmware
To uploaded the latest DFU firmware to the Pytrack/Pysense, first install the DFU drivers to the host computer. Open Zadig and select libusbK as the driver.
To install the drivers, the Pytrack/Pysense board must be in DFU-mode:
Disconnect the USB cable
Hold down the button on the shield
Connect the USB cable
Keep the button pressed for at least one second
Release the button. When the board is connected in DFU-mode, it will be in this state for 7 seconds.
Click the
“Install Driverbutton immediately. If the driver was unsuccessful, repeat from step 1.Here the USB ID has to be the DFU-bootloader one (
0xF014for Pytrack or0xF011for Pysense).This is a successful DFU driver installation for Pytrack:

Open the command prompt and navigate to the directory where the DFU-util and the firmware was downloaded (must be in same directory). Repeat the procedure to get the board in DFU-mode and run the command below but replace X.X.X with the firmware version and replace Pysense with Pytrack if it is the Pytrack that is to be updated (e.g: pytrack_0.0.8.dfu):
dfu-util-static.exe -D pysense_X.X.X.dfuIf the update was successful, a message,"Done!" should appear in the bottom of the command prompt.
Double-check Serial USB (CDC) driver is installed in Application mode: if, by mistake, the libusbk driver was installed while the USB ID is the Application mode (0xF013 for Pytrack or 0xF012 for Pysense), then the Serial USB (CDC) driver has to be installed for application mode. This will allow Windows to allocate a COM port, which is required for REPL console.

Using DFU-util with Pytrack, Pysense and Expansion Board v3
To enter update mode follow these steps:
Unplug the device
Press the button and keep it held (on the Expansion Board the
S1button)Plug in the USB cable to the host computer and wait 1 second before releasing the button
After this you will have approximately 7 seconds to run the DFU-util tool
macOS and Linux:
$ dfu-util -D pytrack_0.0.8.dfuAn output, similar to the one below, will appear upon successful installation:
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: f014
Opening DFU capable USB device...
ID 04d8:f014
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!Debugging
Using lsusb command, the Pytrack/Pysense device should be visible in both normal and bootloader modes.
For exemple, a Pytrack board is visible as either:
Bus 020 Device 004: ID 04d8:f014 Microchip Technology Inc. Application Specific Devicethis is bootloader mode (
f014is USB PID), active just for 7-8 seconds, if the reset button was just pressed before plugging USB connector.
Bus 020 Device 005: ID 04d8:f013 Microchip Technology Inc. Pytrack Serial: Pyabcde0this is normal, application mode (
f013is USB PID), this means the bootloader verified application partition and it boot-up correctly.
Last updated