# The Arduino Ecosystem — Arduino & Embedded C

Source: https://www.skillbyai.com/en/arduino-embedded-c/ard-ecosystem

> Boards, cores, IDE and arduino-cli.

## Boards, cores and tools

Arduino is an open hardware and software ecosystem. Popular boards include the **Uno** (classic Uno R3 uses the ATmega328P at 5 V), the small **Nano** family, and many third-party boards such as the **ESP32** family (3.3 V logic, built-in Wi-Fi). Each board family is supported by a **core**: a package containing the compiler toolchain, the Arduino API implementation (`digitalWrite`, `Serial` and so on) and upload tools. You write code in the **Arduino IDE** or with **arduino-cli**, a command-line tool that is handy for scripting and CI. Boards are identified by a **FQBN** (fully qualified board name) such as `arduino:avr:uno`. Third-party cores like ESP32 are installed by adding the vendor's board-manager URL; check the vendor's documentation for the current URL.

## Installing a core with arduino-cli

Commands shown for reference; flags can change between versions, so check `arduino-cli help`.

```bash
# refresh the list of available cores and install the AVR core (Uno, Nano)
arduino-cli core update-index
arduino-cli core install arduino:avr

# see which boards are connected and their ports
arduino-cli board list

# search for and install a library
arduino-cli lib search "Servo"
arduino-cli lib install "Servo"
```

## Mind the logic voltage

An Uno R3 uses 5 V logic, while ESP32 boards use 3.3 V and their pins are generally not 5 V tolerant. Always check your board's datasheet/pinout before connecting a sensor or module.

**Quiz:** What is an Arduino "core"?

- [x] A package with the toolchain, Arduino API implementation and upload tools for a board family
- [ ] The CPU chip soldered on the board
- [ ] A cloud service that runs your sketch
- [ ] A type of breadboard

*Answer:* A package with the toolchain, Arduino API implementation and upload tools for a board family. Installing the right core lets the same Arduino API compile for different chips.
