Zero Torque Mode

From CPR Wiki

The Zero Torque mode (Drehmomentfreier Modus in German) disables the motors to allow moving axis by hand, e.g. for teaching positions into a robot program. Generally Zero Torque mode is useful for gantry and delta robots using linear axis but not for robot arms.

By default Zero Torque mode only disables motors do not normally change their position without torque. These are defined in the robot configuration file.


Zero Torque mode requires a robot control with the following

  • Joint modules of version 05 03:

Download the firmware parameters using CPRog/iRC, open the parameter file and find the version entry for each axis. It should state "Product 0x42 FW 0x05 0x03" or newer. Older modules do not support Zero Torque mode and need to be replaced or sent in for an update.

  • CPRog/iRC version V902-12-024 or newer
  • In case of a robot with embedded control: TinyCtrl version V980-11-102 or newer
  • Zero Torque mode must be enabled in the robot configuration (standard in version 12)


The Zero Torque mode is only enabled if at least one axis is configured for Zero Torque mode. If no axis is enabled the "Zero Torque" button will not be shown in CPRog/iRC.

Robot without embedded control

  • Open the robot configuration file. You can find it in the data directory in the installation directory of CPRog/iRC, e.g.:


  • Open the file in a text editor and check for a line similar to the following (some entries may be missing). If the line is missing you can add it before the "</Robot>" tag.

<ZeroTorque A1="true" A2="true" A3="true" A4="true" A5="false" A6="false" A7="false" A8="false" A9="false" />

  • All axis that can disable torque without changing their position (e.g. falling down due to gravity) can be set to "true", all others should be "false".
  • Save the file and reload the project in CPRog/iRC.

Robot with embedded control (TinyCtrl)

If you are using a robot with embedded control the settings described in the previous section must be done in the configuration file that on the embedded control module of the robot.

  • Connect to the robot control using a SFTP client.
  • Open the robot configuration file /home/<user>/TinyCtrl/Data/Robots/<category>/<type>/<type>.xml
  • Check or change the file as described in the previous section.
  • Save the changes and restart the robot.


  • To enable Zero Torque mode CPRog/iRC must be connected to the robot. The robot must be referenced and enabled.
  • Click the button "Zero Torque" in CPRog/iRC ("Drehmomentfreier Modus" in German) to enable th Zero Torque mode.
  • Move the axis by hand, the position values and 3D view in CPRog/iRC should show the motion.
  • You can teach positions by adding joint or linear commands in the program editor. The "J" and "L" keys are enabled as shortcuts while the Zero Torque mode is enabled.
  • Once you are finished disabled the Zero Torque mode by clicking the "Zero Torque" button again. Click "Reset" and "Enable" to enable motion.