dh4d:firmware_upgrade

This is an old revision of the document!


Seed Robotics strives to deliver the best products to our customers. However, we know bugs are found issues are fixed and performance is improved so all our DH4D/RH4D units are software upgradeable. The SR-DH4D and SR-RH4D use the same firmware file. There are sufficient technical similarities to let us have one single firmware file for both models.

On June 2016, we released firmware version 10, which includes a host of new features that improve compatibility with Robot libraries, interoperability when controlling from multiple hosts, adds new Dynamixel protocol features, adds the SHSP protocol, fixes minor issues, and further extends the self diagnostics capabilities of the units.
This is a highly recommended update for users running previous versions of the firmware.

The latest firmware version is version 10.

Firmware file: SR-DH4D-RH4D_firmware_10.hex
MD5 checksum: 2b6a30b666d9a6567ecbd29f4cd0df58

The Release notes with Full Changelog are available here: Changelog_SR-DH4D-RH4D_firmware_10.txt
We recommend reading this file before upgrading your firmware.

Pre Requisites

In order to upgrade the firmware of your unit you will need:

  • A USB micro-B cable to connect to the unit's USB port
  • The Firmware Loader, available from the chip manufacturer website: Teensy Loader (you only need the Teensy Loader tool!)
  • The Soft Reboot tool to place the Board in Bootloader mode and trigger the update: teensy_reboot Windows Linux [shortly available] Mac [shortly available]
  • If you are using Windows (version <10), you also need to make sure that you have the Virtual COMM Port drivers installed
  • If you are using Linux as non-root you need to add some udev rules. Check the USB console instructions where you will find the details on how to do all of this.

Upgrading

  1. Download the Firmware file
  2. Open the Teensy Loader tool and choose File→Open Hex File and select the file chosen in step 1
  3. Connect the USB cable to the hand (the USB port is located on the side, near the back and is covered by a small plastic cap)
  4. In the Operation menu, attempt to select “Program” and then “Reboot”. If these options are available, Congratulations! The new firmware is installed.
  5. If the above options are not available, de-select “Automatic Mode” in the Operation menu and try again.
  6. Finally, if the Loader Tool still won't enable the Program options, then force a Reboot into Bootloader mode by running the teensy_reboot tool. Once you run this, repeat step 4.

Confirming the new version is running correctly

If you wish to confirm the new version is running correctly you have two options:
(1) Open a USB Console Terminal and enter the hlp command. The first lines should show you the firmware version. (While you're at the console, you can issue an ope and clo command to open and close the hand)
(2) You can also use the Dynamixel Protocol or SHSP Protocol and read the memory position 2 on the control table of any physical actuator. This will return the running firmware version.

I'm using Linux and I don't have the teensy_reboot tool.

Unfortunately this tool is not available for download separately; if you do need it, you can donlowad the whole Teensyduino package from the PJRC website and extract the teensy_reboot tool from the folder installation package.
This is not really a great option so if you have access to a Windows computer, we'd recommend taking that route.

My unit won't respond using the teensy_reboot tool or update won't start no matter what

Before getting into any more assertive techniques, make sure your computer is recognizing the Hand properly. In windows it should show up in Device Manager a new Virtual COMM Port; in Linux it shows a new device under /dev.
If this is not happening, check the USB Console instructions where we explain how to get the drivers installed and the USB Serial working.

There are a number of reasons this could happen, including interrupted or failed updates.

The way to assertively get the firmware to load - and this is really the low level, always works, approach - is to manually force the reset.

. Set Teensy Loader to Automatic mode and have your firmware file loaded.
. Next remove the top cover of your Hand ad gently flip it to the side. This will expose the electronics board.
Be careful with Electrostatic Discharges (ESD): avoid touching the sides of the board as there are some ESD sensitive components there.
. With the hand connected via USB and Teensy Loader open and set to Automatic mode, press the push button button next to the large black chip. This will force the chip into Bootloader mode where it will immediatelly connect to the computer and communicate with Teensy Loader to download the HEX file.

This is not the prettiest approach but it gets the job done!

Nope, still can't upgrade the firmware

Please get in touch with our Technical Support and we'll be happy to guide you through the process.

Copyright © 2015-2023 Seed Robotics Ltd

  • dh4d/firmware_upgrade.1465238149.txt.gz
  • Last modified: 2016/06/06 18:35
  • by wadmin