BFF Motion Driver v2 - Short User Guide


Previous    Contents     Next


18. Use with Dimension Engineering Kangaroo Control Modules

Kangaroo Motion ControllerV2.80 of the FS9/X version of the BFF 3 DOF motion driver adds a beta interface for Dimension Engineering's Kangaroo motor control modules.

The Kangaroo is a two channel control module that can be used with Sabertooth controllers of all sizes to provide closed loop position feedback control of the motors driven by the Sabertooth. For more detail and documentation on the Kangroo and its operation see the manufacturers web site.

The Kangaroo is able to accept actuator position demand data directly via its serial data interface and using this feature V2.8 of the motion driver can export its actuator position data directly to the Kangaroo(s). The BFF PID Servo Controller software is NOT required when Kangaroos are in use.

The default Kangaroo addresses and channel settings used by the BFF Motion Driver are:

Actuator 1 (Pitch) output goes to Kangaroo address 128 channel 1

Actuator 2 (Roll) to address 128 channel 2

Actuator 3 (Heave) to address 129 channel 1


However these settings can be changed in the .bff configuration file if required using these parameters -






BEFORE attempting to drive your Kangaroos using the motion software they MUST be set up and AUTO-TUNED in accordance with the manufacturer's instructions - see their documentation. Wiring arrangements are given in the Dimension Engineering documentation. You MUST then confirm that you can fully control the position of each motor in your drive using the DE DEScribe software before attempting to drive them using the motion software.


General Kangaroo Setup Steps:

  • Follow the DE instructions to set the dip-switch settings on your kangaroos for digital input, position control, independent drive mode and your choice of potentiometer or encoder position feedback method.

  • Follow the DE instructions for setting the correct dip-switch settings on your Sabertooth controller(s).

  • Connect each Kangaroo (with controller) individually and one at a time to your PC and use the DEScribe software to set a comms baud rate of 115200. If you are using more than one Kangaroo (ie for a 3 DOF drive) then you must enable "multi-Kangaroo mode" on each Kangroo and you MUST change the address of the 2nd Kangaroo (for the motion driver Act3 / Heave output) to 129 (or as set using the .bff config file parameters listed above).

  • ALWAYS confirm your new Kangaroo settings by disconnecting and then reconnecting the DEScribe software and inspecting the Kangaroo settings.

  • If you are using 2 Kangaroos then complete the shared serial line connections (0V, S1 & S2) and confirm using the DESribe software that each Kangaroo is responding on the shared lines whilst both Kangaroos are connected and powered. This is to confirm that the addresses are correct and the S2 line is functioning properly.

  • You can now proceed to follow the DE instructions for auto-tuning the Kangaroos on your drive.  They will not respond to the actuator position data output sent by the motion software until they are fully tuned.

  • Following successful auto-tuning use the DESribe software's Live Test feature to confirm that you can control the position of each actuator in your drive.   

  • You can now disconnect the DESribe software and use the BFF Motion Driver with the Kangaroos - please note the .bff config file settings listed below.


Motion Driver .bff Configuration File Settings:

The motion response of the motors in the system are fully controlled by the Kangaroos; so the Kangaroo-specific settings in the .bff file are fairly limited. Mode must be set to "KANG" and the serial comms baud set to match that set in the Kangaroos (115200)

Port=COM6     (or as required)

Additionally the Kangaroo address and channels to which the motion software exports the motion cues can be set using these parameters -




The working range of the actuators in the .bff file should be set to the full available 1-255 range, so for Rig_Type=0 drives (independent actuator outputs) set pitch parameters -

; Lower bound of movement range within the 1-255 scale
; Upper bound of movement range within the 1-255 scale

...and repeat as required for the roll and heave outputs.

For Rig_Type=1 (coupled outputs for 3-point support type rigs) use FALim1 to set the actuator working range to 255 -

; Lower bound of movement range within the 1-255 scale, for Rig_Type=1 the actuator working stroke length

These settings will allow the motion software to use the full working range for each actuator as defined in the Kangaroo tuning procedure. Specifically the motion software will fit the motion cues to the "Nominal Travel" limits set for the Kangaroos as shown in the Positioning Tab of the DEScribe software.  

Motion Software Operation:

Make sure the Kangaroos are connected and powered before running the motion software. As part of the initialisation the motion software will confirm comms with each active Kangaroo. For confirmed active Kangaroos the motion software will read the "Nominal Travel" limits and use these the set the working range of the motion cue outputs.

If no active Kangaroos are found the software will report an error and close. Check the BFF_Comms.log file for details of the working ranges reported by the active Kangaroos.

If at least one active Kangaroo has been found the motion software will proceed - it will first issue a "Home" command to any Kangaroo axis that requires it (ie if encoder feedback is used with limit switch travel limits) and it will then drive each active axis to the start/park position defined in the .bff config file and await further user interaction as normal. 

The motion software will continue to monitor the Kangaroos during operation and if an error is reported by a Kangaroo it will be displayed and the remaining channels returned to their park positions.

PLEASE NOTE: the movement response of the motors to the motion cues sent by the motion software is fully controlled by the Kangaroos, NOT by the motion software. You can use the Scope button on the motion software to visualise the actual actuator position demands being sent too the Kangaroos. If the actual motion output does not appear to match the position demands sent from the motion software then you must investigate your drive system further.

All the usual factors affecting system response are still at play - such as motor available torque and speed, platform design and loading, control system tuning settings (ie the auto-tuned PID settings for the Kangaroos) etc. The Kangaroos units are clever wee things - but they can not overcome problems caused by under-powered motors or poorly designed or balanced platforms.

Previous    Contents     Next

Copyright © 2010 BFF Design Ltd All Rights Reserved.