Controller#
The V5 Controller allows users to control and customize behaviors for their robot or display messages on the Controller’s screen.
Below is a list of available blocks:
Values – Read button states and joystick positions.
Controller pressed? – Returns whether a selected button is pressed.
Controller position – Returns a joystick’s position.
Actions – Rumble the controller and enable or disable configured Controller functions.
play rumble – Plays a rumble pattern on the Controller.
Controller enable/disable – Enables or disables Controller-configured actions.
Events – Run code when a button is pressed or joystick is moved.
when Controller button pressed – Runs the attached stack when a selected button is pressed or released.
when Controller axis is changed – Runs the attached stack when a joystick axis value changes.
Screen – Display text and numbers on the Controller’s screen.
print on Controller – Prints text and numbers to the Controller’s screen.
set cursor on Controller – Moves the cursor to the next row.
set cursor to next row on Controller – Moves the cursor to the next line.
set print precision on Controller – Sets decimal places for printed numbers.
clear Controller – Clears the Controller screen.
clear row on Controller – Clears a single row on the Controller screen.
Values#
Controller pressed?#
The Controller pressed? block returns a Boolean indicating whether a specific button on the controller is currently pressed.
True – The specified button on the controller is being pressed.
False – The specified button on the controller is not being pressed.
<[Controller 1 v] [▲ v] presionado?>
Parameter |
Description |
|---|---|
device |
Which controller to use, configured in the Devices window. |
button |
Which button to check:
|
Example
cuando empezó
[Drive forward while X is pressed.]
para siempre
si <[Controller 1 v] [X v] presionado?> entonces
unidad [adelante v]
demás
deja de conducir
Controller position#
The Controller position block returns how far a joystick is moved along a specific axis from -100 to 100. A value of 0 means the joystick is centered.
([Controller1 v] [1 v] position)
Parameter |
Description |
|---|---|
device |
Which controller to use, configured in the Devices window. |
axis |
Which axis to check:
|
Example
cuando empezó
[Drive forward while the left joystick is pushed up.]
para siempre
si <([Controller1 v] [3 v] position) [math_greater_than v] [0]> entonces
unidad [adelante v]
demás
deja de conducir
Actions#
play rumble#
The play rumble block plays a rumble pattern on the Controller.
jugar rumble [Long v] contra [Controller 1 v]
Parameter |
Description |
|---|---|
pattern |
The rumble pattern to play on the controller:
|
device |
Which controller to use, configured in the Devices window. |
Controller enable/disable#
The Controller enable/disable block enables or disables Controller configured actions from the Devices menu for all connected controllers.
Controlador [Disable v]
Parameter |
Description |
|---|---|
state |
What state to set the connected controllers to:
|
cuando empezó
[Disable controller configured actions until drive is done.]
Controlador [Disable v]
unidad [adelante v] para (6) [pulgadas v] ▶
Controlador [Enable v]
Events#
when Controller axis changed#
The when Controller axis changed block runs the attached stack of blocks whenever the value of a specified joystick axis changes.
when [Controller1 v] axis [1 v] changed :: hat events
Parameter |
Description |
|---|---|
device |
Which controller to use, configured in the Devices window. |
axis |
Which axis to check:
|
Example
when [Controller1 v] axis [3 v] changed :: hat events
[Move forward when left joystick is up, backwards if down.]
si <([Controller1 v] [3 v] position) [math_greater_than v] [0]> entonces
unidad [adelante v]
de lo contrario si <([Controller1 v] [3 v] position) [math_less_than v] [0]> entonces
unidad [atrás v]
demás
deja de conducir
Screen#
The V5 Controller has access to 3 rows and 19 columns to print on.

print on Controller#
The print on Controller block prints text and numbers to the Controller’s screen.
imprimir [VEXcode] en [Controller 1 v] ▶
Parameter |
Description |
|---|---|
value |
The text, number, or variable value to display. |
device |
Which controller to use, configured in the Devices window. |
expanding arrow |
Expand the block to read and set cursor to next row and make the cursor move to the next row after this block. |
Example
cuando empezó
[Display a message on the Controller.]
imprimir [Hello!] en [Controller 1 v] ▶
set cursor on Controller#
The set cursor on Controller block sets the cursor to a specific row and column on the controller’s screen. The controller screen has 3 rows and 19 columns.

Coloque el cursor en la fila [1] columna [1] de [Controller 1 v]
Parameter |
Description |
|---|---|
row |
The row of the cursor from 1 to 3. |
column |
The column of the cursor from 1 to 19. |
device |
Which controller to use, configured in the Devices window. |
Example
cuando empezó
[Clear the screen to prepare for printing.]
clear [Controller1 v]
Coloque el cursor en la fila [1] columna [1] de [Controller 1 v]
imprimir [Hello!] en [Controller 1 v] ▶
set cursor to next row on Controller#
The set cursor to next row on Controller block sets the cursor to the next row on the controller’s screen.
establece el cursor en la siguiente fila en [Controller 1 v]
Parameter |
Description |
|---|---|
device |
Which controller to use, configured in the Devices window. |
Example
cuando empezó
[Clear the screen to prepare for printing.]
clear [Controller1 v]
Coloque el cursor en la fila [1] columna [1] de [Controller 1 v]
imprimir [Row 1] en [Controller 1 v] ▶
establece el cursor en la siguiente fila en [Controller 1 v]
imprimir [Row 2] en [Controller 1 v] ▶
set print precision on Controller#
The set print precision on Controller block sets how many decimal places are shown when printing numbers on the controller’s screen.
Establezca la precisión de impresión en [1 v] sobre [Controller 1 v]
Parameter |
Description |
|---|---|
precision |
How many decimals will be shown when numbers are printed:
|
device |
Which controller to use, configured in the Devices window. |
Example
cuando empezó
[Display division with two decimals.]
Establezca la precisión de impresión en [0.01 v] sobre [Controller 1 v]
imprimir ([1] [math_division v] [3]) en [Controller 1 v] ▶
clear Controller#
The clear Controller block clears the Controller’s screen.
clear [Controller1 v]
Parameter |
Description |
|---|---|
device |
Which controller to use, configured in the Devices window. |
Example
cuando empezó
[Clear the screen to prepare for printing.]
clear [Controller1 v]
Coloque el cursor en la fila [1] columna [1] de [Controller 1 v]
imprimir [Hello!] en [Controller 1 v] ▶
clear row on Controller#
The clear row on Controller block clears a specified row on the Controller’s screen.
Limpiar la fila [1] en [Controller 1 v]
Parameter |
Description |
|---|---|
row |
Which row to clear from 1 to 3. |
device |
Which controller to use, configured in the Devices window. |
Example
cuando empezó
[Clear only one row on the controller.]
clear [Controller1 v]
Coloque el cursor en la fila [1] columna [1] de [Controller 1 v]
imprimir [I will go!] en [Controller 1 v] ▶
establece el cursor en la siguiente fila en [Controller 1 v]
imprimir [I will stay!] en [Controller 1 v] ▶
esperar [2] segundos
Limpiar la fila [1] en [Controller 1 v]