Brain#

Introduction#

The VEX IQ (2nd gen) Brain Sensing category offers methods for interacting with the Brain’s buttons and connected battery.

This page uses brain as the example Brain name. Replace it with your own configured name as needed.

Below is a list of all methods:

Actions — Interact with the VEX IQ (2nd gen) Buttons.

  • pressed — Registers a function to be called when the specified button is pressed.

  • released — Registers a function to be called when the specified button is released.

Getters — Return data from the buttons and battery.

  • pressing — Returns whether the specified button is being pressed.

  • capacity — Returns the remaining battery capacity.

  • voltage — Returns the voltage of the battery.

  • current — Returns the current drawn by the battery.

Constructors — Manually initialize the Brain.

  • brain — Create a brain.

Actions#

pressed#

pressed registers a function to be called when a specific button on the Brain is pressed. This method must be called on a specific button object, such as buttonCheck — (see full list of button objects below).

Usage:
One of three available button objects can be used with this method, as shown below:

Button

Command

buttonCheck

brain.buttonCheck.pressed(callback, arg) — The Check button

buttonLeft

brain.buttonLeft.pressed(callback, arg) — The Left button

buttonRight

brain.buttonRight.pressed(callback, arg) — The Right button

Parameters

Description

callback

A function that is previously defined to execute when the specified button is being pressed.

arg

Optional. A tuple containing arguments to pass to the callback function. See Functions with Parameters for more information.

# Turn in a circle when the left button
# is pressed
def button_pressed():
    drivetrain.turn_for(RIGHT, 360, DEGREES)

brain.buttonLeft.pressed(button_pressed)

released#

released registers a function to be called when a specific button on the Brain is released. This method must be called on a specific button object, such as buttonCheck — (see full list of button objects below).

Usage:
One of three available button objects can be used with this method, as shown below:

Button

Command

buttonCheck

brain.buttonCheck.released(callback, arg) — The Check button

buttonLeft

brain.buttonLeft.released(callback, arg) — The Left button

buttonRight

brain.buttonRight.released(callback, arg) — The Right button

Parameters

Description

callback

A function that is previously defined to execute when the specified button is released.

arg

Optional. A tuple containing arguments to pass to the callback function. See Functions with Parameters for more information.

# Turn in a circle when the left button
# is released
def button_released():
    drivetrain.turn_for(LEFT, 360, DEGREES)

brain.buttonLeft.released(button_released)

Getters#

pressing#

pressing returns a Boolean indicating whether a specific button on the Brain is currently being pressed. This method must be called on a specific button object, such as buttonCheck (see full list of button objects below).

  • True — The specified button is being pressed.

  • False — The specified button is not being pressed.

Usage:
One of three available button objects can be used with this method, as shown below:

Button

Command

buttonCheck

brain.buttonCheck.pressing() — The Check button

buttonLeft

brain.buttonLeft.pressing() — The Left button

buttonRight

brain.buttonRight.pressing() — The Right button

Parameters

Description

This method has no parameters.

# Turn when the check button is pressed
while True:
    if brain.buttonCheck.pressing():
        drivetrain.turn(RIGHT)
    else:
        drivetrain.stop()

capacity#

capacity returns the remaining capacity of the battery as a percentage.

Usage:
brain.battery.capacity()

Parameters

Description

This method has no parameters.

# Display the current battery capacity
brain.screen.print(brain.battery.capacity())

voltage#

voltage returns the voltage of the battery as a float.

Usage:
brain.battery.voltage(units)

Parameters

Description

units

Optional. The unit that represents the voltage:

  • MV (default) — Millivolts
  • VOLT

# Display the current voltage of the battery
brain.screen.print(brain.battery.voltage())

current#

current returns the current drawn from the battery in milliamps as a float.

Usage:
brain.battery.current()

Parameters

Description

This method has no parameters.

# Display the current of the battery
brain.screen.print(brain.battery.current())

Constructors#

Brain#

Brain creates an object of the brain class.

Usage:
brain = Brain()

Parameters

Description

This method has no parameters.

brain = Brain()

# Turn when the check button is pressed
while True:
    if brain.buttonCheck.pressing():
        drivetrain.turn(RIGHT)
    else:
        drivetrain.stop()