Troubleshooting the CTE 6-Axis Arm

The 6-Axis Robotic Arm used with the CTE Workcell is designed to replicate the functionality of industrial robotic arms used in automated manufacturing systems. The 6-Axis Arm contains six rotational joints that allow precise movement and positioning of the end effector. You may notice that the movements are not as you expected or notice an issue with the connections. If the 6-Axis Arm is not moving or behaving as expected, use the troubleshooting steps in this article to identify and resolve common issues.


First Checks

Before troubleshooting specific issues, verify the following: 

  • The 6-Axis Arm is powered on.
  • The 6-Axis Arm is properly connected.
    • Using a 6-Axis Arm without a Brain? Use the steps in the Direct Connection section below to learn more about checking connections.
    • Using a CTE Workcell with an EXP Brain? Use the steps in the Connecting via an EXP Brain section to learn more about checking connections.
  • All Smart Cables are securely connected.
  • All firmware is up to date. Use the articles linked below to help verify that the firmware for both the 6-Axis Arm and Brain is up to date.

Direct Connection

The back of the 6-Axis Arm, showing the three ports on the base. The power cable is plugged into the right side port.

Check that the power cable is inserted fully into the back of the 6-Axis Arm and plugged into a power source. View this article to learn more about powering the 6-Axis Arm.

The back of the 6-Axis Arm showing the USB-C cable plugged into the left side port, the center Smart Port is empty, and the power cable is plugged into the far right port. A green indicator light glows to show connection.

Be sure that the USB-C cable is inserted fully into the USB-C port on the back of the 6-Axis Arm and connected to your computer. Once powered and connected to the computer, the green indicator light will show. View this article to learn more about connecting the 6-Axis Arm directly to your computer.

Note: After initial connection, if the USB-C cable is disconnected and the power cable remains plugged in, the green light may continue to show. 

Connecting via an EXP Brain

The back of the base of the 6-Axis Arm showing the Smart Cable connected in the center port. The left and right ports are empty.

When running projects with the EXP Brain, be sure that the USB-C cable and power cord are no longer connected to the 6-Axis Arm. The 6-Axis Arm should only be connected to the Brain via the Smart Cable as shown in this image here.

If the issue persists, locate your problem in the Potential Problems and Possible Solutions section below.


Quick Troubleshooting Guide

The table here summarizes some common situations. More details about each of the problems and possible solutions can be found below.

If this happens:

Try this first:

6-Axis Arm Does Not Move Check USB-C connection or Smart Cable connections and device configuration in VEXcode.
6-Axis Arm Moves Unexpectedly Check that all joints move as expected with the Teach Pendant.
Lengthy Delays Between Movements of the 6-Axis Arm Check coordinate values in the VEXcode project and verify with the Teach Pendant.
Short Delays Between Movements of the 6-Axis Arm While it may seem like an error is occurring, the 6-Axis Arm is operating as intended. Learn more below.
Failed Communication Between EXP Brain and 6-Axis Arm Disconnect the 6-Axis Arm from external power, then power cycle the 6-Axis Arm and Brain.
Error Messages in the Teach Pendant Review the list of errors below to find troubleshooting steps.

If you have an issue that falls outside of those listed here and have tried the other listed troubleshooting methods in this article, please contact VEX Support.


Potential Problems and Possible Solutions

The following section breaks down potential problems that have occurred with your 6-Axis Arm and explains possible causes of the problem and solutions to help you troubleshoot. 

Problem: 6-Axis Arm Does Not Move

Symptoms: 

  • The 6-Axis Arm does not move when running a VEXcode project.
  • The Teach Pendant cannot control the arm (when directly connected).

Possible Causes: 

  • USB or Smart Cable connections are loose or disconnected.
  • The 6-Axis Arm was not configured, or improperly configured, in VEXcode.
  • A joint error has occurred.

Solutions: 

  1. Check all cable connections. Ensure all cables are fully inserted into the correct ports. 
  2. Verify device configuration.

Device configuration in VEXcode EXP showing an Arm configured with a highlight on the name "ARM 10."

Pay special attention to the port number in the configuration. The port chosen while configuring the 6-Axis Arm will also be shown in the name of the device (shown here as Arm10).

  1. Verify each joint is working using the Teach Pendant. Follow the steps in the Using the Teach Pendant for Troubleshooting section below.

Problem: 6-Axis Arm Moves Unexpectedly

Symptoms: 

  • The 6-Axis Arm moves to an unexpected location.
  • The 6-Axis Arm does not reach the intended coordinates.

Possible Causes: 

  • Build error while connecting to the tile.
  • A joint error has occurred.
  • Incorrect coordinate values.

Solutions: 

  1. Verify that the 6-Axis Arm is connected to the tile in the correct location using the build instructions (also linked here).

6-Axis Arm hovering above a tile with red lines indicating where the arm should attach to the tile.

Pay special attention to the orientation of the base of the 6-Axis Arm. The side with the Smart Port, area to connect to the power cord, and USB-C cable should be aligned over tile locations 1, 2, and 3.

  1. Verify that the end effector on the 6-Axis Arm matches the one chosen in the VEXcode project or in the Teach Pendant. 
  2. Check all coordinates used in the project. You can do this in two ways:
  3. Verify each joint is working using the Teach Pendant. Follow the steps in the Using the Teach Pendant for Troubleshooting section below.

Problem: Lengthy Delays Between Movements of the 6-Axis Arm

Symptoms: 

  • The 6-Axis Arm moves but has lengthy delays between movements.
  • The 6-Axis Arm moves but appears to stop working mid-project.

Possible Cause: 

  • Incorrect coordinate values.
    • The 6-Axis Arm will always move to the intended coordinate location. If it is stopped by an obstacle or collision, the movement will appear to pause while it attempts to reach that specific coordinate.

Solutions: 

  1. Verify coordinate values to use with a project with all elements on the layout. This includes Cubes, Disks, Pallets, or any other objects that would be present on the tile when the project is run. 
    • A slight variation in the height of the object or obstacle can obstruct the arm from reaching the specified coordinate.
    • Use the Teach Pendant and manual movements to determine the x, y, z-coordinates of your desired location. Follow the steps in this lesson to enable manual movement with the Teach Pendant.
    • Verify those newly obtained coordinates using the Move To feature. With this, you can move the 6-Axis Arm to a precise position using the Teach Pendant. Simply type in the specific x, y, and z-values of the coordinate location you would like to move the 6-Axis Arm to. 
  2. Verify that the end effector on the 6-Axis Arm matches the one chosen in the VEXcode project or in the Teach Pendant. 
  3. Edit the VEXcode project to allow the project to continue.

Problem: Short Delays Between Movements of the 6-Axis Arm

Symptom:

  • The 6-Axis Arm moves but has short delays between movements.

Possible Cause:

  • Small pauses may occur as each joint moves to be within the accepted margin of error. 
    • With each movement, the 6-Axis Arm is aiming to reach the intended coordinate within a margin of error (~1-2 millimeters). This ensures that the 6-Axis Arm can safely reach each coordinate and continue to safely operate as accurately as possible.

Solution:

  1. While it may seem like an error is occurring, the 6-Axis Arm is operating as intended. If you feel like the delays are becoming too long, see the problem above about "Lengthy Delays" and follow the recommended solutions.

Problem: Failed Communication Between EXP Brain and 6-Axis Arm

Symptoms:

  • Brain will not turn off while 6-Axis Arm is on and powered.
  • 6-Axis Arm does not move while connected to the EXP Brain and the code related to the 6-Axis Arm appears to be skipped.
  • The 6-Axis Arm does not appear as a connected device in the Devices screen on the EXP Brain.

Possible Cause:

  • A VEXcode project was run via a direct USB connection to the 6-Axis Arm while also connected to an EXP Brain.

Solution:

  1. Disconnect the Smart Cable from the 6-Axis Arm so it is no longer connected to the EXP Brain.
  2. Power cycle the 6-Axis Arm and EXP Brain.
    • Remove the battery from the EXP Brain, re-insert the battery, and turn the Brain on.
    • Disconnect the 6-Axis Arm from power, wait 10 seconds, then reconnect the power cable to the 6-Axis Arm.
  3. Only reconnect the 6-Axis Arm and EXP Brain when you want to run code via downloading a project to the Brain. It is not recommended or intended for the devices to have multiple connections at the same time, even when moving back and forth between methods for coding the 6-Axis Arm.

Problem: Error Message in the Teach Pendant

If an error appears in the Teach Pendant Status as you are moving the 6-Axis Arm, there are additional troubleshooting steps you can take to try to resolve the issue.

The top portion of the Teach Pendant showing the Status bar reading an error of Invalid Position Requested, highlighted in a red box.

The Status in the Teach Pendant Dashboard will alert you to errors with your 6-Axis Arm. When there is an error, the Status bar will show red and the error will be displayed. The error will continue to display until it is resolved, and the 6-Axis Arm has successfully moved to a valid or safe position.

Depending on the error reported, there are different steps to take to try to solve the issue. Here are some of most common errors and steps to try to resolve the issue:

  • Invalid Position Requested - The position you are trying to reach is not within the bounds of the 6-Axis Arm.
  •  An unexpected error occurred while moving to safe position - The 6-Axis Arm encountered an error while trying to move to the safe position. 
    • Try selecting Move to Safe Position again, to see if it will move successfully after a few moments.
    • Try power cycling the 6-Axis Arm by disconnecting the power and USB-C cable from the back of the 6-Axis Arm. Wait about 10 seconds, then plug the cables back in. Close and reopen VEXcode, or refresh the page if using web-based VEXcode. Then reconnect to VEXcode and try to Move to Safe Position again.
  • Command execution failed due to... - An error occurred and the 6-Axis Arm could not complete the movement.
    • Try selecting Move to Safe Position again, to see if it will move successfully after a few moments.
    • Try power cycling the 6-Axis Arm by disconnecting the power and USB-C cable from the back of the 6-Axis Arm. Wait about 10 seconds, then plug the cables back in. Close and reopen VEXcode, or refresh the page if using web-based VEXcode. Then reconnect to VEXcode and try to Move to Safe Position again.
  • Failed to Move to Safe Position: controlled stop enabled - The 6-Axis Arm triggered a controlled stop while trying to move. 
    • Check to be sure that the 6-Axis Arm did not collide with an obstacle in its path, or that the Controlled Stop button on the Signal Tower was not pressed accidentally. Clear the obstacles and try selecting Move to Safe Position again. 
    • Try power cycling the 6-Axis Arm by disconnecting the power and USB-C cable from the back of the 6-Axis Arm. Wait about 10 seconds, then plug the cables back in. Close and reopen VEXcode, or refresh the page if using web-based VEXcode. Then reconnect to VEXcode and try to Move to Safe Position again.

Using the Teach Pendant for Troubleshooting

Once you have successfully powered and connected your 6-Axis Arm, and you know that the firmware is up to date, the next step is to directly connect the 6-Axis Arm and use the Teach Pendant to help diagnose the issue. When using the Teach Pendant, be sure that the 6-Axis Arm is not connected to the Brain. The 6-Axis Arm must be directly connected to VEXcode to use the Teach Pendant. View this article to learn more about Accessing the Teach Pendant with the 6-Axis Arm.

Move to Safe Position

The top of the Teach Pendant in VEXcode with the Move to Safe Position button in the upper left corner highlighted in a red box. The status reads Click Move to safe position to continue and the X, Y, Z coordinates are shown in the dashboard.

Select the Move to Safe Position button at the top of the Teach Pendant to see if your 6-Axis Arm can successfully reach the safe position. View this article to learn more about Accessing the Teach Pendant with the 6-Axis Arm.

Jog the Arm

The top of the Teach Pendant in VEXcode is shown with a red box highlighting the 6 Arm jogging buttons below the Dashboard. The buttons are in 2 rows of 3. The top row reads +X, +Y, and +Z. The bottom row reads -X, -y, -z.

Next, use the Arm Jogging buttons to try to move the 6-Axis Arm along each axis. Be sure that the 6-Axis Arm is moving when the button is pressed, and look to see that the X, Y, and Z values in the Dashboard are changing as the 6-Axis Arm moves. Read this article to learn more about jogging with the Teach Pendant.

Test the Joints if Errors Persist

If the errors continues to persist, you can manually test each of the joints on the 6-Axis Arm, to ensure they are moving as expected, using the Teach Pendant. Be sure the 6-Axis Arm is powered on, directly connected to VEXcode, and not connected to the Brain, to use the Teach Pendant. 

The top portion of the Teach Pendant in VEXcode with the Enable Manual Mode button in the upper right corner highlighted in a red box. The status reads Ready, and the X, y, and z coordinates are shown.

Select Enable Manual Mode so that you can safely move the 6-Axis Arm by hand. To learn how to enable Manual Mode, see this article.

The very bottom of the Teach Pendant reads Show Advanced Data with a downward facing triangle indicating what to select to expand and view the Advanced Data.

At the bottom of the Teach Pendant, select Show Advanced Data.

An example of the Advanced Data is shown at the bottom of the Teach Pendant. Data values for the 6-Axis Arm are shown, and the Joint values for J1 through J6 and the Joint Errors rows of the table are highlighted in a red box, indicating what to look for when testing the joints.

Manually move each joint of the 6-Axis Arm individually. As you move each joint, watch that the values for J1 through J5 are changing. (Note: Joint 6 will always report a value of 0.) If all joints move and the values change, try selecting Move to Safe Position again. 

While showing Advanced Data and moving the 6-Axis Arm and the following happens, send Feedback through VEXcode and contact VEX Support. Be sure to include your contact information when submitting feedback. View this article to learn more about using the Feedback button. 

  • Any of the joints do not move or are not showing changing values
  • The Joint Errors show values other than 0

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: