Skip to content

Latest commit

 

History

History
99 lines (56 loc) · 3 KB

README.firmware.md

File metadata and controls

99 lines (56 loc) · 3 KB

SuperCAN Firmware Update

Ensure you have Zadig available as well as dfu-util.

Below you'll find the steps that worked for me on my Windows 10 (x64) machine. Your mileage may vary.

Steps

  1. Plug in the device.

  2. Open Zadig (as Administrator).

  3. From the menu, select Options -> List All Devices

  4. Select USB DFU 1.1 in the combo box.

    Select WinUSB (v6.1) as the new driver, then press Replace Driver.

    USB DFU 1.1 selected in Zadig

  5. Open an administrative terminal (cmd.exe, Run as Administrator)

  6. Reset the device and (try to) flash the CAN application firmware.

    Note that I have copied dfu-util and the firmware into C:\dfu

    dfu-util -d 1d50:5035,:5036 -R -D supercan.dfu

    dfu-util: flash cmd

    If all went well you should get output like this:

    dfu-util: flash succeeded

  7. Replug the device to return to normal operation.

Troubleshooting

Its not always rainbows and unicorns though, is it?

Step 6 fails with Lost device after RESET?

dfu-util: Lost device after RESET?

Most likely you don't have a compatible driver set for the device in DFU mode.

Fix

  1. Open Zadig.

  2. Select SuperDFU. See below.

  3. Install or replace the driver with WinUSB (v6.1).

    Zadig: install driver for SuperDFU

  4. Try flashing the firmware again from step 6.

Flashing with dfu-util 0.10 fails

This version seems to misinterpret the vendor/product ID found in the suffix of the firmware file. Strangely enough, dfu-suffix reports the proper values:

dfu-suffix.exe -c ..\Downloads\supercan\d5035-01\03\supercan.dfu
dfu-suffix (dfu-util) 0.10

Copyright 2011-2012 Stefan Schmidt, 2013-2020 Tormod Volden
This program is Free Software and has ABSOLUTELY NO WARRANTY
Please report bugs to http://sourceforge.net/p/dfu-util/tickets/

The file ..\Downloads\supercan\d5035-01\03\supercan.dfu contains a DFU suffix with the following properties:
BCD device:     0xFFFF
Product ID:     0x5035
Vendor ID:      0x1D50
BCD DFU:        0x0100
Length:         16
CRC:            0xF30CA4DD

Fix

Use version 0.9 of dfu-util.

Hints

  • Have the Device Manager open while performing driver assignment.
    • Enable the display of Hidden Devices through the Views menu.
    • You can undo a driver assignment performed through Zadig by selecting the device, then pressing Del on the keyboard, and then confirming that you want to Uninstall driver software. You may need to replug the device afterwards.

SuperDFU Firmware Update

The bootloader can be updated starting for SuperDFU version 0.3.3.

To update the bootloader follow the instructions for flashing the CAN application but use superdfu.dfu instead of supercan.dfu.

NOTE: You likely need to re-flash the CAN application once the bootloader has been updated.