platform
¶Development Platforms name.
PlatformIO allows to use specific version of platform using Semantic Versioning (X.Y.Z=MAJOR.MINOR.PATCH). Version specifications can take any of the following forms:
0.1.2
: an exact version number. Use only this exact version
^0.1.2
: any compatible version (exact version for 0.x.x
versions
~0.1.2
: any version with the same major and minor versions, and an
equal or greater patch version
>0.1.2
: any version greater than 0.1.2
. >=
, <
, and <=
are also possible
>0.1.0,!=0.2.0,<0.3.0
: any version greater than 0.1.0
, not equal to
0.2.0
and less than 0.3.0
Examples:
[env:the_latest_version]
platform = atmelavr
[env:specific_major_version]
platform = atmelavr@^0.1.2
[env:specific_major_and_minor_version]
platform = atmelavr@~0.1.2
framework
¶Frameworks name.
The multiple frameworks are allowed, split them with comma+space “, “.
board
¶PlatformIO has pre-configured settings for the most popular boards. You don’t
need to specify board_mcu
, board_f_cpu
, upload_protocol
or
upload_speed
options. Just define a board
type and PlatformIO will
pre-fill options described above with appropriate values.
You can find the board
type in Boards section of each Development Platforms or
using PlatformIO Embedded Boards Explorer.
targets
¶A list with targets which will be processed by platformio run command by default. You can enter more than one target, please split them with comma+space “, “.
The list with available targets is located in platformio run --target
.
Example: build a project, upload firmware and start Serial Monitor automatically.
[env:upload_and_monitor]
targets = upload, monitor
Tip! You can use these targets like an option to
platformio run --target
command. For example:
# clean project
platformio run -t clean
# dump current build environment
platformio run --target envdump
When no targets are defined, PlatformIO will build only sources by default.