When starting to program with VEXcode EXP, Controller blocks will not appear in the Toolbox until a Controller has been configured.
Note: If you have a Controller configured, you must have a Controller paired with your VEX EXP Brain for your project to run.
Adding a Controller
To configure a Controller, select the Devices icon to open the Devices window.
Select “Add a device.”
Select "Controller."
If you want to program the Controller using VEXcode EXP, select “Done” to complete the configuration.
- If you want to configure the Controller for use without coding, see the additional options below.
Once the Controller is added, you will see the Controller added to the Devices Window, and Controller blocks (like those highlighted in this image) will appear in the Toolbox.
Assigning the Drivetrain to the Controller’s Joysticks
Now that the Controller has been added to the robot configuration, you can assign the Drivetrain to the Controller’s joysticks in the Devices window. This allows you to assign the Drivetrain to the Controller’s joysticks without having to add additional code.
- The following example uses the Clawbot (Drivetrain 2-Motor)- Example project.
Select the Devices icon to open the Devices window.
Select "Controller."
Select a joystick icon to toggle through the options.
- Selecting a joystick icon multiple times will cycle through all the options.
- Stop once the desired drive mode is displayed.
The four drive modes that you can choose from are: Left Arcade, Right Arcade, Split Arcade, Tank.
Left Arcade
All movement is controlled by the left joystick.
Right Arcade
All movement is controlled by the right joystick.
Split Arcade
Forward and backward movement is controlled by the left joystick while turning is controlled by the right joystick.
Tank
The left motor is controlled by the left joystick while the right motor is controlled by the right joystick.
Select “Done” to save your configuration.
- Now that the Drivetrain has been assigned to the joysticks and the changes have been saved, the project can now be downloaded and run.
- See this article for more information about how to download and run a project.
Assigning the Motors to the Controller’s Buttons
Once the Controller has been added to the robot configuration, you can assign Motors to specific Controller buttons in the Devices window. Assigning Motors in the Devices window allows you to control individual motors or motor groups without needing to add code.
- The following example has two Motors configured: ClawMotor and ArmMotor.
Select the Devices icon to open the Devices window.
Select "Controller."
Configure a motor to a button by selecting the buttons on the Controller.
- Selecting the same button multiple times will cycle through your configured motors.
- Stop once the desired motor is displayed.
The controller has four button groups (L, R, E, and F). Each group can have a single motor (that is not a part of the Drivetrain) configured to them.
Note: Once a motor has been configured, it will not display as an option for the other buttons.
Select “Done” to save your configuration.
- Now that the Motors have been assigned on the Controller and the changes have been saved, the project can now be downloaded and run.
- For more information about how to download and run a project see this article.
Deleting a Controller
A Controller can be deleted by selecting the “Delete” option at the bottom of the screen.