Romi GPIO (Optional)
As is the case with most microcontrollers, the Romi has GPIO pins that allow it to communicate with its sensors and actuators. GPIO stands for General Purpose Input/Output is an uncommitted digital signal pin on an integrated circuit or electronic circuit board which may be used as an input or output, or both, and is controllable by the user at runtime. GPIOs have no predefined purpose and are unused by default.
Onboard IO
Some of the GPIO pins on the Romi are already connected to input/output devices. In the code these pins are addressed by digital input/output ports DIOs. The address to pin mapping is shown below.

In the romiReference project comes with the subsystem OnboardIO to control the IO ports for the onboard components.
External IO
There are additional GPIO pins available for general purpose use that can be utilized via header pins. These can be configured via the Romi UI as detailed by the External IO Configuration FRC documentation.

Lab - Romi GPIO
There is currently no lab for this section.
References
-
Wikipedia - GPIO
-
FRC Documentain - External IO Configuration