Arduino development software

Application that facilitates the development and deployment of Arduino firmware programs.

More information here (Arduino CLI) and here (Arduino IDE).

board

A target embedded system. The target could be a development board or microcontroller alone.

Boards Manager

A component of Arduino development software for managing installation and updates of platforms.

More information here (Arduino CLI) and here (Arduino IDE).

core

Code that implements the fundamental Arduino firmware API for a given target.

More information here.

development board

Hardware used as a target during development and prototyping of an embedded system device. This is a PCB with a microcontroller, essential support circuitry, and additional electronic components. Development boards are manufactured by the Arduino company as well as 3rd parties, or created DIY by users.

More information here.

Git

Version control system.

More information here.

GitHub

Popular website that provides Git repository hosting, enhanced with additional collaboration and social features.

More information here.

host

The environment in which a tool will run.

library

A collection of reusable firmware code.

More information here.

Library Manager

A component of Arduino development software for managing installation and updates of standalone Arduino libraries. Not directly relevant to Arduino platforms or this project, but sometimes confused with Boards Manager.

More information here (Arduino CLI) and here (Arduino IDE).

microcontroller

A small, inexpensive, power efficient computer packaged in an integrated circuit.

More information here.

package

A collection of Arduino platforms and/or tools.

package index

Provides the data that allows a platform to be installed via Boards Manager.

More information here.

package provider

Term used in the inoplatforms project to refer to any source of Arduino packages. This will ideally be a package index, but also applies to cases where a platform creator did not provide a package index.

packager

The maintainer of an Arduino package.


โ“˜ The term "package" is used exclusively in the inoplatforms project.


platform

Provides everything needed to add support for a given target to the Arduino development software. This includes the configuration definitions that allow the development software to generate the appropriate tool invocation commands, cores, and libraries.


โ“˜ Platforms are often incorrectly referred to as "cores". Although a platform may (optionally) include a core, the core is only one of the components of a platform.


More information here.

platform bundled library

An Arduino library that is included in the installation of a platform. A platform bundled library is only accessible when compiling for a board of its platform.

More information here.

pluggable discovery

A specific type of tool that provides Arduino development software with a list of ports of a given protocol that might be used for communication between the PC and an Arduino board.

More information here.

pluggable monitor

A specific type of tool that provides the low level interface between Arduino development software and an Arduino board for arbitrary communications by the user. The user interface that wraps this communication in Arduino IDE is named Serial Monitor (which, despite the "serial" in the name, can be used for communication via any protocol thanks to the pluggable monitor system).

More information here.

release

A versioned offering of a platform or tool at a specific point in its development history.

repository

A project under version control.

More information here.

tool

An application used by the Arduino development software to perform a given process (e.g., compilation, upload) for a given target board.

More information here.

tool dependency

The specification of a platform's dependency on a tool.

More information here.

vendor

An alternative term for "packager".


โ“˜ The term "package" is used exclusively in the inoplatforms project.