# Using the Pins

Pins let your @boardname@ interact with the outside world. They let you run servos, read switch settings, turn on LEDs, talk to sensors, and much more. You have blocks that let you use the pins in different ways by your programs. How you connect and program the pins depends on how you want to use them. This tutorial shows you the different ways the pins are connected and how you code for them.

![CPX pinouts](/static/cp/learn/pins-tutorial/pinouts.jpg)

The @boardname@ has several pins located around its edge. Some of these are dedicated to providing a supply voltage or a place for grounding a circuit. The other pins are available to use for digital I/O, analog I/O, servos, or communication with sensors and other boards.

Some of these pins are configurable for use in both digital or analog I/O. This means they can have different input and output modes. When you use the blocks for these in a program, they are configured for the proper mode before any input is read or output sent.

## Tutorials

```codecard
[{
  "name": "Digital Input",
  "description": "Learn how to recieve and read digital input.",
  "url":"/learnsystem/pins-tutorial/digital-input"
}, {
  "name": "Digital Output",
  "description": "Create output signals on the pins.",
   "url":"/learnsystem/pins-tutorial/digital-output"
}, {
  "name": "Analog Input",
  "description": "Read and use analog signal values.",
  "url":"/learnsystem/pins-tutorial/analog-input"
}, {
  "name": "Touch Input",
  "description": "Use pins and other objects as touch inputs.",
  "url":"/learnsystem/pins-tutorial/touch-input"
}]
```

## Related topics

[Digital input](https://learn.adafruit.com/circuit-playground-digital-input),
[Analog input](https://learn.adafruit.com/circuit-playground-analog-input),
[Make it Switch](https://learn.adafruit.com/make-it-switch),
[Wires and Connections](https://learn.adafruit.com/wires-and-connections)

[Pinouts](https://learn.adafruit.com/adafruit-circuit-playground-express/pinouts)
