Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:vodoo
platformio
platformio.1
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File platformio.1 of Package platformio
.\" Man page generated from reStructuredText. . .TH "PLATFORMIO" "1" "April 10, 2015" "1.4" "PlatformIO" .SH NAME platformio \- PlatformIO Documentation . .nr rst2man-indent-level 0 . .de1 rstReportMargin \\$1 \\n[an-margin] level \\n[rst2man-indent-level] level margin: \\n[rst2man-indent\\n[rst2man-indent-level]] - \\n[rst2man-indent0] \\n[rst2man-indent1] \\n[rst2man-indent2] .. .de1 INDENT .\" .rstReportMargin pre: . RS \\$1 . nr rst2man-indent\\n[rst2man-indent-level] \\n[an-margin] . nr rst2man-indent-level +1 .\" .rstReportMargin post: .. .de UNINDENT . RE .\" indent \\n[an-margin] .\" old: \\n[rst2man-indent\\n[rst2man-indent-level]] .nr rst2man-indent-level -1 .\" new: \\n[rst2man-indent\\n[rst2man-indent-level]] .in \\n[rst2man-indent\\n[rst2man-indent-level]]u .. .sp \fIAtmel AVR & SAM, Freescale Kinetis, Nordic nRF51, NXP LPC, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed, libOpenCM3, etc.\fP \fI\%\fP.INDENT 0.0 .IP \(bu 2 \fI\%Website\fP .IP \(bu 2 \fI\%Web 2.0 Library Search\fP | \fI\%Embedded Boards Explorer\fP .IP \(bu 2 \fI\%Project Examples\fP .IP \(bu 2 \fI\%Source Code\fP | \fI\%Issues\fP .IP \(bu 2 \fI\%Blog\fP | \fI\%Reddit\fP | \fI\%Twitter\fP .UNINDENT .sp You have \fBno need\fP to install any \fIIDE\fP or compile any tool chains. \fIPlatformIO\fP has pre\-built different development platforms and pre\-configured settings for the most popular embedded boards. For further details, please refer to \fIfaq_what_is_platformio\fP .SH EMBEDDED DEVELOPMENT. EASIER THAN EVER. .INDENT 0.0 .IP \(bu 2 Colourful command\-line output .IP \(bu 2 Built\-in \fISerial Port Monitor\fP .IP \(bu 2 Configurable build \fI\-flags/\-options\fP .IP \(bu 2 Integration with \fIdevelopment environments (IDE)\fP .IP \(bu 2 Pre\-built tool chains, \fIframeworks\fP for the popular Hardware Platforms .UNINDENT .SH SMART CODE BUILDER. FAST AND RELIABLE. .INDENT 0.0 .IP \(bu 2 Reliable, automatic dependency analysis and detection of build changes .IP \(bu 2 Improved support for parallel builds .IP \(bu 2 Ability to share built files in a cache .IP \(bu 2 Lookup for external libraries which are installed via \fIlibrarymanager\fP .UNINDENT .SH THE MISSING LIBRARY MANAGER. IT'S HERE! .INDENT 0.0 .IP \(bu 2 Friendly Command\-Line Interface .IP \(bu 2 Modern \fI\%Web 2.0 Library Search\fP .IP \(bu 2 Library dependency management .IP \(bu 2 Automatic library updating .IP \(bu 2 It runs on Windows, Mac OS X, and Linux (+ARM). .UNINDENT .SH CONTENTS .SS Quickstart .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 Please read \fI\%Get Started\fP article from the official WebSite. .UNINDENT .UNINDENT .INDENT 0.0 .IP 1. 3 \fIInstall PlatformIO\fP\&. .IP 2. 3 Find board \fBtype\fP on this \fIEmbedded Boards\fP page or via \fIcmd_boards\fP command. .IP 3. 3 Initialize new PlatformIO based project via \fIcmd_init\fP command with the pre\-configured environments for your boards: .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio init \-\-board=TYPE_1 \-\-board=TYPE_2 \-\-board=TYPE_N Would you like to enable firmware auto\-uploading when project is successfully built using \(gaplatformio run\(ga command? Don\(aqt forget that you can upload firmware manually using \(gaplatformio run \-\-target upload\(ga command. [y/N]: y The current working directory *** will be used for the new project. You can specify another project directory via \(gaplatformio init \-d %PATH_TO_THE_PROJECT_DIR%\(ga command. The next files/directories will be created in *** platformio.ini \- Project Configuration File. |\-> PLEASE EDIT ME <\-| src \- Put your source code here lib \- Put here project specific or 3\-rd party libraries Do you want to continue? [y/N]: y Project has been successfully initialized! Useful commands: \(gaplatformio run\(ga \- process/build project from the current directory \(gaplatformio run \-\-target upload\(ga or \(gaplatformio run \-t upload\(ga \- upload firmware to embedded board \(gaplatformio run \-\-target clean\(ga \- clean project (remove compiled files) .ft P .fi .UNINDENT .UNINDENT .sp Put your source code \fB*.h, *.c, *.cpp or *.ino\fP files to \fBsrc\fP directory. .INDENT 0.0 .IP 4. 3 Process the project\(aqs environments. .UNINDENT .sp Change working directory to the project\(aqs root where is located \fIProject Configuration File (platformio.ini)\fP and run: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio run # if you don\(aqt have specified \(gatargets = upload\(ga option for environment, # then you can upload firmware manually with this command: $ platformio run \-\-target upload # clean project $ platformio run \-\-target clean .ft P .fi .UNINDENT .UNINDENT .sp If you don\(aqt have installed required platforms, then \fIPlatformIO\fP will propose you to install them automatically. .sp Further examples can be found in \fI\%PlatformIO Repository\fP\&. .sp Also, for more detailed information as for commands please go to \fIuserguide\fP sections. .SS Installation .sp \fBPlatformIO\fP is written in \fI\%Python\fP and works on Mac OS X, Linux, Windows OS and \fIARM\fP\-based credit\-card sized computers (\fI\%Raspberry Pi\fP, \fI\%BeagleBone\fP, \fI\%CubieBoard\fP). .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Installation\fP .INDENT 2.0 .IP \(bu 2 \fI\%System requirements\fP .IP \(bu 2 \fI\%Troubleshooting\fP .IP \(bu 2 \fI\%Installation Methods\fP .INDENT 2.0 .IP \(bu 2 \fI\%Super\-Quick (Mac / Linux)\fP .IP \(bu 2 \fI\%Installer Script (Mac / Linux / Windows)\fP .IP \(bu 2 \fI\%Full Guide\fP .IP \(bu 2 \fI\%Development Version\fP .UNINDENT .UNINDENT .UNINDENT .SS System requirements .INDENT 0.0 .IP \(bu 2 .INDENT 2.0 .TP .B \fBOperating systems:\fP .INDENT 7.0 .IP \(bu 2 Mac OS X .IP \(bu 2 Linux, +ARM .IP \(bu 2 Windows .UNINDENT .UNINDENT .IP \(bu 2 \fI\%Python 2.6 or Python 2.7\fP .UNINDENT .sp All commands below should be executed in \fI\%Command\-line\fP application: .INDENT 0.0 .IP \(bu 2 \fIMac OS X / Linux\fP this is \fITerminal\fP application. .IP \(bu 2 \fIWindows\fP this is \fI\%Command Prompt\fP (\fBcmd.exe\fP) application. .UNINDENT .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 If you are going to run \fIPlatformIO\fP from \fBsubprocess\fP, you \fIMUST DISABLE\fP all prompts. It will allow you to avoid blocking. .UNINDENT .UNINDENT .SS Troubleshooting .sp For further details, frequently questions, please refer to \fIfaq\fP\&. .SS Installation Methods .sp Please \fIchoose one of\fP the following installation methods: .SS Super\-Quick (Mac / Linux) .sp To install or upgrade \fIPlatformIO\fP paste that at a \fITerminal\fP prompt (\fByou might need\fP to run \fBsudo\fP first): .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C python \-c "$(curl \-fsSL https://raw.githubusercontent.com/platformio/platformio/master/scripts/get\-platformio.py)" .ft P .fi .UNINDENT .UNINDENT .SS Installer Script (Mac / Linux / Windows) .sp To install or upgrade \fIPlatformIO\fP, download \fI\%get\-platformio.py\fP script. Then run the following (you might need to run \fBsudo\fP first): .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C python get\-platformio.py .ft P .fi .UNINDENT .UNINDENT .sp On \fIWindows OS\fP it may look like: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C C:\ePython27\epython.exe get\-platformio.py .ft P .fi .UNINDENT .UNINDENT .SS Full Guide .INDENT 0.0 .IP 1. 3 Check a \fBpython\fP version (only 2.6\-2.7 is supported): .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ python \-\-version .ft P .fi .UNINDENT .UNINDENT .sp \fIWindows OS\fP Users only: .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 \fI\%Download Python 2.7\fP and install it. .IP \(bu 2 .INDENT 2.0 .TP .B Add to PATH system variable \fB;C:\ePython27;C:\ePython27\eScripts;\fP and reopen \fICommand Prompt\fP (\fBcmd.exe\fP) application. Please read this article \fI\%How to set the path and environment variables in Windows\fP\&. .UNINDENT .UNINDENT .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Check a \fBpip\fP tool for installing and managing \fIPython\fP packages: .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ pip search platformio .ft P .fi .UNINDENT .UNINDENT .sp You should see short information about \fBplatformio\fP package. .sp If your computer does not recognize \fBpip\fP command, try to install it first using \fI\%these instructions\fP\&. .INDENT 0.0 .IP 3. 3 Install a \fBplatformio\fP and related packages: .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ pip install platformio && pip install \-\-egg scons .ft P .fi .UNINDENT .UNINDENT .sp For upgrading the \fBplatformio\fP to new version please use this command: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ pip install \-U platformio .ft P .fi .UNINDENT .UNINDENT .SS Development Version .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 We don\(aqt recommend to use \fBdevelop\fP version in production. .UNINDENT .UNINDENT .INDENT 0.0 .IP 1. 3 If you had have already installed PlatformIO, please uninstall it: .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ pip uninstall platformio .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Install the latest PlatformIO from the \fBdevelop\fP branch: .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ pip install https://github.com/platformio/platformio/archive/develop.zip .ft P .fi .UNINDENT .UNINDENT .sp If you want to be up\-to\-date with the latest \fBdevelop\fP version of PlatformIO, then you need to perform step #2 each time if you see the new commits in \fI\%PlatformIO GitHub repository\fP\&. .SS Project Configuration File \fBplatformio.ini\fP .sp The Project configuration file is named \fBplatformio.ini\fP\&. This is a \fI\%INI\-style\fP file. .sp \fBplatformio.ini\fP has sections (each denoted by a \fB[header]\fP) and key / value pairs within the sections. A sign \fB#\fP at the beginning of the line indicates a comment. Comment lines are ignored. .sp The sections and their allowable values are described below. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Project Configuration File platformio.ini\fP .INDENT 2.0 .IP \(bu 2 \fI\%[platformio]\fP .INDENT 2.0 .IP \(bu 2 \fI\%Options\fP .INDENT 2.0 .IP \(bu 2 \fI\%home_dir\fP .IP \(bu 2 \fI\%lib_dir\fP .IP \(bu 2 \fI\%src_dir\fP .IP \(bu 2 \fI\%envs_dir\fP .UNINDENT .UNINDENT .IP \(bu 2 \fI\%[env:NAME]\fP .INDENT 2.0 .IP \(bu 2 \fI\%Options\fP .INDENT 2.0 .IP \(bu 2 \fI\%platform\fP .IP \(bu 2 \fI\%framework\fP .IP \(bu 2 \fI\%board\fP .IP \(bu 2 \fI\%board_mcu\fP .IP \(bu 2 \fI\%board_f_cpu\fP .IP \(bu 2 \fI\%upload_port\fP .IP \(bu 2 \fI\%upload_protocol\fP .IP \(bu 2 \fI\%upload_speed\fP .IP \(bu 2 \fI\%targets\fP .IP \(bu 2 \fI\%build_flags\fP .IP \(bu 2 \fI\%srcbuild_flags\fP .IP \(bu 2 \fI\%ignore_libs\fP .UNINDENT .UNINDENT .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS [platformio] .sp A \fBplatformio\fP section is used for overriding default configuration options .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 Relative path is allowed for directory option: .INDENT 0.0 .IP \(bu 2 \fB~\fP will be expanded to user\(aqs home directory .IP \(bu 2 \fB\&../\fP or \fB\&..\e\fP go up to one folder .UNINDENT .UNINDENT .UNINDENT .SS Options .SS \fBhome_dir\fP .sp Is used to store platform tool chains, frameworks, external libraries, service data and etc. .sp A default value is User\(aqs home directory: .INDENT 0.0 .IP \(bu 2 Unix \fB~/.platformio\fP .IP \(bu 2 Windows \fB%HOMEPATH%\e.platformio\fP .UNINDENT .sp This option can be overridden by global environment variable \fIenvvar_PLATFORMIO_HOME_DIR\fP\&. .SS \fBlib_dir\fP .sp This directory is used to store external libraries downloaded by \fIlibrarymanager\fP\&. .sp A default value is \fB%home_dir%/lib\fP\&. .sp This option can be overridden by global environment variable \fIenvvar_PLATFORMIO_LIB_DIR\fP\&. .SS \fBsrc_dir\fP .sp A path to project\(aqs source directory. PlatformIO uses it for \fIcmd_run\fP command. .sp A default value is \fB%project_dir%/src\fP\&. .sp This option can be overridden by global environment variable \fIenvvar_PLATFORMIO_SRC_DIR\fP\&. .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 This option is useful for people who migrate from Arduino/Energia IDEs where source directory should have the same name like the main source file. See \fI\%example\fP project with own source directory. .UNINDENT .UNINDENT .SS \fBenvs_dir\fP .sp \fIPlatformIO Builder\fP within \fIcmd_run\fP command uses this folder for project environments to store compiled object files, static libraries, firmwares and other cached information. It allows PlatformIO to build source code extremely fast! .sp \fIYou can delete this folder without any risk!\fP If you modify \fIprojectconf\fP, then PlatformIO will remove this folder automatically. It will be created on the next build operation. .sp A default value is \fB%project_dir%/.pioenvs\fP\&. .sp This option can be overridden by global environment variable \fIenvvar_PLATFORMIO_ENVS_DIR\fP\&. .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 If you have any problems with building your Project environmets which are defined in \fIprojectconf\fP, then \fBTRY TO DELETE\fP this folder. In this situation you will remove all cached files without any risk. .UNINDENT .UNINDENT .SS [env:NAME] .sp A section with \fBenv:\fP prefix is used to define virtual environment with specific options that will be processed with \fIcmd_run\fP command. You can define unlimited numbers of environments. .sp Each environment must have unique \fBNAME\fP\&. The valid chars for \fBNAME\fP are .INDENT 0.0 .IP \(bu 2 letters \fBa\-z\fP .IP \(bu 2 numbers \fB0\-9\fP .IP \(bu 2 special char \fB_\fP (underscore) .UNINDENT .sp For example, \fB[env:hello_world]\fP\&. .SS Options .SS \fBplatform\fP .sp \fIPlatform\fP type. .SS \fBframework\fP .sp \fIFramework\fP type. .sp The multiple frameworks are allowed, split them with comma \fB,\fP separator. .SS \fBboard\fP .sp \fIPlatformIO\fP has pre\-configured settings for the most popular boards. You don\(aqt need to specify \fBboard_mcu\fP, \fBboard_f_cpu\fP, \fBupload_protocol\fP or \fBupload_speed\fP options. Just define a \fBboard\fP type and \fIPlatformIO\fP will pre\-fill options described above with appropriate values. .sp You can find the \fBboard\fP type in \fIBoards\fP section of each \fIplatforms\fP\&. .SS \fBboard_mcu\fP .sp \fBboard_mcu\fP is a microcontroller(MCU) type that is used by compiler to recognize MCU architecture. The correct type of \fBboard_mcu\fP depends on platform library. For example, the list of \fBboard_mcu\fP for "megaAVR Devices" is described \fI\%here\fP\&. .sp The full list of \fBboard_mcu\fP for the popular embedded platforms you can find in \fIBoards\fP section of \fIplatforms\fP\&. See "Microcontroller" column. .SS \fBboard_f_cpu\fP .sp An option \fBboard_f_cpu\fP is used to define MCU frequency (Hertz, Clock). A format of this option is \fBC\-like long integer\fP value with \fBL\fP suffix. The 1 Hertz is equal to \fB1L\fP, then 16 Mhz (Mega Hertz) is equal to \fB16000000L\fP\&. .sp The full list of \fBboard_f_cpu\fP for the popular embedded platforms you can find in \fIBoards\fP section of \fIplatforms\fP\&. See "Frequency" column. .SS \fBupload_port\fP .sp This option is used by "uploader" tool when sending firmware to board via \fBupload_port\fP\&. For example, .INDENT 0.0 .IP \(bu 2 \fB/dev/ttyUSB0\fP \- Unix\-based OS .IP \(bu 2 \fBCOM3\fP \- Windows OS .UNINDENT .sp If \fBupload_port\fP isn\(aqt specified, then \fIPlatformIO\fP will try to detect it automatically. .sp To print all available serial ports use \fIcmd_serialports\fP command. .SS \fBupload_protocol\fP .sp A protocol that "uploader" tool uses to talk to the board. .SS \fBupload_speed\fP .sp A connection speed (\fI\%baud rate\fP) which "uploader" tool uses when sending firmware to board. .SS \fBtargets\fP .sp A list with targets which will be processed by \fIcmd_run\fP command by default. You can enter more then one target separated with "space". .sp When no targets are defined, \fIPlatformIO\fP will build only sources by default. .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 This option is useful to enable "auto\-uploading" after building operation (\fBtargets = upload\fP). .UNINDENT .UNINDENT .SS \fBbuild_flags\fP .sp These flags/options control preprocessing, compilation, assembly and linking processes: .TS center; |l|l|l|. _ T{ Format T} T{ Scope T} T{ Description T} _ T{ \fBWp,option\fP T} T{ CPPFLAGS T} T{ Bypass the compiler driver and pass \fIoption\fP directly through to the preprocessor T} _ T{ \fB\-D name\fP T} T{ CPPDEFINES T} T{ Predefine \fIname\fP as a macro, with definition 1. T} _ T{ \fB\-D name=definition\fP T} T{ CPPDEFINES T} T{ The contents of \fIdefinition\fP are tokenized and processed as if they appeared during translation phase three in a \fB#define\fP directive. T} _ T{ \fB\-U name\fP T} T{ CPPDEFINES T} T{ Cancel any previous definition of \fIname\fP, either built in or provided with a \fB\-D\fP option. T} _ T{ \fB\-Wall\fP T} T{ CCFLAGS T} T{ Turns on all optional warnings which are desirable for normal code. T} _ T{ \fB\-Werror\fP T} T{ CCFLAGS T} T{ Make all warnings into hard errors. Source code which triggers warnings will be rejected. T} _ T{ \fB\-w\fP T} T{ CCFLAGS T} T{ Suppress all warnings, including those which GNU CPP issues by default. T} _ T{ \fB\-include file\fP T} T{ CCFLAGS T} T{ Process \fIfile\fP as if \fB#include "file"\fP appeared as the first line of the primary source file. T} _ T{ \fB\-Wa,option\fP T} T{ ASFLAGS, CCFLAGS T} T{ Pass \fIoption\fP as an option to the assembler. If \fIoption\fP contains commas, it is split into multiple options at the commas. T} _ T{ \fB\-llibrary\fP T} T{ LIBS T} T{ Search the \fIlibrary\fP named library when linking T} _ T{ \fB\-Ldir\fP T} T{ LIBPATH T} T{ Add directory \fIdir\fP to the list of directories to be searched for \fB\-l\fP\&. T} _ T{ \fB\-Idir\fP T} T{ CPPPATH T} T{ Add the directory \fIdir\fP to the list of directories to be searched for header files. T} _ .TE .sp Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:specific_defines] build_flags = \-O2 \-Dfoo \-Dbar=1 [env:specific_inclibs] build_flags = \-I/opt/include \-L/opt/lib \-lfoo .ft P .fi .UNINDENT .UNINDENT .sp For more detailed information about available flags/options go to: .INDENT 0.0 .IP \(bu 2 \fI\%Options to Request or Suppress Warnings\fP .IP \(bu 2 \fI\%Options for Debugging Your Program\fP .IP \(bu 2 \fI\%Options That Control Optimization\fP .IP \(bu 2 \fI\%Options Controlling the Preprocessor\fP .IP \(bu 2 \fI\%Passing Options to the Assembler\fP .IP \(bu 2 \fI\%Options for Linking\fP .IP \(bu 2 \fI\%Options for Directory Search\fP .UNINDENT .SS \fBsrcbuild_flags\fP .sp An option \fBsrcbuild_flags\fP has the same behaviour like \fBbuild_flags\fP but will be applied only for the project source code from \fIprojectconf_pio_src_dir\fP directory. .sp This option can be overridden by global environment variable \fIenvvar_PLATFORMIO_SRCBUILD_FLAGS\fP\&. .SS \fBignore_libs\fP .sp Specify libraries which should be ignored by \fBLibrary Dependency Finder\fP .sp Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:ignore_some_libs] ignore_libs = SPI,EngduinoV3_ID123 .ft P .fi .UNINDENT .UNINDENT .SS Examples .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 A full list with project examples can be found in \fI\%PlatformIO Repository\fP\&. .UNINDENT .UNINDENT .INDENT 0.0 .IP 1. 3 \fIplatform_atmelavr\fP: Arduino UNO board with auto pre\-configured \fBboard_*\fP and \fBupload_*\fP options (use only \fBboard\fP option) and Arduino Wiring\-based Framework .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:atmelavr_arduino_uno_board] platform = atmelavr framework = arduino board = uno # enable auto\-uploading targets = upload .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 \fIplatform_atmelavr\fP: Microduino Core (ATmega168P, 3.3V) board with auto pre\-configured \fBboard_*\fP and \fBupload_*\fP options (use only \fBboard\fP option) and Arduino Wiring\-based Framework .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:atmelavr_microduino_core_board] platform = atmelavr framework = arduino board = 168pa8m # enable auto\-uploading targets = upload .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 \fIplatform_atmelavr\fP: Raspduino board with auto pre\-configured \fBboard_*\fP and \fBupload_*\fP options (use only \fBboard\fP option) and Arduino Wiring\-based Framework .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:atmelavr_raspduino_board] platform = atmelavr framework = arduino board = raspduino upload_port = /dev/ttyS0 # enable auto\-uploading targets = upload .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 4. 3 \fIplatform_atmelavr\fP: Embedded board that is based on ATmega168 MCU with "arduino" bootloader .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:atmelavr_atmega168_board] platform = atmelavr board_mcu = atmega168 board_f_cpu = 16000000L upload_port = /dev/ttyUSB0 # for Windows OS # upload_port = COM3 upload_protocol = arduino upload_speed = 19200 # enable auto\-uploading targets = upload .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 5. 3 Upload firmware via USB programmer (USBasp) to \fIplatform_atmelavr\fP microcontrollers .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:atmelavr_usbasp] platform = atmelavr framework = arduino board = pro8MHzatmega328 upload_protocol = usbasp \-B5 .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 6. 3 \fIplatform_timsp430\fP: TI MSP430G2553 LaunchPad with auto pre\-configured \fBboard_*\fP and \fBupload_*\fP options (use only \fBboard\fP option) and Energia Wiring\-based Framework .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:timsp430_g2553_launchpad] platform = timsp430 framework = energia board = lpmsp430g2553 .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 7. 3 \fIplatform_timsp430\fP: Embedded board that is based on MSP430G2553 MCU .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:timsp430_g2553_board] platform = timsp430 board_mcu = msp430g2553 board_f_cpu = 16000000L upload_protocol = rf2500 # enable auto\-uploading targets = upload .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 8. 3 \fIplatform_titiva\fP: TI Tiva C ARM Series TM4C123G LaunchPad with auto pre\-configured \fBboard_*\fP and \fBupload_*\fP options (use only \fBboard\fP option) and Energia Wiring\-based Framework .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [env:titiva_tm4c1230c3pm_launchpad] platform = titiva framework = energia board = lptm4c1230c3pm .ft P .fi .UNINDENT .UNINDENT .SS Environment variables .sp \fI\%Environment variables\fP are a set of dynamic named values that can affect the way running processes will behave on a computer. .sp \fIPlatformIO\fP handles variables which start with \fBPLATFORMIO_\fP prefix. They have the \fBHIGHEST PRIORITY\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Environment variables\fP .INDENT 2.0 .IP \(bu 2 \fI\%General\fP .INDENT 2.0 .IP \(bu 2 \fI\%CI\fP .IP \(bu 2 \fI\%PLATFORMIO_HOME_DIR\fP .IP \(bu 2 \fI\%PLATFORMIO_LIB_DIR\fP .IP \(bu 2 \fI\%PLATFORMIO_SRC_DIR\fP .IP \(bu 2 \fI\%PLATFORMIO_ENVS_DIR\fP .UNINDENT .IP \(bu 2 \fI\%Builder\fP .INDENT 2.0 .IP \(bu 2 \fI\%PLATFORMIO_SRCBUILD_FLAGS\fP .UNINDENT .IP \(bu 2 \fI\%Settings\fP .INDENT 2.0 .IP \(bu 2 \fI\%PLATFORMIO_SETTING_AUTO_UPDATE_LIBRARIES\fP .IP \(bu 2 \fI\%PLATFORMIO_SETTING_AUTO_UPDATE_PLATFORMS\fP .IP \(bu 2 \fI\%PLATFORMIO_SETTING_CHECK_LIBRARIES_INTERVAL\fP .IP \(bu 2 \fI\%PLATFORMIO_SETTING_CHECK_PLATFORMIO_INTERVAL\fP .IP \(bu 2 \fI\%PLATFORMIO_SETTING_CHECK_PLATFORMS_INTERVAL\fP .IP \(bu 2 \fI\%PLATFORMIO_SETTING_ENABLE_PROMPTS\fP .IP \(bu 2 \fI\%PLATFORMIO_SETTING_ENABLE_TELEMETRY\fP .UNINDENT .UNINDENT .UNINDENT .SS General .sp PlatformIO uses \fIGeneral\fP environment variables for the common operations/commands. .SS CI .sp PlatformIO handles \fBCI\fP variable which is setup by \fI\%Continuous Integration\fP (Travis, Circle and etc.) systems. Currently, PlatformIO uses it to disable prompts. .sp In other words, \fBCI=true\fP automatically setup \fIPLATFORMIO_SETTING_ENABLE_PROMPTS=false\fP\&. .SS PLATFORMIO_HOME_DIR .sp Allows to override \fIprojectconf\fP option \fIprojectconf_pio_home_dir\fP\&. .SS PLATFORMIO_LIB_DIR .sp Allows to override \fIprojectconf\fP option \fIprojectconf_pio_lib_dir\fP\&. .SS PLATFORMIO_SRC_DIR .sp Allows to override \fIprojectconf\fP option \fIprojectconf_pio_src_dir\fP\&. .SS PLATFORMIO_ENVS_DIR .sp Allows to override \fIprojectconf\fP option \fIprojectconf_pio_envs_dir\fP\&. .SS Builder .SS PLATFORMIO_SRCBUILD_FLAGS .sp Allows to override \fIprojectconf\fP option \fIprojectconf_srcbuild_flags\fP\&. .SS Settings .sp Allows to override PlatformIO settings. You can manage them via \fIcmd_settings\fP command. .SS PLATFORMIO_SETTING_AUTO_UPDATE_LIBRARIES .sp Allows to override setting \fIsetting_auto_update_libraries\fP\&. .SS PLATFORMIO_SETTING_AUTO_UPDATE_PLATFORMS .sp Allows to override setting \fIsetting_auto_update_platforms\fP\&. .SS PLATFORMIO_SETTING_CHECK_LIBRARIES_INTERVAL .sp Allows to override setting \fIsetting_check_libraries_interval\fP\&. .SS PLATFORMIO_SETTING_CHECK_PLATFORMIO_INTERVAL .sp Allows to override setting \fIsetting_check_platformio_interval\fP\&. .SS PLATFORMIO_SETTING_CHECK_PLATFORMS_INTERVAL .sp Allows to override setting \fIsetting_check_platforms_interval\fP\&. .SS PLATFORMIO_SETTING_ENABLE_PROMPTS .sp Allows to override setting \fIsetting_enable_prompts\fP\&. .SS PLATFORMIO_SETTING_ENABLE_TELEMETRY .sp Allows to override setting \fIsetting_enable_telemetry\fP\&. .SS Platforms & Embedded Boards .sp \fIPlatformIO\fP has pre\-built different development platforms for popular OS (\fIMac OS X, Linux (+ARM) and Windows\fP). Each of them include compiler, debugger, uploader (for embedded) and many other useful tools. .sp Also it has pre\-configured settings for most popular \fBEmbedded Platform Boards\fP\&. You have no need to specify in \fIprojectconf\fP type or frequency of MCU, upload protocol or etc. Please use \fBboard\fP option. .SS Platform \fBatmelavr\fP .sp Atmel AVR 8\- and 32\-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market\-and easily adapt to new ones\-they are based on the industrys most code\-efficient architecture for C and assembly programming. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform atmelavr\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%Adafruit\fP .IP \(bu 2 \fI\%Arduino\fP .IP \(bu 2 \fI\%BQ\fP .IP \(bu 2 \fI\%BitWizard\fP .IP \(bu 2 \fI\%Digistump\fP .IP \(bu 2 \fI\%Engduino\fP .IP \(bu 2 \fI\%LightUp\fP .IP \(bu 2 \fI\%LowPowerLab\fP .IP \(bu 2 \fI\%Microduino\fP .IP \(bu 2 \fI\%PanStamp\fP .IP \(bu 2 \fI\%RedBearLab\fP .IP \(bu 2 \fI\%RepRap\fP .IP \(bu 2 \fI\%Sanguino\fP .IP \(bu 2 \fI\%SparkFun\fP .IP \(bu 2 \fI\%TinyCircuits\fP .IP \(bu 2 \fI\%WickedDevice\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBtoolchain\-atmelavr\fP T} T{ \fI\%avr\-gcc\fP, \fI\%GDB\fP, \fI\%AVaRICE\fP, \fI\%SimulAVR\fP T} _ T{ \fBtool\-avrdude\fP T} T{ \fI\%AVRDUDE\fP T} _ T{ \fBframework\-arduinoavr\fP T} T{ \fI\%Arduino Wiring\-based Framework (AVR Core, 1.6)\fP T} _ T{ \fBtool\-micronucleus\fP T} T{ \fI\%Micronucleus\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_arduino\fP T} T{ Arduino Framework allows writing cross\-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS Adafruit .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBflora8\fP T} T{ \fI\%Adafruit Flora\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBprotrinket3\fP T} T{ \fI\%Adafruit Pro Trinket 3V/12MHz (USB)\fP T} T{ ATMEGA328P T} T{ 12 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBprotrinket3ftdi\fP T} T{ \fI\%Adafruit Pro Trinket 3V/12MHz (FTDI)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBprotrinket5\fP T} T{ \fI\%Adafruit Pro Trinket 5V/16MHz (USB)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBprotrinket5ftdi\fP T} T{ \fI\%Adafruit Pro Trinket 5V/16MHz (USB)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBtrinket3\fP T} T{ \fI\%Adafruit Trinket 3V/8MHz\fP T} T{ ATTINY85 T} T{ 8 MHz T} T{ 8 Kb T} T{ 0.5 Kb T} _ T{ \fBtrinket5\fP T} T{ \fI\%Adafruit Trinket 5V/16MHz\fP T} T{ ATTINY85 T} T{ 16 MHz T} T{ 8 Kb T} T{ 0.5 Kb T} _ .TE .SS Arduino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBLilyPadUSB\fP T} T{ \fI\%Arduino LilyPad USB\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBatmegangatmega168\fP T} T{ \fI\%Arduino NG or older ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBatmegangatmega8\fP T} T{ \fI\%Arduino NG or older ATmega8\fP T} T{ ATMEGA8 T} T{ 16 MHz T} T{ 8 Kb T} T{ 1 Kb T} _ T{ \fBbtatmega168\fP T} T{ \fI\%Arduino BT ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBbtatmega328\fP T} T{ \fI\%Arduino BT ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBdiecimilaatmega168\fP T} T{ \fI\%Arduino Duemilanove or Diecimila ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBdiecimilaatmega328\fP T} T{ \fI\%Arduino Duemilanove or Diecimila ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBesplora\fP T} T{ \fI\%Arduino Esplora\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBethernet\fP T} T{ \fI\%Arduino Ethernet\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBfio\fP T} T{ \fI\%Arduino Fio\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBleonardo\fP T} T{ \fI\%Arduino Leonardo\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBlilypadatmega168\fP T} T{ \fI\%Arduino LilyPad ATmega168\fP T} T{ ATMEGA168 T} T{ 8 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBlilypadatmega328\fP T} T{ \fI\%Arduino LilyPad ATmega328\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBmegaADK\fP T} T{ \fI\%Arduino Mega ADK\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBmegaatmega1280\fP T} T{ \fI\%Arduino Mega or Mega 2560 ATmega1280\fP T} T{ ATMEGA1280 T} T{ 16 MHz T} T{ 128 Kb T} T{ 8 Kb T} _ T{ \fBmegaatmega2560\fP T} T{ \fI\%Arduino Mega or Mega 2560 ATmega2560 (Mega 2560)\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBmicro\fP T} T{ \fI\%Arduino Micro\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBminiatmega168\fP T} T{ \fI\%Arduino Mini ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBminiatmega328\fP T} T{ \fI\%Arduino Mini ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBnanoatmega168\fP T} T{ \fI\%Arduino Nano ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBnanoatmega328\fP T} T{ \fI\%Arduino Nano ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBpro16MHzatmega168\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz)\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBpro16MHzatmega328\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega328 (5V, 16 MHz)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBpro8MHzatmega168\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz)\fP T} T{ ATMEGA168 T} T{ 8 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBpro8MHzatmega328\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega328 (3.3V, 8 MHz)\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBrobotControl\fP T} T{ \fI\%Arduino Robot Control\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBrobotMotor\fP T} T{ \fI\%Arduino Robot Motor\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBuno\fP T} T{ \fI\%Arduino Uno\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fByun\fP T} T{ \fI\%Arduino Yun\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS BQ .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBzumbt328\fP T} T{ \fI\%BQ ZUM BT\-328 board\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS BitWizard .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBraspduino\fP T} T{ \fI\%BitWizard Raspduino\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS Digistump .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdigispark\-pro\fP T} T{ \fI\%Digistump Digispark Pro (Default 16 MHz)\fP T} T{ ATTINY167 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ T{ \fBdigispark\-pro32\fP T} T{ \fI\%Digistump Digispark Pro (16 MHz) (32 byte buffer)\fP T} T{ ATTINY167 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ T{ \fBdigispark\-pro64\fP T} T{ \fI\%Digistump Digispark Pro (16 MHz) (64 byte buffer)\fP T} T{ ATTINY167 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ T{ \fBdigispark\-tiny\fP T} T{ \fI\%Digistump Digispark (Default \- 16 MHz)\fP T} T{ ATTINY85 T} T{ 16 MHz T} T{ 8 Kb T} T{ 0.5 Kb T} _ .TE .SS Engduino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBengduinov1\fP T} T{ \fI\%Engduino 1\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBengduinov2\fP T} T{ \fI\%Engduino 2\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBengduinov3\fP T} T{ \fI\%Engduino 3\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS LightUp .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlightup\fP T} T{ \fI\%LightUp\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS LowPowerLab .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBmoteino\fP T} T{ \fI\%LowPowerLab Moteino\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBmoteinomega\fP T} T{ \fI\%LowPowerLab MoteinoMEGA\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Microduino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fB1284p16m\fP T} T{ \fI\%Microduino Core+ (ATmega1284P@16M,5V)\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fB1284p8m\fP T} T{ \fI\%Microduino Core+ (ATmega1284P@8M,3.3V)\fP T} T{ ATMEGA1284P T} T{ 8 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fB168pa16m\fP T} T{ \fI\%Microduino Core (Atmega168PA@16M,5V)\fP T} T{ ATMEGA168P T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fB168pa8m\fP T} T{ \fI\%Microduino Core (Atmega168PA@8M,3.3V)\fP T} T{ ATMEGA168P T} T{ 8 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fB328p16m\fP T} T{ \fI\%Microduino Core (Atmega328P@16M,5V)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fB328p8m\fP T} T{ \fI\%Microduino Core (Atmega328P@8M,3.3V)\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fB32u416m\fP T} T{ \fI\%Microduino Core USB (ATmega32U4@16M,5V)\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fB644pa16m\fP T} T{ \fI\%Microduino Core+ (Atmega644PA@16M,5V)\fP T} T{ ATMEGA644P T} T{ 16 MHz T} T{ 64 Kb T} T{ 4 Kb T} _ T{ \fB644pa8m\fP T} T{ \fI\%Microduino Core+ (Atmega644PA@8M,3.3V)\fP T} T{ ATMEGA644P T} T{ 8 MHz T} T{ 64 Kb T} T{ 4 Kb T} _ .TE .SS PanStamp .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBpanStampAVR\fP T} T{ \fI\%PanStamp AVR\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS RedBearLab .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBblend\fP T} T{ \fI\%RedBearLab Blend\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBblendmicro16\fP T} T{ \fI\%RedBearLab Blend Micro 3.3V/16MHz (overclock)\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBblendmicro8\fP T} T{ \fI\%RedBearLab Blend Micro 3.3V/8MHz\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS RepRap .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBreprap_rambo\fP T} T{ \fI\%RepRap RAMBo\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ .TE .SS Sanguino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBsanguino_atmega12848m\fP T} T{ \fI\%Sanguino ATmega1284p (8MHz)\fP T} T{ ATMEGA1284P T} T{ 8 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBsanguino_atmega1284m\fP T} T{ \fI\%Sanguino ATmega1284p (20MHz)\fP T} T{ ATMEGA1284P T} T{ 20 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBsanguino_atmega1284p\fP T} T{ \fI\%Sanguino ATmega1284p (16MHz)\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBsanguino_atmega644p\fP T} T{ \fI\%Sanguino ATmega644P\fP T} T{ ATMEGA644P T} T{ 16 MHz T} T{ 64 Kb T} T{ 4 Kb T} _ .TE .SS SparkFun .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBsparkfun_digitalsandbox\fP T} T{ \fI\%SparkFun Digital Sandbox\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBsparkfun_fiov3\fP T} T{ \fI\%SparkFun Fio V3 3.3V/8MHz\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_makeymakey\fP T} T{ \fI\%SparkFun Makey Makey\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_megamini\fP T} T{ \fI\%SparkFun Mega Pro Mini 3.3V\fP T} T{ ATMEGA2560 T} T{ 8 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBsparkfun_megapro16MHz\fP T} T{ \fI\%SparkFun Mega Pro 5V/16MHz\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBsparkfun_megapro8MHz\fP T} T{ \fI\%SparkFun Mega Pro 3.3V/8MHz\fP T} T{ ATMEGA2560 T} T{ 8 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBsparkfun_promicro16\fP T} T{ \fI\%SparkFun Pro Micro 5V/16MHz\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_promicro8\fP T} T{ \fI\%SparkFun Pro Micro 3.3V/8MHz\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_redboard\fP T} T{ \fI\%SparkFun RedBoard\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBuview\fP T} T{ \fI\%SparkFun MicroView\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS TinyCircuits .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBtinyduino\fP T} T{ \fI\%TinyCircuits TinyDuino Processor Board\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBtinylily\fP T} T{ \fI\%TinyCircuits TinyLily Mini Processor\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS WickedDevice .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBwildfirev2\fP T} T{ \fI\%WickedDevice WildFire v2 [stk500]\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBwildfirev3\fP T} T{ \fI\%WickedDevice WildFire v3 [optiboot]\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Platform \fBatmelsam\fP .sp Atmel | SMART offers Flash\- based ARM products based on the ARM Cortex\-M0+, Cortex\-M3 and Cortex\-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform atmelsam\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%Arduino\fP .IP \(bu 2 \fI\%Digistump\fP .IP \(bu 2 \fI\%SainSmart\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBframework\-arduinosam\fP T} T{ \fI\%Arduino Wiring\-based Framework (SAM Core, 1.6)\fP T} _ T{ \fBldscripts\fP T} T{ \fI\%Linker Scripts\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ T{ \fBtool\-bossac\fP T} T{ \fI\%BOSSA CLI\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_arduino\fP T} T{ Arduino Framework allows writing cross\-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS Arduino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdue\fP T} T{ \fI\%Arduino Due (Programming Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ T{ \fBdueUSB\fP T} T{ \fI\%Arduino Due (USB Native Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Digistump .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdigix\fP T} T{ \fI\%Digistump DigiX\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 28 Kb T} _ .TE .SS SainSmart .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBsainSmartDue\fP T} T{ \fI\%SainSmart Due (Programming Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ T{ \fBsainSmartDueUSB\fP T} T{ \fI\%SainSmart Due (USB Native Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Platform \fBfreescalekinetis\fP .sp Freescale Kinetis Microcontrollers is family of multiple hardware\- and software\-compatible ARM Cortex\-M0+, Cortex\-M4 and Cortex\-M7\-based MCU series. Kinetis MCUs offer exceptional low\-power performance, scalability and feature integration. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform freescalekinetis\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%Freescale\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBframework\-mbed\fP T} T{ \fI\%mbed Framework\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_mbed\fP T} T{ The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low\-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS Freescale .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBIBMEthernetKit\fP T} T{ \fI\%Ethernet IoT Starter Kit\fP T} T{ MK64FN1M0VLL12 T} T{ 120 MHz T} T{ 1024 Kb T} T{ 256 Kb T} _ T{ \fBfrdm_k20d50m\fP T} T{ \fI\%Freescale Kinetis FRDM\-K20D50M\fP T} T{ MK20DX128VLH5 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBfrdm_k22f\fP T} T{ \fI\%Freescale Kinetis FRDM\-K22F\fP T} T{ MK22FN512VLH12 T} T{ 120 MHz T} T{ 512 Kb T} T{ 128 Kb T} _ T{ \fBfrdm_k64f\fP T} T{ \fI\%Freescale Kinetis FRDM\-K64F\fP T} T{ MK64FN1M0VLL12 T} T{ 120 MHz T} T{ 1024 Kb T} T{ 256 Kb T} _ T{ \fBfrdm_kl05z\fP T} T{ \fI\%Freescale Kinetis FRDM\-KL05Z\fP T} T{ MKL05Z32VFM4 T} T{ 48 MHz T} T{ 32 Kb T} T{ 4 Kb T} _ T{ \fBfrdm_kl25z\fP T} T{ \fI\%Freescale Kinetis FRDM\-KL25Z\fP T} T{ MKL25Z128VLK4 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBfrdm_kl46z\fP T} T{ \fI\%Freescale Kinetis FRDM\-KL46Z\fP T} T{ MKL46Z256VLL4 T} T{ 48 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ .TE .SS Platform \fBnordicnrf51\fP .sp The Nordic nRF51 Series is a family of highly flexible, multi\-protocol, system\-on\-chip (SoC) devices for ultra\-low power wireless applications. nRF51 Series devices support a range of protocol stacks including Bluetooth Smart (previously called Bluetooth low energy), ANT and proprietary 2.4GHz protocols such as Gazell. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform nordicnrf51\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%JKSoft\fP .IP \(bu 2 \fI\%Nordic\fP .IP \(bu 2 \fI\%RedBearLab\fP .IP \(bu 2 \fI\%SeeedStudio\fP .IP \(bu 2 \fI\%Switch Science\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBframework\-mbed\fP T} T{ \fI\%mbed Framework\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_mbed\fP T} T{ The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low\-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS JKSoft .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBwallBotBLE\fP T} T{ \fI\%JKSoft Wallbot BLE\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Nordic .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBnrf51_dk\fP T} T{ \fI\%Nordic nRF51\-DK\fP T} T{ NRF51822 T} T{ 32 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBnrf51_dongle\fP T} T{ \fI\%Nordic nRF51\-Dongle\fP T} T{ NRF51822 T} T{ 32 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBnrf51_mkit\fP T} T{ \fI\%Nordic nRF51822\-mKIT\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS RedBearLab .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBredBearLab\fP T} T{ \fI\%RedBearLab nRF51822\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ T{ \fBredBearLabBLENano\fP T} T{ \fI\%RedBearLab BLE Nano\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ .TE .SS SeeedStudio .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBseeedTinyBLE\fP T} T{ \fI\%SeeedStudio Seeed Tiny BLE\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ .TE .SS Switch Science .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBhrm1017\fP T} T{ \fI\%Switch Science mbed HRM1017\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ .TE .SS Platform \fBnxplpc\fP .sp The NXP LPC is a family of 32\-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32\-bit ARM processor core, such as the Cortex\-M4F, Cortex\-M3, Cortex\-M0+, or Cortex\-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform nxplpc\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%CQ Publishing\fP .IP \(bu 2 \fI\%Embedded Artists\fP .IP \(bu 2 \fI\%NGX Technologies\fP .IP \(bu 2 \fI\%NXP\fP .IP \(bu 2 \fI\%Outrageous Circuits\fP .IP \(bu 2 \fI\%SeeedStudio\fP .IP \(bu 2 \fI\%Solder Splash Labs\fP .IP \(bu 2 \fI\%Switch Science\fP .IP \(bu 2 \fI\%u\-blox\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBframework\-mbed\fP T} T{ \fI\%mbed Framework\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_mbed\fP T} T{ The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low\-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS CQ Publishing .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpc11u35_501\fP T} T{ \fI\%CQ Publishing TG\-LPC11U35\-501\fP T} T{ LPC11U35 T} T{ 48 MHz T} T{ 64 Kb T} T{ 10 Kb T} _ .TE .SS Embedded Artists .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpc11u35\fP T} T{ \fI\%Embedded Artists LPC11U35 QuickStart Board\fP T} T{ LPC11U35 T} T{ 48 MHz T} T{ 64 Kb T} T{ 10 Kb T} _ T{ \fBlpc4088\fP T} T{ \fI\%Embedded Artists LPC4088 QuickStart Board\fP T} T{ LPC4088 T} T{ 120 MHz T} T{ 512 Kb T} T{ 96 Kb T} _ T{ \fBlpc4088_dm\fP T} T{ \fI\%Embedded Artists LPC4088 Display Module\fP T} T{ LPC4088 T} T{ 120 MHz T} T{ 512 Kb T} T{ 96 Kb T} _ .TE .SS NGX Technologies .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBblueboard_lpc11u24\fP T} T{ \fI\%NGX Technologies BlueBoard\-LPC11U24\fP T} T{ LPC11U24 T} T{ 48 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ .TE .SS NXP .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpc11u24\fP T} T{ \fI\%NXP mbed LPC11U24\fP T} T{ LPC11U24 T} T{ 48 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ T{ \fBlpc1549\fP T} T{ \fI\%NXP LPCXpresso1549\fP T} T{ LPC1549 T} T{ 72 MHz T} T{ 256 Kb T} T{ 36 Kb T} _ T{ \fBlpc1768\fP T} T{ \fI\%NXP mbed LPC1768\fP T} T{ LPC1768 T} T{ 96 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Outrageous Circuits .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBmbuino\fP T} T{ \fI\%Outrageous Circuits mBuino\fP T} T{ LPC11U24 T} T{ 48 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ .TE .SS SeeedStudio .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBseeeduinoArchPro\fP T} T{ \fI\%SeeedStudio Seeeduino\-Arch\-Pro\fP T} T{ LPC1768 T} T{ 96 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Solder Splash Labs .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdipcortexm0\fP T} T{ \fI\%Solder Splash Labs DipCortex M0\fP T} T{ LPC11U24 T} T{ 50 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ .TE .SS Switch Science .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpc1114fn28\fP T} T{ \fI\%Switch Science mbed LPC1114FN28\fP T} T{ LPC1114FN28 T} T{ 48 MHz T} T{ 32 Kb T} T{ 4 Kb T} _ .TE .SS u\-blox .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBubloxc027\fP T} T{ \fI\%u\-blox C027\fP T} T{ LPC1768 T} T{ 96 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Platform \fBststm32\fP .sp The STM32 family of 32\-bit Flash MCUs based on the ARM Cortex\-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32\-bit product range that combines very high performance, real\-time capabilities, digital signal processing, and low\-power, low\-voltage operation, while maintaining full integration and ease of development. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform ststm32\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%ST\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBframework\-libopencm3\fP T} T{ \fI\%libOpenCM3 Framework\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ T{ \fBtool\-stlink\fP T} T{ \fI\%ST\-Link\fP T} _ T{ \fBframework\-spl\fP T} T{ \fI\%Standard Peripheral Library for STM32 MCUs\fP T} _ T{ \fBframework\-cmsis\fP T} T{ \fI\%Vendor\-independent hardware abstraction layer for the Cortex\-M processor series\fP T} _ T{ \fBframework\-mbed\fP T} T{ \fI\%mbed Framework\fP T} _ T{ \fBldscripts\fP T} T{ \fI\%Linker Scripts\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_cmsis\fP T} T{ The ARM Cortex Microcontroller Software Interface Standard (CMSIS) is a vendor\-independent hardware abstraction layer for the Cortex\-M processor series and specifies debugger interfaces. The CMSIS enables consistent and simple software interfaces to the processor for interface peripherals, real\-time operating systems, and middleware. It simplifies software re\-use, reducing the learning curve for new microcontroller developers and cutting the time\-to\-market for devices. T} _ T{ \fIframework_libopencm3\fP T} T{ The libOpenCM3 framework aims to create a free/libre/open\-source firmware library for various ARM Cortex\-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others. T} _ T{ \fIframework_mbed\fP T} T{ The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low\-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community. T} _ T{ \fIframework_spl\fP T} T{ The ST Standard Peripheral Library provides a set of functions for handling the peripherals on the STM32 Cortex\-M3 family. The idea is to save the user (the new user, in particular) having to deal directly with the registers. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS ST .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdisco_f051r8\fP T} T{ \fI\%ST STM32F0DISCOVERY\fP T} T{ STM32F051R8T6 T} T{ 48 MHz T} T{ 64 Kb T} T{ 8 Kb T} _ T{ \fBdisco_f100rb\fP T} T{ \fI\%ST STM32VLDISCOVERY\fP T} T{ STM32F100RBT6 T} T{ 24 MHz T} T{ 128 Kb T} T{ 8 Kb T} _ T{ \fBdisco_f303vc\fP T} T{ \fI\%ST STM32F3DISCOVERY\fP T} T{ STM32F303VCT6 T} T{ 72 MHz T} T{ 256 Kb T} T{ 48 Kb T} _ T{ \fBdisco_f334c8\fP T} T{ \fI\%ST 32F3348DISCOVERY\fP T} T{ STM32F334C8T6 T} T{ 72 MHz T} T{ 64 Kb T} T{ 16 Kb T} _ T{ \fBdisco_f401vc\fP T} T{ \fI\%ST 32F401CDISCOVERY\fP T} T{ STM32F401VCT6 T} T{ 84 MHz T} T{ 256 Kb T} T{ 64 Kb T} _ T{ \fBdisco_f407vg\fP T} T{ \fI\%ST STM32F4DISCOVERY\fP T} T{ STM32F407VGT6 T} T{ 168 MHz T} T{ 1024 Kb T} T{ 128 Kb T} _ T{ \fBdisco_f429zi\fP T} T{ \fI\%ST 32F429IDISCOVERY\fP T} T{ STM32F429ZIT6 T} T{ 180 MHz T} T{ 2048 Kb T} T{ 256 Kb T} _ T{ \fBdisco_l152rb\fP T} T{ \fI\%ST STM32LDISCOVERY\fP T} T{ STM32L152RBT6 T} T{ 32 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f030r8\fP T} T{ \fI\%ST Nucleo F030R8\fP T} T{ STM32F030R8T6 T} T{ 48 MHz T} T{ 64 Kb T} T{ 8 Kb T} _ T{ \fBnucleo_f070rb\fP T} T{ \fI\%ST Nucleo F070RB\fP T} T{ STM32F070RBT6 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f072rb\fP T} T{ \fI\%ST Nucleo F072RB\fP T} T{ STM32F072RBT6 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f091rc\fP T} T{ \fI\%ST Nucleo F091RC\fP T} T{ STM32F091RCT6 T} T{ 48 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBnucleo_f103rb\fP T} T{ \fI\%ST Nucleo F103RB\fP T} T{ STM32F103RBT6 T} T{ 72 MHz T} T{ 128 Kb T} T{ 20 Kb T} _ T{ \fBnucleo_f302r8\fP T} T{ \fI\%ST Nucleo F302R8\fP T} T{ STM32F302R8T6 T} T{ 72 MHz T} T{ 64 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f303re\fP T} T{ \fI\%ST Nucleo F303RE\fP T} T{ STM32F303RET6 T} T{ 72 MHz T} T{ 512 Kb T} T{ 64 Kb T} _ T{ \fBnucleo_f334r8\fP T} T{ \fI\%ST Nucleo F334R8\fP T} T{ STM32F334R8T6 T} T{ 72 MHz T} T{ 64 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f401re\fP T} T{ \fI\%ST Nucleo F401RE\fP T} T{ STM32F401RET6 T} T{ 84 MHz T} T{ 512 Kb T} T{ 96 Kb T} _ T{ \fBnucleo_f411re\fP T} T{ \fI\%ST Nucleo F411RE\fP T} T{ STM32F411RET6 T} T{ 100 MHz T} T{ 512 Kb T} T{ 128 Kb T} _ T{ \fBnucleo_l053r8\fP T} T{ \fI\%ST Nucleo L053R8\fP T} T{ STM32L053R8T6 T} T{ 48 MHz T} T{ 64 Kb T} T{ 8 Kb T} _ T{ \fBnucleo_l152re\fP T} T{ \fI\%ST Nucleo L152RE\fP T} T{ STM32L152RET6 T} T{ 32 MHz T} T{ 512 Kb T} T{ 80 Kb T} _ .TE .SS Platform \fBteensy\fP .sp Teensy is a complete USB\-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed, only a standard "Mini\-B" USB cable and a PC or Macintosh with a USB port. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform teensy\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%Teensy\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBtoolchain\-atmelavr\fP T} T{ \fI\%avr\-gcc\fP, \fI\%GDB\fP, \fI\%AVaRICE\fP, \fI\%SimulAVR\fP T} _ T{ \fBldscripts\fP T} T{ \fI\%Linker Scripts\fP T} _ T{ \fBframework\-arduinoteensy\fP T} T{ \fI\%Arduino Wiring\-based Framework\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ T{ \fBtool\-teensy\fP T} T{ \fI\%Teensy Loader\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_arduino\fP T} T{ Arduino Framework allows writing cross\-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS Teensy .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBteensy20\fP T} T{ \fI\%Teensy 2.0\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBteensy20pp\fP T} T{ \fI\%Teensy++ 2.0\fP T} T{ AT90USB1286 T} T{ 16 MHz T} T{ 128 Kb T} T{ 8 Kb T} _ T{ \fBteensy30\fP T} T{ \fI\%Teensy 3.0\fP T} T{ MK20DX128 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBteensy31\fP T} T{ \fI\%Teensy 3.1\fP T} T{ MK20DX256 T} T{ 72 MHz T} T{ 256 Kb T} T{ 64 Kb T} _ .TE .SS Platform \fBtimsp430\fP .sp MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are 16\-bit, RISC\-based, mixed\-signal processors designed for ultra\-low power. These MCUs offer the lowest power consumption and the perfect mix of integrated peripherals for thousands of applications. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform timsp430\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%PanStamp\fP .IP \(bu 2 \fI\%TI\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBtoolchain\-timsp430\fP T} T{ \fI\%msp\-gcc\fP, \fI\%GDB\fP T} _ T{ \fBtool\-mspdebug\fP T} T{ \fI\%MSPDebug\fP T} _ T{ \fBframework\-energiamsp430\fP T} T{ \fI\%Energia Wiring\-based Framework (MSP430 Core)\fP T} _ T{ \fBframework\-arduinomsp430\fP T} T{ \fI\%Arduino Wiring\-based Framework (MSP430 Core)\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_arduino\fP T} T{ Arduino Framework allows writing cross\-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. T} _ T{ \fIframework_energia\fP T} T{ Energia framework enables pretty much anyone to start easily creating microcontroller\-based projects and applications. Its easy\-to\-use libraries and functions provide developers of all experience levels to start blinking LEDs, buzzing buzzers and sensing sensors more quickly than ever before. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS PanStamp .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBpanStampNRG\fP T} T{ \fI\%PanStamp NRG 1.1\fP T} T{ CC430F5137 T} T{ 12 MHz T} T{ 32 Kb T} T{ 4 Kb T} _ .TE .SS TI .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpmsp430f5529\fP T} T{ \fI\%TI LaunchPad w/ msp430f5529 (16MHz)\fP T} T{ MSP430F5529 T} T{ 16 MHz T} T{ 128 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430f5529_25\fP T} T{ \fI\%TI LaunchPad w/ msp430f5529 (25MHz)\fP T} T{ MSP430F5529 T} T{ 25 MHz T} T{ 128 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430fr5739\fP T} T{ \fI\%TI FraunchPad w/ msp430fr5739\fP T} T{ MSP430FR5739 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430fr5969\fP T} T{ \fI\%TI LaunchPad w/ msp430fr5969\fP T} T{ MSP430FR5969 T} T{ 8 MHz T} T{ 64 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430g2231\fP T} T{ \fI\%TI LaunchPad w/ msp430g2231 (1 MHz)\fP T} T{ MSP430G2231 T} T{ 1 MHz T} T{ 2 Kb T} T{ 0.125 Kb T} _ T{ \fBlpmsp430g2452\fP T} T{ \fI\%TI LaunchPad w/ msp430g2452 (16MHz)\fP T} T{ MSP430G2452 T} T{ 16 MHz T} T{ 8 Kb T} T{ 0.25 Kb T} _ T{ \fBlpmsp430g2553\fP T} T{ \fI\%TI LaunchPad w/ msp430g2553 (16MHz)\fP T} T{ MSP430G2553 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ .TE .SS Platform \fBtitiva\fP .sp Texas Instruments TM4C12x MCUs offer the industrys most popular ARM Cortex\-M4 core with scalable memory and package options, unparalleled connectivity peripherals, advanced application functions, industry\-leading analog integration, and extensive software solutions. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Platform titiva\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Frameworks\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%TI\fP .UNINDENT .UNINDENT .UNINDENT .SS Packages .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBldscripts\fP T} T{ \fI\%Linker Scripts\fP T} _ T{ \fBframework\-libopencm3\fP T} T{ \fI\%libOpenCM3 Framework\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ T{ \fBtool\-lm4flash\fP T} T{ \fI\%Flash Programmer\fP T} _ T{ \fBframework\-energiativa\fP T} T{ \fI\%Energia Wiring\-based Framework (LM4F Core)\fP T} _ .TE .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 \fBLinux Users:\fP Don\(aqt forget to install "udev" rules file \fI\%99\-platformio\-udev.rules\fP (an instruction is located in the file). .UNINDENT .UNINDENT .SS Frameworks .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIframework_energia\fP T} T{ Energia framework enables pretty much anyone to start easily creating microcontroller\-based projects and applications. Its easy\-to\-use libraries and functions provide developers of all experience levels to start blinking LEDs, buzzing buzzers and sensing sensors more quickly than ever before. T} _ T{ \fIframework_libopencm3\fP T} T{ The libOpenCM3 framework aims to create a free/libre/open\-source firmware library for various ARM Cortex\-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS TI .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlplm4f120h5qr\fP T} T{ \fI\%TI LaunchPad (Stellaris) w/ lm4f120 (80MHz)\fP T} T{ LPLM4F120H5QR T} T{ 80 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBlptm4c1230c3pm\fP T} T{ \fI\%TI LaunchPad (Tiva C) w/ tm4c123 (80MHz)\fP T} T{ LPTM4C1230C3PM T} T{ 80 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBlptm4c1294ncpdt\fP T} T{ \fI\%TI LaunchPad (Tiva C) w/ tm4c129 (120MHz)\fP T} T{ LPTM4C1294NCPDT T} T{ 120 MHz T} T{ 1024 Kb T} T{ 256 Kb T} _ .TE .SS Creating Platform .sp \fIPlatformIO\fP was developed like a tool which would build the same source code for the different development platforms via single command \fIcmd_run\fP without any dependent software or requirements. .sp For this purpose \fIPlatformIO\fP uses own pre\-configured platforms data: build scripts, tool chains, the settings for the most popular embedded boards and etc. These data are pre\-built and packaged to the different \fBpackages\fP\&. It allows \fIPlatformIO\fP to have multiple development platforms which can use the same packages(tool chains, frameworks), but have different/own build scripts, uploader and etc. .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 If you want to change some build flags for the existing \fIPlatforms\fP, you don\(aqt need to create (or duplicate) own development platforms! Please use \fIprojectconf_build_flags\fP option. .UNINDENT .UNINDENT .sp \fBStep\-by\-Step Manual\fP .INDENT 0.0 .IP 1. 3 Chose \fIplatform_creating_packages\fP for platform .IP 2. 3 Create \fIplatform_creating_manifest_file\fP .IP 3. 3 Create \fIplatform_creating_build_script\fP .IP 4. 3 Finish with the \fIplatform_creating_installation\fP\&. .UNINDENT .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Creating Platform\fP .INDENT 2.0 .IP \(bu 2 \fI\%Packages\fP .IP \(bu 2 \fI\%Manifest File\fP .IP \(bu 2 \fI\%Build Script\fP .IP \(bu 2 \fI\%Installation\fP .UNINDENT .UNINDENT .SS Packages .sp \fIPlatformIO\fP has pre\-built packages for the most popular operation systems: \fIMac OS\fP, \fILinux (+ARM)\fP and \fIWindows\fP\&. .TS center; |l|l|. _ T{ Name T} T{ Contents T} _ T{ \fBframework\-arduinoavr\fP T} T{ \fI\%Arduino Wiring\-based Framework (AVR Core, 1.6)\fP T} _ T{ \fBframework\-arduinomsp430\fP T} T{ \fI\%Arduino Wiring\-based Framework (MSP430 Core)\fP T} _ T{ \fBframework\-arduinosam\fP T} T{ \fI\%Arduino Wiring\-based Framework (SAM Core, 1.6)\fP T} _ T{ \fBframework\-arduinoteensy\fP T} T{ \fI\%Arduino Wiring\-based Framework\fP T} _ T{ \fBframework\-cmsis\fP T} T{ \fI\%Vendor\-independent hardware abstraction layer for the Cortex\-M processor series\fP T} _ T{ \fBframework\-energiamsp430\fP T} T{ \fI\%Energia Wiring\-based Framework (MSP430 Core)\fP T} _ T{ \fBframework\-energiativa\fP T} T{ \fI\%Energia Wiring\-based Framework (LM4F Core)\fP T} _ T{ \fBframework\-libopencm3\fP T} T{ \fI\%libOpenCM3 Framework\fP T} _ T{ \fBframework\-mbed\fP T} T{ \fI\%mbed Framework\fP T} _ T{ \fBframework\-spl\fP T} T{ \fI\%Standard Peripheral Library for STM32 MCUs\fP T} _ T{ \fBldscripts\fP T} T{ \fI\%Linker Scripts\fP T} _ T{ \fBtool\-avrdude\fP T} T{ \fI\%AVRDUDE\fP T} _ T{ \fBtool\-bossac\fP T} T{ \fI\%BOSSA CLI\fP T} _ T{ \fBtool\-lm4flash\fP T} T{ \fI\%Flash Programmer\fP T} _ T{ \fBtool\-micronucleus\fP T} T{ \fI\%Micronucleus\fP T} _ T{ \fBtool\-mspdebug\fP T} T{ \fI\%MSPDebug\fP T} _ T{ \fBtool\-stlink\fP T} T{ \fI\%ST\-Link\fP T} _ T{ \fBtool\-teensy\fP T} T{ \fI\%Teensy Loader\fP T} _ T{ \fBtoolchain\-atmelavr\fP T} T{ \fI\%avr\-gcc\fP, \fI\%GDB\fP, \fI\%AVaRICE\fP, \fI\%SimulAVR\fP T} _ T{ \fBtoolchain\-gccarmnoneeabi\fP T} T{ \fI\%gcc\-arm\-embedded\fP, \fI\%GDB\fP T} _ T{ \fBtoolchain\-timsp430\fP T} T{ \fI\%msp\-gcc\fP, \fI\%GDB\fP T} _ .TE .SS Manifest File .sp A platform manifest file is a \fI\%Python\fP script with the next requirements: .INDENT 0.0 .IP 1. 3 The file should have \fB\&.py\fP extension .IP 2. 3 The \fBname of the file\fP is the \fBplatform name\fP (lowercase) .IP 3. 3 The source code of this file should contain a \fBclass\fP which describes your own platform. The name of the \fBclass\fP should start with your \fBplatform name\fP (the first letter should be capitalized) + \fBPlatform\fP ending. This \fBclass\fP should be derived from \fIPlatformIO\fP \fBBasePlatform\fP class. .UNINDENT .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 If you are new to \fIPython\fP language, please read: .INDENT 0.0 .IP \(bu 2 \fI\%Style Guide for Python Code\fP\&. .IP \(bu 2 A hash sign (#) that is not inside a string literal begins a comment. All characters after the # and up to the physical line end are part of the comment and the \fIPython\fP interpreter ignores them. .UNINDENT .UNINDENT .UNINDENT .sp Example of the \fBtest\fP platform (\fBtest.py\fP): .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C from platformio.platforms.base import BasePlatform class TestPlatform(BasePlatform): # This is a description of your platform. # Platformio uses it for the \(gaplatformio search / list\(ga commands """ My Test platform \- test.py """ PACKAGES = { "toolchain\-foo": { # alias is used for quick access to package. # For example, # \(ga> platformio install test \-\-without\-package=toolchain\(ga "alias": "toolchain", # Flag which allows PlatformIO to install this package by # default via \(ga> platformio install test\(ga command "default": True }, "tool\-bar": { "alias": "uploader", "default": True }, "framework\-baz": { "default": True } } def get_build_script(self): """ Returns a path to build script """ # You can return static path #return "/path/to/test\-builder.py" # or detect dynamically if \(gatest\-builder.py\(ga is located in the same # folder with \(gatest.py\(ga return os.path.join( os.path.dirname(os.path.realpath(__file__)), "test\-builder.py" ) .ft P .fi .UNINDENT .UNINDENT .SS Build Script .sp Platform\(aqs build script is based on a next\-generation build tool named \fI\%SCons\fP\&. PlatformIO has own built\-in firmware builder \fBenv.BuildFirmware\fP with the nested libraries search. Please look into a base template of \fBtest\-builder.py\fP\&. .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C """ Build script for test.py test\-builder.py """ from os.path import join from SCons.Script import AlwaysBuild, Builder, Default, DefaultEnvironment env = DefaultEnvironment() # A full list with the available variables # http://www.scons.org/doc/production/HTML/scons\-user.html#app\-variables env.Replace( AR="ar", AS="gcc", CC="gcc", CXX="g++", OBJCOPY="objcopy", RANLIB="ranlib", ARFLAGS=["..."], ASFLAGS=["flag1", "flag2", "flagN"], CCFLAGS=["flag1", "flag2", "flagN"], CXXFLAGS=["flag1", "flag2", "flagN"], LINKFLAGS=["flag1", "flag2", "flagN"], CPPDEFINES=["DEFINE_1", "DEFINE=2", "DEFINE_N"], LIBS=["additional", "libs", "here"], UPLOADER=join("$PIOPACKAGES_DIR", "tool\-bar", "uploader"), UPLOADCMD="$UPLOADER $SOURCES" ) env.Append( BUILDERS=dict( ElfToBin=Builder( action=" ".join([ "$OBJCOPY", "\-O", "binary", "$SOURCES", "$TARGET"]), suffix=".bin" ) ) ) # The source code of "platformio\-build\-tool" is here # https://github.com/platformio/platformio/blob/develop/platformio/builder/tools/platformio.py # # Target: Build executable and linkable firmware # target_elf = env.BuildFirmware() # # Target: Build the .bin file # target_bin = env.ElfToBin(join("$BUILD_DIR", "firmware"), target_elf) # # Target: Upload firmware # upload = env.Alias(["upload"], target_bin, "$UPLOADCMD") AlwaysBuild(upload) # # Target: Define targets # Default(target_bin) .ft P .fi .UNINDENT .UNINDENT .sp Please look into the examples with built\-in scripts for the popular platforms: .INDENT 0.0 .IP \(bu 2 \fI\%baseavr.py\fP .IP \(bu 2 \fI\%basearm.py\fP .IP \(bu 2 \fI\%atmelavr.py\fP .IP \(bu 2 \fI\%timsp430.py\fP .IP \(bu 2 \fI\%ststm32.py\fP .UNINDENT .SS Installation .INDENT 0.0 .IP 1. 3 Create \fBplatforms\fP directory in \fIprojectconf_pio_home_dir\fP if it doesn\(aqt exists. .IP 2. 3 Copy \fBtest.py\fP and \fBtest\-builder.py\fP files to \fBplatforms\fP directory. .IP 3. 3 Search available platforms via \fIcmd_search\fP command. You should see \fBtest\fP platform. .IP 4. 3 Install \fBtest\fP platform via \fIcmd_install\fP command. .UNINDENT .sp Now, you can use \fBtest\fP for the \fIprojectconf_env_platform\fP option in \fIprojectconf\fP\&. .SS Frameworks .SS Framework \fBarduino\fP .sp Arduino Framework allows writing cross\-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Framework arduino\fP .INDENT 2.0 .IP \(bu 2 \fI\%Platforms\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%Adafruit\fP .IP \(bu 2 \fI\%Arduino\fP .IP \(bu 2 \fI\%BQ\fP .IP \(bu 2 \fI\%BitWizard\fP .IP \(bu 2 \fI\%Digistump\fP .IP \(bu 2 \fI\%Engduino\fP .IP \(bu 2 \fI\%LightUp\fP .IP \(bu 2 \fI\%LowPowerLab\fP .IP \(bu 2 \fI\%Microduino\fP .IP \(bu 2 \fI\%PanStamp\fP .IP \(bu 2 \fI\%RedBearLab\fP .IP \(bu 2 \fI\%RepRap\fP .IP \(bu 2 \fI\%SainSmart\fP .IP \(bu 2 \fI\%Sanguino\fP .IP \(bu 2 \fI\%SparkFun\fP .IP \(bu 2 \fI\%Teensy\fP .IP \(bu 2 \fI\%TinyCircuits\fP .IP \(bu 2 \fI\%WickedDevice\fP .UNINDENT .UNINDENT .UNINDENT .SS Platforms .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIplatform_atmelavr\fP T} T{ Atmel AVR 8\- and 32\-bit MCUs deliver a unique combination of performance, power efficiency and design flexibility. Optimized to speed time to market\-and easily adapt to new ones\-they are based on the industrys most code\-efficient architecture for C and assembly programming. T} _ T{ \fIplatform_atmelsam\fP T} T{ Atmel | SMART offers Flash\- based ARM products based on the ARM Cortex\-M0+, Cortex\-M3 and Cortex\-M4 architectures, ranging from 8KB to 2MB of Flash including a rich peripheral and feature mix. T} _ T{ \fIplatform_teensy\fP T} T{ Teensy is a complete USB\-based microcontroller development system, in a very small footprint, capable of implementing many types of projects. All programming is done via the USB port. No special programmer is needed, only a standard "Mini\-B" USB cable and a PC or Macintosh with a USB port. T} _ T{ \fIplatform_timsp430\fP T} T{ MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are 16\-bit, RISC\-based, mixed\-signal processors designed for ultra\-low power. These MCUs offer the lowest power consumption and the perfect mix of integrated peripherals for thousands of applications. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS Adafruit .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBflora8\fP T} T{ \fI\%Adafruit Flora\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBprotrinket3\fP T} T{ \fI\%Adafruit Pro Trinket 3V/12MHz (USB)\fP T} T{ ATMEGA328P T} T{ 12 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBprotrinket3ftdi\fP T} T{ \fI\%Adafruit Pro Trinket 3V/12MHz (FTDI)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBprotrinket5\fP T} T{ \fI\%Adafruit Pro Trinket 5V/16MHz (USB)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBprotrinket5ftdi\fP T} T{ \fI\%Adafruit Pro Trinket 5V/16MHz (USB)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBtrinket3\fP T} T{ \fI\%Adafruit Trinket 3V/8MHz\fP T} T{ ATTINY85 T} T{ 8 MHz T} T{ 8 Kb T} T{ 0.5 Kb T} _ T{ \fBtrinket5\fP T} T{ \fI\%Adafruit Trinket 5V/16MHz\fP T} T{ ATTINY85 T} T{ 16 MHz T} T{ 8 Kb T} T{ 0.5 Kb T} _ .TE .SS Arduino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBLilyPadUSB\fP T} T{ \fI\%Arduino LilyPad USB\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBatmegangatmega168\fP T} T{ \fI\%Arduino NG or older ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBatmegangatmega8\fP T} T{ \fI\%Arduino NG or older ATmega8\fP T} T{ ATMEGA8 T} T{ 16 MHz T} T{ 8 Kb T} T{ 1 Kb T} _ T{ \fBbtatmega168\fP T} T{ \fI\%Arduino BT ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBbtatmega328\fP T} T{ \fI\%Arduino BT ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBdiecimilaatmega168\fP T} T{ \fI\%Arduino Duemilanove or Diecimila ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBdiecimilaatmega328\fP T} T{ \fI\%Arduino Duemilanove or Diecimila ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBdue\fP T} T{ \fI\%Arduino Due (Programming Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ T{ \fBdueUSB\fP T} T{ \fI\%Arduino Due (USB Native Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ T{ \fBesplora\fP T} T{ \fI\%Arduino Esplora\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBethernet\fP T} T{ \fI\%Arduino Ethernet\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBfio\fP T} T{ \fI\%Arduino Fio\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBleonardo\fP T} T{ \fI\%Arduino Leonardo\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBlilypadatmega168\fP T} T{ \fI\%Arduino LilyPad ATmega168\fP T} T{ ATMEGA168 T} T{ 8 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBlilypadatmega328\fP T} T{ \fI\%Arduino LilyPad ATmega328\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBmegaADK\fP T} T{ \fI\%Arduino Mega ADK\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBmegaatmega1280\fP T} T{ \fI\%Arduino Mega or Mega 2560 ATmega1280\fP T} T{ ATMEGA1280 T} T{ 16 MHz T} T{ 128 Kb T} T{ 8 Kb T} _ T{ \fBmegaatmega2560\fP T} T{ \fI\%Arduino Mega or Mega 2560 ATmega2560 (Mega 2560)\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBmicro\fP T} T{ \fI\%Arduino Micro\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBminiatmega168\fP T} T{ \fI\%Arduino Mini ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBminiatmega328\fP T} T{ \fI\%Arduino Mini ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBnanoatmega168\fP T} T{ \fI\%Arduino Nano ATmega168\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBnanoatmega328\fP T} T{ \fI\%Arduino Nano ATmega328\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBpro16MHzatmega168\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz)\fP T} T{ ATMEGA168 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBpro16MHzatmega328\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega328 (5V, 16 MHz)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBpro8MHzatmega168\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz)\fP T} T{ ATMEGA168 T} T{ 8 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBpro8MHzatmega328\fP T} T{ \fI\%Arduino Pro or Pro Mini ATmega328 (3.3V, 8 MHz)\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBrobotControl\fP T} T{ \fI\%Arduino Robot Control\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBrobotMotor\fP T} T{ \fI\%Arduino Robot Motor\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBuno\fP T} T{ \fI\%Arduino Uno\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fByun\fP T} T{ \fI\%Arduino Yun\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS BQ .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBzumbt328\fP T} T{ \fI\%BQ ZUM BT\-328 board\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS BitWizard .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBraspduino\fP T} T{ \fI\%BitWizard Raspduino\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS Digistump .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdigispark\-pro\fP T} T{ \fI\%Digistump Digispark Pro (Default 16 MHz)\fP T} T{ ATTINY167 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ T{ \fBdigispark\-pro32\fP T} T{ \fI\%Digistump Digispark Pro (16 MHz) (32 byte buffer)\fP T} T{ ATTINY167 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ T{ \fBdigispark\-pro64\fP T} T{ \fI\%Digistump Digispark Pro (16 MHz) (64 byte buffer)\fP T} T{ ATTINY167 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ T{ \fBdigispark\-tiny\fP T} T{ \fI\%Digistump Digispark (Default \- 16 MHz)\fP T} T{ ATTINY85 T} T{ 16 MHz T} T{ 8 Kb T} T{ 0.5 Kb T} _ T{ \fBdigix\fP T} T{ \fI\%Digistump DigiX\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 28 Kb T} _ .TE .SS Engduino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBengduinov1\fP T} T{ \fI\%Engduino 1\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBengduinov2\fP T} T{ \fI\%Engduino 2\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBengduinov3\fP T} T{ \fI\%Engduino 3\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS LightUp .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlightup\fP T} T{ \fI\%LightUp\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS LowPowerLab .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBmoteino\fP T} T{ \fI\%LowPowerLab Moteino\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBmoteinomega\fP T} T{ \fI\%LowPowerLab MoteinoMEGA\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Microduino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fB1284p16m\fP T} T{ \fI\%Microduino Core+ (ATmega1284P@16M,5V)\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fB1284p8m\fP T} T{ \fI\%Microduino Core+ (ATmega1284P@8M,3.3V)\fP T} T{ ATMEGA1284P T} T{ 8 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fB168pa16m\fP T} T{ \fI\%Microduino Core (Atmega168PA@16M,5V)\fP T} T{ ATMEGA168P T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fB168pa8m\fP T} T{ \fI\%Microduino Core (Atmega168PA@8M,3.3V)\fP T} T{ ATMEGA168P T} T{ 8 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fB328p16m\fP T} T{ \fI\%Microduino Core (Atmega328P@16M,5V)\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fB328p8m\fP T} T{ \fI\%Microduino Core (Atmega328P@8M,3.3V)\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fB32u416m\fP T} T{ \fI\%Microduino Core USB (ATmega32U4@16M,5V)\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fB644pa16m\fP T} T{ \fI\%Microduino Core+ (Atmega644PA@16M,5V)\fP T} T{ ATMEGA644P T} T{ 16 MHz T} T{ 64 Kb T} T{ 4 Kb T} _ T{ \fB644pa8m\fP T} T{ \fI\%Microduino Core+ (Atmega644PA@8M,3.3V)\fP T} T{ ATMEGA644P T} T{ 8 MHz T} T{ 64 Kb T} T{ 4 Kb T} _ .TE .SS PanStamp .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBpanStampAVR\fP T} T{ \fI\%PanStamp AVR\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBpanStampNRG\fP T} T{ \fI\%PanStamp NRG 1.1\fP T} T{ CC430F5137 T} T{ 12 MHz T} T{ 32 Kb T} T{ 4 Kb T} _ .TE .SS RedBearLab .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBblend\fP T} T{ \fI\%RedBearLab Blend\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBblendmicro16\fP T} T{ \fI\%RedBearLab Blend Micro 3.3V/16MHz (overclock)\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBblendmicro8\fP T} T{ \fI\%RedBearLab Blend Micro 3.3V/8MHz\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ .TE .SS RepRap .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBreprap_rambo\fP T} T{ \fI\%RepRap RAMBo\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ .TE .SS SainSmart .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBsainSmartDue\fP T} T{ \fI\%SainSmart Due (Programming Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ T{ \fBsainSmartDueUSB\fP T} T{ \fI\%SainSmart Due (USB Native Port)\fP T} T{ AT91SAM3X8E T} T{ 84 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Sanguino .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBsanguino_atmega12848m\fP T} T{ \fI\%Sanguino ATmega1284p (8MHz)\fP T} T{ ATMEGA1284P T} T{ 8 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBsanguino_atmega1284m\fP T} T{ \fI\%Sanguino ATmega1284p (20MHz)\fP T} T{ ATMEGA1284P T} T{ 20 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBsanguino_atmega1284p\fP T} T{ \fI\%Sanguino ATmega1284p (16MHz)\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBsanguino_atmega644p\fP T} T{ \fI\%Sanguino ATmega644P\fP T} T{ ATMEGA644P T} T{ 16 MHz T} T{ 64 Kb T} T{ 4 Kb T} _ .TE .SS SparkFun .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBsparkfun_digitalsandbox\fP T} T{ \fI\%SparkFun Digital Sandbox\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBsparkfun_fiov3\fP T} T{ \fI\%SparkFun Fio V3 3.3V/8MHz\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_makeymakey\fP T} T{ \fI\%SparkFun Makey Makey\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_megamini\fP T} T{ \fI\%SparkFun Mega Pro Mini 3.3V\fP T} T{ ATMEGA2560 T} T{ 8 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBsparkfun_megapro16MHz\fP T} T{ \fI\%SparkFun Mega Pro 5V/16MHz\fP T} T{ ATMEGA2560 T} T{ 16 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBsparkfun_megapro8MHz\fP T} T{ \fI\%SparkFun Mega Pro 3.3V/8MHz\fP T} T{ ATMEGA2560 T} T{ 8 MHz T} T{ 256 Kb T} T{ 8 Kb T} _ T{ \fBsparkfun_promicro16\fP T} T{ \fI\%SparkFun Pro Micro 5V/16MHz\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_promicro8\fP T} T{ \fI\%SparkFun Pro Micro 3.3V/8MHz\fP T} T{ ATMEGA32U4 T} T{ 8 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBsparkfun_redboard\fP T} T{ \fI\%SparkFun RedBoard\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBuview\fP T} T{ \fI\%SparkFun MicroView\fP T} T{ ATMEGA328P T} T{ 16 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS Teensy .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBteensy20\fP T} T{ \fI\%Teensy 2.0\fP T} T{ ATMEGA32U4 T} T{ 16 MHz T} T{ 32 Kb T} T{ 2.5 Kb T} _ T{ \fBteensy20pp\fP T} T{ \fI\%Teensy++ 2.0\fP T} T{ AT90USB1286 T} T{ 16 MHz T} T{ 128 Kb T} T{ 8 Kb T} _ T{ \fBteensy30\fP T} T{ \fI\%Teensy 3.0\fP T} T{ MK20DX128 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBteensy31\fP T} T{ \fI\%Teensy 3.1\fP T} T{ MK20DX256 T} T{ 72 MHz T} T{ 256 Kb T} T{ 64 Kb T} _ .TE .SS TinyCircuits .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBtinyduino\fP T} T{ \fI\%TinyCircuits TinyDuino Processor Board\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ T{ \fBtinylily\fP T} T{ \fI\%TinyCircuits TinyLily Mini Processor\fP T} T{ ATMEGA328P T} T{ 8 MHz T} T{ 32 Kb T} T{ 2 Kb T} _ .TE .SS WickedDevice .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBwildfirev2\fP T} T{ \fI\%WickedDevice WildFire v2 [stk500]\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBwildfirev3\fP T} T{ \fI\%WickedDevice WildFire v3 [optiboot]\fP T} T{ ATMEGA1284P T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Framework \fBcmsis\fP .sp The ARM Cortex Microcontroller Software Interface Standard (CMSIS) is a vendor\-independent hardware abstraction layer for the Cortex\-M processor series and specifies debugger interfaces. The CMSIS enables consistent and simple software interfaces to the processor for interface peripherals, real\-time operating systems, and middleware. It simplifies software re\-use, reducing the learning curve for new microcontroller developers and cutting the time\-to\-market for devices. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Framework cmsis\fP .INDENT 2.0 .IP \(bu 2 \fI\%Platforms\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%ST\fP .UNINDENT .UNINDENT .UNINDENT .SS Platforms .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIplatform_ststm32\fP T} T{ The STM32 family of 32\-bit Flash MCUs based on the ARM Cortex\-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32\-bit product range that combines very high performance, real\-time capabilities, digital signal processing, and low\-power, low\-voltage operation, while maintaining full integration and ease of development. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS ST .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdisco_f303vc\fP T} T{ \fI\%ST STM32F3DISCOVERY\fP T} T{ STM32F303VCT6 T} T{ 72 MHz T} T{ 256 Kb T} T{ 48 Kb T} _ T{ \fBdisco_f407vg\fP T} T{ \fI\%ST STM32F4DISCOVERY\fP T} T{ STM32F407VGT6 T} T{ 168 MHz T} T{ 1024 Kb T} T{ 128 Kb T} _ T{ \fBdisco_l152rb\fP T} T{ \fI\%ST STM32LDISCOVERY\fP T} T{ STM32L152RBT6 T} T{ 32 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Framework \fBenergia\fP .sp Energia framework enables pretty much anyone to start easily creating microcontroller\-based projects and applications. Its easy\-to\-use libraries and functions provide developers of all experience levels to start blinking LEDs, buzzing buzzers and sensing sensors more quickly than ever before. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Framework energia\fP .INDENT 2.0 .IP \(bu 2 \fI\%Platforms\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%TI\fP .UNINDENT .UNINDENT .UNINDENT .SS Platforms .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIplatform_timsp430\fP T} T{ MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are 16\-bit, RISC\-based, mixed\-signal processors designed for ultra\-low power. These MCUs offer the lowest power consumption and the perfect mix of integrated peripherals for thousands of applications. T} _ T{ \fIplatform_titiva\fP T} T{ Texas Instruments TM4C12x MCUs offer the industrys most popular ARM Cortex\-M4 core with scalable memory and package options, unparalleled connectivity peripherals, advanced application functions, industry\-leading analog integration, and extensive software solutions. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS TI .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlplm4f120h5qr\fP T} T{ \fI\%TI LaunchPad (Stellaris) w/ lm4f120 (80MHz)\fP T} T{ LPLM4F120H5QR T} T{ 80 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBlpmsp430f5529\fP T} T{ \fI\%TI LaunchPad w/ msp430f5529 (16MHz)\fP T} T{ MSP430F5529 T} T{ 16 MHz T} T{ 128 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430f5529_25\fP T} T{ \fI\%TI LaunchPad w/ msp430f5529 (25MHz)\fP T} T{ MSP430F5529 T} T{ 25 MHz T} T{ 128 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430fr5739\fP T} T{ \fI\%TI FraunchPad w/ msp430fr5739\fP T} T{ MSP430FR5739 T} T{ 16 MHz T} T{ 16 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430fr5969\fP T} T{ \fI\%TI LaunchPad w/ msp430fr5969\fP T} T{ MSP430FR5969 T} T{ 8 MHz T} T{ 64 Kb T} T{ 1 Kb T} _ T{ \fBlpmsp430g2231\fP T} T{ \fI\%TI LaunchPad w/ msp430g2231 (1 MHz)\fP T} T{ MSP430G2231 T} T{ 1 MHz T} T{ 2 Kb T} T{ 0.125 Kb T} _ T{ \fBlpmsp430g2452\fP T} T{ \fI\%TI LaunchPad w/ msp430g2452 (16MHz)\fP T} T{ MSP430G2452 T} T{ 16 MHz T} T{ 8 Kb T} T{ 0.25 Kb T} _ T{ \fBlpmsp430g2553\fP T} T{ \fI\%TI LaunchPad w/ msp430g2553 (16MHz)\fP T} T{ MSP430G2553 T} T{ 16 MHz T} T{ 16 Kb T} T{ 0.5 Kb T} _ T{ \fBlptm4c1230c3pm\fP T} T{ \fI\%TI LaunchPad (Tiva C) w/ tm4c123 (80MHz)\fP T} T{ LPTM4C1230C3PM T} T{ 80 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBlptm4c1294ncpdt\fP T} T{ \fI\%TI LaunchPad (Tiva C) w/ tm4c129 (120MHz)\fP T} T{ LPTM4C1294NCPDT T} T{ 120 MHz T} T{ 1024 Kb T} T{ 256 Kb T} _ .TE .SS Framework \fBlibopencm3\fP .sp The libOpenCM3 framework aims to create a free/libre/open\-source firmware library for various ARM Cortex\-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Framework libopencm3\fP .INDENT 2.0 .IP \(bu 2 \fI\%Platforms\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%ST\fP .IP \(bu 2 \fI\%TI\fP .UNINDENT .UNINDENT .UNINDENT .SS Platforms .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIplatform_ststm32\fP T} T{ The STM32 family of 32\-bit Flash MCUs based on the ARM Cortex\-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32\-bit product range that combines very high performance, real\-time capabilities, digital signal processing, and low\-power, low\-voltage operation, while maintaining full integration and ease of development. T} _ T{ \fIplatform_titiva\fP T} T{ Texas Instruments TM4C12x MCUs offer the industrys most popular ARM Cortex\-M4 core with scalable memory and package options, unparalleled connectivity peripherals, advanced application functions, industry\-leading analog integration, and extensive software solutions. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS ST .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdisco_f303vc\fP T} T{ \fI\%ST STM32F3DISCOVERY\fP T} T{ STM32F303VCT6 T} T{ 72 MHz T} T{ 256 Kb T} T{ 48 Kb T} _ T{ \fBdisco_f407vg\fP T} T{ \fI\%ST STM32F4DISCOVERY\fP T} T{ STM32F407VGT6 T} T{ 168 MHz T} T{ 1024 Kb T} T{ 128 Kb T} _ T{ \fBdisco_l152rb\fP T} T{ \fI\%ST STM32LDISCOVERY\fP T} T{ STM32L152RBT6 T} T{ 32 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS TI .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlplm4f120h5qr\fP T} T{ \fI\%TI LaunchPad (Stellaris) w/ lm4f120 (80MHz)\fP T} T{ LPLM4F120H5QR T} T{ 80 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBlptm4c1230c3pm\fP T} T{ \fI\%TI LaunchPad (Tiva C) w/ tm4c123 (80MHz)\fP T} T{ LPTM4C1230C3PM T} T{ 80 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBlptm4c1294ncpdt\fP T} T{ \fI\%TI LaunchPad (Tiva C) w/ tm4c129 (120MHz)\fP T} T{ LPTM4C1294NCPDT T} T{ 120 MHz T} T{ 1024 Kb T} T{ 256 Kb T} _ .TE .SS Framework \fBmbed\fP .sp The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low\-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Framework mbed\fP .INDENT 2.0 .IP \(bu 2 \fI\%Platforms\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%CQ Publishing\fP .IP \(bu 2 \fI\%Embedded Artists\fP .IP \(bu 2 \fI\%Freescale\fP .IP \(bu 2 \fI\%JKSoft\fP .IP \(bu 2 \fI\%NGX Technologies\fP .IP \(bu 2 \fI\%NXP\fP .IP \(bu 2 \fI\%Nordic\fP .IP \(bu 2 \fI\%Outrageous Circuits\fP .IP \(bu 2 \fI\%RedBearLab\fP .IP \(bu 2 \fI\%ST\fP .IP \(bu 2 \fI\%SeeedStudio\fP .IP \(bu 2 \fI\%Solder Splash Labs\fP .IP \(bu 2 \fI\%Switch Science\fP .IP \(bu 2 \fI\%u\-blox\fP .UNINDENT .UNINDENT .UNINDENT .SS Platforms .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIplatform_freescalekinetis\fP T} T{ Freescale Kinetis Microcontrollers is family of multiple hardware\- and software\-compatible ARM Cortex\-M0+, Cortex\-M4 and Cortex\-M7\-based MCU series. Kinetis MCUs offer exceptional low\-power performance, scalability and feature integration. T} _ T{ \fIplatform_nordicnrf51\fP T} T{ The Nordic nRF51 Series is a family of highly flexible, multi\-protocol, system\-on\-chip (SoC) devices for ultra\-low power wireless applications. nRF51 Series devices support a range of protocol stacks including Bluetooth Smart (previously called Bluetooth low energy), ANT and proprietary 2.4GHz protocols such as Gazell. T} _ T{ \fIplatform_nxplpc\fP T} T{ The NXP LPC is a family of 32\-bit microcontroller integrated circuits by NXP Semiconductors. The LPC chips are grouped into related series that are based around the same 32\-bit ARM processor core, such as the Cortex\-M4F, Cortex\-M3, Cortex\-M0+, or Cortex\-M0. Internally, each microcontroller consists of the processor core, static RAM memory, flash memory, debugging interface, and various peripherals. T} _ T{ \fIplatform_ststm32\fP T} T{ The STM32 family of 32\-bit Flash MCUs based on the ARM Cortex\-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32\-bit product range that combines very high performance, real\-time capabilities, digital signal processing, and low\-power, low\-voltage operation, while maintaining full integration and ease of development. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS CQ Publishing .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpc11u35_501\fP T} T{ \fI\%CQ Publishing TG\-LPC11U35\-501\fP T} T{ LPC11U35 T} T{ 48 MHz T} T{ 64 Kb T} T{ 10 Kb T} _ .TE .SS Embedded Artists .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpc11u35\fP T} T{ \fI\%Embedded Artists LPC11U35 QuickStart Board\fP T} T{ LPC11U35 T} T{ 48 MHz T} T{ 64 Kb T} T{ 10 Kb T} _ T{ \fBlpc4088\fP T} T{ \fI\%Embedded Artists LPC4088 QuickStart Board\fP T} T{ LPC4088 T} T{ 120 MHz T} T{ 512 Kb T} T{ 96 Kb T} _ T{ \fBlpc4088_dm\fP T} T{ \fI\%Embedded Artists LPC4088 Display Module\fP T} T{ LPC4088 T} T{ 120 MHz T} T{ 512 Kb T} T{ 96 Kb T} _ .TE .SS Freescale .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBIBMEthernetKit\fP T} T{ \fI\%Ethernet IoT Starter Kit\fP T} T{ MK64FN1M0VLL12 T} T{ 120 MHz T} T{ 1024 Kb T} T{ 256 Kb T} _ T{ \fBfrdm_k20d50m\fP T} T{ \fI\%Freescale Kinetis FRDM\-K20D50M\fP T} T{ MK20DX128VLH5 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBfrdm_k22f\fP T} T{ \fI\%Freescale Kinetis FRDM\-K22F\fP T} T{ MK22FN512VLH12 T} T{ 120 MHz T} T{ 512 Kb T} T{ 128 Kb T} _ T{ \fBfrdm_k64f\fP T} T{ \fI\%Freescale Kinetis FRDM\-K64F\fP T} T{ MK64FN1M0VLL12 T} T{ 120 MHz T} T{ 1024 Kb T} T{ 256 Kb T} _ T{ \fBfrdm_kl05z\fP T} T{ \fI\%Freescale Kinetis FRDM\-KL05Z\fP T} T{ MKL05Z32VFM4 T} T{ 48 MHz T} T{ 32 Kb T} T{ 4 Kb T} _ T{ \fBfrdm_kl25z\fP T} T{ \fI\%Freescale Kinetis FRDM\-KL25Z\fP T} T{ MKL25Z128VLK4 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBfrdm_kl46z\fP T} T{ \fI\%Freescale Kinetis FRDM\-KL46Z\fP T} T{ MKL46Z256VLL4 T} T{ 48 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ .TE .SS JKSoft .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBwallBotBLE\fP T} T{ \fI\%JKSoft Wallbot BLE\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS NGX Technologies .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBblueboard_lpc11u24\fP T} T{ \fI\%NGX Technologies BlueBoard\-LPC11U24\fP T} T{ LPC11U24 T} T{ 48 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ .TE .SS NXP .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBlpc11u24\fP T} T{ \fI\%NXP mbed LPC11U24\fP T} T{ LPC11U24 T} T{ 48 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ T{ \fBlpc1549\fP T} T{ \fI\%NXP LPCXpresso1549\fP T} T{ LPC1549 T} T{ 72 MHz T} T{ 256 Kb T} T{ 36 Kb T} _ T{ \fBlpc1768\fP T} T{ \fI\%NXP mbed LPC1768\fP T} T{ LPC1768 T} T{ 96 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Nordic .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBnrf51_dk\fP T} T{ \fI\%Nordic nRF51\-DK\fP T} T{ NRF51822 T} T{ 32 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBnrf51_dongle\fP T} T{ \fI\%Nordic nRF51\-Dongle\fP T} T{ NRF51822 T} T{ 32 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBnrf51_mkit\fP T} T{ \fI\%Nordic nRF51822\-mKIT\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Outrageous Circuits .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBmbuino\fP T} T{ \fI\%Outrageous Circuits mBuino\fP T} T{ LPC11U24 T} T{ 48 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ .TE .SS RedBearLab .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBredBearLab\fP T} T{ \fI\%RedBearLab nRF51822\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ T{ \fBredBearLabBLENano\fP T} T{ \fI\%RedBearLab BLE Nano\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ .TE .SS ST .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdisco_f051r8\fP T} T{ \fI\%ST STM32F0DISCOVERY\fP T} T{ STM32F051R8T6 T} T{ 48 MHz T} T{ 64 Kb T} T{ 8 Kb T} _ T{ \fBdisco_f100rb\fP T} T{ \fI\%ST STM32VLDISCOVERY\fP T} T{ STM32F100RBT6 T} T{ 24 MHz T} T{ 128 Kb T} T{ 8 Kb T} _ T{ \fBdisco_f303vc\fP T} T{ \fI\%ST STM32F3DISCOVERY\fP T} T{ STM32F303VCT6 T} T{ 72 MHz T} T{ 256 Kb T} T{ 48 Kb T} _ T{ \fBdisco_f334c8\fP T} T{ \fI\%ST 32F3348DISCOVERY\fP T} T{ STM32F334C8T6 T} T{ 72 MHz T} T{ 64 Kb T} T{ 16 Kb T} _ T{ \fBdisco_f401vc\fP T} T{ \fI\%ST 32F401CDISCOVERY\fP T} T{ STM32F401VCT6 T} T{ 84 MHz T} T{ 256 Kb T} T{ 64 Kb T} _ T{ \fBdisco_f407vg\fP T} T{ \fI\%ST STM32F4DISCOVERY\fP T} T{ STM32F407VGT6 T} T{ 168 MHz T} T{ 1024 Kb T} T{ 128 Kb T} _ T{ \fBdisco_f429zi\fP T} T{ \fI\%ST 32F429IDISCOVERY\fP T} T{ STM32F429ZIT6 T} T{ 180 MHz T} T{ 2048 Kb T} T{ 256 Kb T} _ T{ \fBnucleo_f030r8\fP T} T{ \fI\%ST Nucleo F030R8\fP T} T{ STM32F030R8T6 T} T{ 48 MHz T} T{ 64 Kb T} T{ 8 Kb T} _ T{ \fBnucleo_f070rb\fP T} T{ \fI\%ST Nucleo F070RB\fP T} T{ STM32F070RBT6 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f072rb\fP T} T{ \fI\%ST Nucleo F072RB\fP T} T{ STM32F072RBT6 T} T{ 48 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f091rc\fP T} T{ \fI\%ST Nucleo F091RC\fP T} T{ STM32F091RCT6 T} T{ 48 MHz T} T{ 256 Kb T} T{ 32 Kb T} _ T{ \fBnucleo_f103rb\fP T} T{ \fI\%ST Nucleo F103RB\fP T} T{ STM32F103RBT6 T} T{ 72 MHz T} T{ 128 Kb T} T{ 20 Kb T} _ T{ \fBnucleo_f302r8\fP T} T{ \fI\%ST Nucleo F302R8\fP T} T{ STM32F302R8T6 T} T{ 72 MHz T} T{ 64 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f303re\fP T} T{ \fI\%ST Nucleo F303RE\fP T} T{ STM32F303RET6 T} T{ 72 MHz T} T{ 512 Kb T} T{ 64 Kb T} _ T{ \fBnucleo_f334r8\fP T} T{ \fI\%ST Nucleo F334R8\fP T} T{ STM32F334R8T6 T} T{ 72 MHz T} T{ 64 Kb T} T{ 16 Kb T} _ T{ \fBnucleo_f401re\fP T} T{ \fI\%ST Nucleo F401RE\fP T} T{ STM32F401RET6 T} T{ 84 MHz T} T{ 512 Kb T} T{ 96 Kb T} _ T{ \fBnucleo_f411re\fP T} T{ \fI\%ST Nucleo F411RE\fP T} T{ STM32F411RET6 T} T{ 100 MHz T} T{ 512 Kb T} T{ 128 Kb T} _ T{ \fBnucleo_l053r8\fP T} T{ \fI\%ST Nucleo L053R8\fP T} T{ STM32L053R8T6 T} T{ 48 MHz T} T{ 64 Kb T} T{ 8 Kb T} _ T{ \fBnucleo_l152re\fP T} T{ \fI\%ST Nucleo L152RE\fP T} T{ STM32L152RET6 T} T{ 32 MHz T} T{ 512 Kb T} T{ 80 Kb T} _ .TE .SS SeeedStudio .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBseeedTinyBLE\fP T} T{ \fI\%SeeedStudio Seeed Tiny BLE\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ T{ \fBseeeduinoArchPro\fP T} T{ \fI\%SeeedStudio Seeeduino\-Arch\-Pro\fP T} T{ LPC1768 T} T{ 96 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Solder Splash Labs .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdipcortexm0\fP T} T{ \fI\%Solder Splash Labs DipCortex M0\fP T} T{ LPC11U24 T} T{ 50 MHz T} T{ 32 Kb T} T{ 8 Kb T} _ .TE .SS Switch Science .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBhrm1017\fP T} T{ \fI\%Switch Science mbed HRM1017\fP T} T{ NRF51822 T} T{ 16 MHz T} T{ 256 Kb T} T{ 16 Kb T} _ T{ \fBlpc1114fn28\fP T} T{ \fI\%Switch Science mbed LPC1114FN28\fP T} T{ LPC1114FN28 T} T{ 48 MHz T} T{ 32 Kb T} T{ 4 Kb T} _ .TE .SS u\-blox .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBubloxc027\fP T} T{ \fI\%u\-blox C027\fP T} T{ LPC1768 T} T{ 96 MHz T} T{ 512 Kb T} T{ 32 Kb T} _ .TE .SS Framework \fBspl\fP .sp The ST Standard Peripheral Library provides a set of functions for handling the peripherals on the STM32 Cortex\-M3 family. The idea is to save the user (the new user, in particular) having to deal directly with the registers. .sp For more detailed information please visit \fI\%vendor site\fP\&. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Framework spl\fP .INDENT 2.0 .IP \(bu 2 \fI\%Platforms\fP .IP \(bu 2 \fI\%Boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%ST\fP .UNINDENT .UNINDENT .UNINDENT .SS Platforms .TS center; |l|l|. _ T{ Name T} T{ Description T} _ T{ \fIplatform_ststm32\fP T} T{ The STM32 family of 32\-bit Flash MCUs based on the ARM Cortex\-M processor is designed to offer new degrees of freedom to MCU users. It offers a 32\-bit product range that combines very high performance, real\-time capabilities, digital signal processing, and low\-power, low\-voltage operation, while maintaining full integration and ease of development. T} _ .TE .SS Boards .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 You can list pre\-configured boards by \fIcmd_boards\fP command or \fI\%PlatformIO Boards Explorer\fP .IP \(bu 2 For more detailed \fBboard\fP information please scroll tables below by horizontal. .UNINDENT .UNINDENT .UNINDENT .SS ST .TS center; |l|l|l|l|l|l|. _ T{ Type \fBboard\fP T} T{ Name T} T{ Microcontroller T} T{ Frequency T} T{ Flash T} T{ RAM T} _ T{ \fBdisco_f303vc\fP T} T{ \fI\%ST STM32F3DISCOVERY\fP T} T{ STM32F303VCT6 T} T{ 72 MHz T} T{ 256 Kb T} T{ 48 Kb T} _ T{ \fBdisco_f407vg\fP T} T{ \fI\%ST STM32F4DISCOVERY\fP T} T{ STM32F407VGT6 T} T{ 168 MHz T} T{ 1024 Kb T} T{ 128 Kb T} _ T{ \fBdisco_l152rb\fP T} T{ \fI\%ST STM32LDISCOVERY\fP T} T{ STM32L152RBT6 T} T{ 32 MHz T} T{ 128 Kb T} T{ 16 Kb T} _ .TE .SS Library Manager .INDENT 0.0 .INDENT 3.5 \fI"The missing library manager for development platforms"\fP [1] .UNINDENT .UNINDENT .sp \fIPlatformIO Library Manager\fP allows you to organize external embedded libraries. You can search for new libraries via \fICommand Line interface\fP or \fI\%Web 2.0 Library Search\fP\&. .sp You don\(aqt need to bother for finding the latest version of library. Due to \fIcmd_lib_update\fP command you will have up\-to\-date external libraries. .SS library.json .sp \fBlibrary.json\fP is a manifest file of development library. .sp Initially it was developed for \fIlibrarymanager\fP, but later was accepted by worldwide embedded community like a \fBstandard library specification\fP\&. .sp A data in \fBlibrary.json\fP should be represented in \fI\%JSON\-style\fP via \fI\%associative array\fP (name/value pairs). An order doesn\(aqt matter. The allowable fields (names from pairs) are described below. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%library.json\fP .INDENT 2.0 .IP \(bu 2 \fI\%name\fP .IP \(bu 2 \fI\%description\fP .IP \(bu 2 \fI\%keywords\fP .IP \(bu 2 \fI\%authors\fP .IP \(bu 2 \fI\%repository\fP .IP \(bu 2 \fI\%downloadUrl\fP .IP \(bu 2 \fI\%version\fP .IP \(bu 2 \fI\%url\fP .IP \(bu 2 \fI\%include\fP .IP \(bu 2 \fI\%exclude\fP .IP \(bu 2 \fI\%frameworks\fP .IP \(bu 2 \fI\%platforms\fP .IP \(bu 2 \fI\%dependencies\fP .IP \(bu 2 \fI\%examples\fP .UNINDENT .UNINDENT .SS \fBname\fP .sp \fBRequired\fP | Type: \fBString\fP | Max. Length: 50 .sp A name of the library. .INDENT 0.0 .IP \(bu 2 Must be unique. .IP \(bu 2 Should be slug style for simplicity, consistency and compatibility. Example: \fIArduino\-SPI\fP .IP \(bu 2 Title Case, Aa\-z, can contain digits and dashes (but not start/end with them). .IP \(bu 2 Consecutive dashes are not allowed. .UNINDENT .SS \fBdescription\fP .sp \fBRequired\fP | Type: \fBString\fP | Max. Length: 255 .sp The field helps users to identify and search for your library with a brief description. Describe the hardware devices (sensors, boards and etc.) which are suitable with it. .SS \fBkeywords\fP .sp \fBRequired\fP | Type: \fBString\fP | Max. Length: 255 .sp Used for search by keyword. Helps to make your library easier to discover without people needing to know its name. .sp The keyword should be lowercased, can contain a\-z, digits and dash (but not start/end with them). A list from the keywords can be specified with separator \fB,\fP .SS \fBauthors\fP .sp \fIRequired\fP if \fIlibjson_repository\fP field is not defined | Type: \fBObject\fP or \fBArray\fP .sp An author contact information .INDENT 0.0 .IP \(bu 2 \fBname\fP Full name (\fBRequired\fP) .IP \(bu 2 \fBemail\fP .IP \(bu 2 \fBurl\fP An author\(aqs contact page .IP \(bu 2 \fBmaintainer\fP Specify "maintainer" status .UNINDENT .sp Examples: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C "authors": { "name": "John Smith", "email": "me@john\-smith.com", "url": "http://www.john\-smith/contact" } \&... "authors": [ { "name": "John Smith", "email": "me@john\-smith.com", "url": "http://www.john\-smith/contact" }, { "name": "Andrew Smith", "email": "me@andrew\-smith.com", "url": "http://www.andrew\-smith/contact", "maintainer": true } ] .ft P .fi .UNINDENT .UNINDENT .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 You can omit \fIlibjson_authors\fP field and define \fIlibjson_repository\fP field. Only \fIGitHub\-based\fP repository is supported now. In this case \fIPlatformIO Library Registry Crawler\fP will use information from \fI\%GitHub API Users\fP\&. .UNINDENT .UNINDENT .SS \fBrepository\fP .sp \fIRequired\fP if \fIlibjson_downloadurl\fP field is not defined | Type: \fBObject\fP .sp The repository in which the source code can be found. .sp Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C "repository": { "type": "git", "url": "https://github.com/foo/bar.git" } .ft P .fi .UNINDENT .UNINDENT .SS \fBdownloadUrl\fP .sp \fIRequired\fP if \fIlibjson_repository\fP field is not defined | Type: \fBString\fP .sp It is the \fIHTTP URL\fP to the archived source code of library. It should end with the type of archive (\fB\&.zip\fP or \fB\&.tar.gz\fP). .SS \fBversion\fP .sp \fIRequired\fP if \fIlibjson_repository\fP field is not defined | Type: \fBString\fP | Max. Length: 20 .sp A version of the current library source code. .INDENT 0.0 .IP \(bu 2 Can contain a\-z, digits, dots or dash. .IP \(bu 2 \fI\%Semantic Versioning\fP is recommended. .IP \(bu 2 A \fI\%CVS\fP revision from the latest commit. Example: \fB13\fP (\fISVN\fP) or first 10 chars of \fISHA\fP digest \fBe4564b7da4\fP (\fIGit\fP). .UNINDENT .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 You can omit \fIlibjson_version\fP field and define \fIlibjson_repository\fP field. In this case \fIPlatformIO Library Registry Crawler\fP will use the \fICVS\fP\-revision from the latest commit. .UNINDENT .UNINDENT .SS \fBurl\fP .sp \fIOptional\fP | Type: \fBString\fP | Max. Length: 255 .sp Home page of library (if is different from \fIlibjson_repository\fP url). .SS \fBinclude\fP .sp \fIOptional\fP | Type: \fBString\fP or \fBArray\fP | \fI\%Glob Pattern\fP .sp If \fIlibjson_include\fP field is a type of \fBString\fP, then \fIPlatformIO Library Registry Crawler\fP will recognize it like a "relative path inside repository/archive to library source code". See example below where the only source code from the relative directory \fBLibrarySourceCodeHere\fP will be included. .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C "include": "some/child/dir/LibrarySourceCodeHere" .ft P .fi .UNINDENT .UNINDENT .sp If \fIlibjson_include\fP field is a type of \fBArray\fP, then \fIPlatformIO Library Registry Crawler\fP firstly will apply \fIlibjson_exclude\fP filter and then include only directories/files which match with \fIlibjson_include\fP patterns. .sp Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C "include": [ "dir/*.[ch]pp", "dir/examples/*", "*/*/*.h" ] .ft P .fi .UNINDENT .UNINDENT .sp Pattern Meaning .TS center; |l|l|. _ T{ Pattern T} T{ Meaning T} _ T{ \fB*\fP T} T{ matches everything T} _ T{ \fB?\fP T} T{ matches any single character T} _ T{ \fB[seq]\fP T} T{ matches any character in seq T} _ T{ \fB[!seq]\fP T} T{ matches any character not in seq T} _ .TE .SS \fBexclude\fP .sp \fIOptional\fP | Type: \fBString\fP or \fBArray\fP | \fI\%Glob Pattern\fP .sp Exclude the directories and files which match with \fIlibjson_exclude\fP patterns. .SS \fBframeworks\fP .sp \fIOptional\fP | Type: \fBString\fP or \fBArray\fP .sp A list with compatible frameworks. The available framework types are defined in the \fIplatforms\fP section. .SS \fBplatforms\fP .sp \fIOptional\fP | Type: \fBString\fP or \fBArray\fP .sp A list with compatible platforms. The available platform types are defined in \fIplatforms\fP section. .SS \fBdependencies\fP .sp \fIOptional\fP | Type: \fBArray\fP or \fBObject\fP .sp A list of dependent libraries. They will be installed automatically with \fIcmd_lib_install\fP command. .sp Allowed requirements for dependent library: .INDENT 0.0 .IP \(bu 2 \fBname\fP | Type: \fBString\fP .IP \(bu 2 \fBauthors\fP | Type: \fBString\fP or \fBArray\fP .IP \(bu 2 \fBframeworks\fP | Type: \fBString\fP or \fBArray\fP .IP \(bu 2 \fBplatforms\fP | Type: \fBString\fP or \fBArray\fP .UNINDENT .sp Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C "dependencies": [ { "name": "Library\-Foo", "authors": [ "Jhon Smith", "Andrew Smith" ] }, { "name": "Library\-Bar", "frameworks": "FrameworkFoo, FrameworkBar" } ] .ft P .fi .UNINDENT .UNINDENT .SS \fBexamples\fP .sp \fIOptional\fP | Type: \fBString\fP or \fBArray\fP | \fI\%Glob Pattern\fP .sp A list of example patterns. This field is predefined with default value: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C "examples": [ "[Ee]xamples/*/*.ini", "[Ee]xamples/*/*.pde" ] .ft P .fi .UNINDENT .UNINDENT .SS Creating Library .sp \fIPlatformIO\fP \fIlibrarymanager\fP doesn\(aqt have any requirements to a library source code structure. The only one requirement is library\(aqs manifest file \- \fIlibrary_config\fP\&. It can be located inside your library or in the another location where \fIPlatformIO Library Registry Crawler\fP will have \fIHTTP\fP access. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Creating Library\fP .INDENT 2.0 .IP \(bu 2 \fI\%Source Code Location\fP .INDENT 2.0 .IP \(bu 2 \fI\%At GitHub\fP .IP \(bu 2 \fI\%Under CVS (SVN/GIT)\fP .IP \(bu 2 \fI\%Self\-hosted\fP .UNINDENT .IP \(bu 2 \fI\%Register\fP .UNINDENT .UNINDENT .SS Source Code Location .sp There are a several ways how to share your library with the whole world (see \fI\%examples\fP). .sp You can hold a lot of libraries (split into separated folders) inside one of the repository/archive. In this case please use \fIlibjson_include\fP field to specify the relative path to your library\(aqs source code. .SS At GitHub .sp \fBRecommended\fP .sp If a library source code is located at \fI\%GitHub\fP, then you \fBneed to specify\fP only these fields in the \fIlibrary_config\fP: .INDENT 0.0 .IP \(bu 2 \fIlibjson_name\fP .IP \(bu 2 \fIlibjson_keywords\fP .IP \(bu 2 \fIlibjson_description\fP .IP \(bu 2 \fIlibjson_repository\fP .UNINDENT .sp \fIPlatformIO Library Registry Crawler\fP will populate the rest fields, like \fIlibjson_version\fP or \fIlibjson_authors\fP with an actual information from \fIGitHub\fP\&. .sp Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C { "name": "IRremote", "keywords": "infrared, ir, remote", "description": "Send and receive infrared signals with multiple protocols", "repository": { "type": "git", "url": "https://github.com/shirriff/Arduino\-IRremote.git" }, "frameworks": "arduino", "platforms": "atmelavr" } .ft P .fi .UNINDENT .UNINDENT .SS Under CVS (SVN/GIT) .sp \fIPlatformIO Library Registry Crawler\fP can operate with a library source code that is under \fICVS\fP control. The list of \fBrequired\fP fields in the \fIlibrary_config\fP will look like: .INDENT 0.0 .IP \(bu 2 \fIlibjson_name\fP .IP \(bu 2 \fIlibjson_keywords\fP .IP \(bu 2 \fIlibjson_description\fP .IP \(bu 2 \fIlibjson_authors\fP .IP \(bu 2 \fIlibjson_repository\fP .UNINDENT .sp Example: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C { "name": "XBee", "keywords": "xbee, protocol, radio", "description": "Arduino library for communicating with XBees in API mode", "authors": { "name": "Andrew Rapp", "email": "andrew.rapp@gmail.com", "url": "https://code.google.com/u/andrew.rapp@gmail.com/" }, "repository": { "type": "git", "url": "https://code.google.com/p/xbee\-arduino/" }, "frameworks": "arduino", "platforms": "atmelavr" } .ft P .fi .UNINDENT .UNINDENT .SS Self\-hosted .sp You can manually archive (\fIZip, Tar.Gz\fP) your library source code and host it in the \fIInternet\fP\&. Then you should specify the additional fields, like \fIlibjson_version\fP and \fIlibjson_downloadurl\fP\&. The final list of \fBrequired\fP fields in the \fIlibrary_config\fP will look like: .INDENT 0.0 .IP \(bu 2 \fIlibjson_name\fP .IP \(bu 2 \fIlibjson_keywords\fP .IP \(bu 2 \fIlibjson_description\fP .IP \(bu 2 \fIlibjson_authors\fP .IP \(bu 2 \fIlibjson_version\fP .IP \(bu 2 \fIlibjson_downloadurl\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C { "name": "OneWire", "keywords": "onewire, 1\-wire, bus, sensor, temperature, ibutton", "description": "Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc)", "authors": { "name": "Paul Stoffregen", "url": "http://www.pjrc.com/teensy/td_libs_OneWire.html" }, "version": "2.2", "downloadUrl": "http://www.pjrc.com/teensy/arduino_libraries/OneWire.zip", "include": "OneWire", "frameworks": "arduino", "platforms": "atmelavr" } .ft P .fi .UNINDENT .UNINDENT .SS Register .sp The registration requirements: .INDENT 0.0 .IP \(bu 2 A library must adhere to the \fIlibrary_config\fP specification. .IP \(bu 2 There must be public \fIHTTP\fP access to the library \fIlibrary_config\fP file. .UNINDENT .sp Now, you can \fIregister\fP your library and allow others to \fIinstall\fP it. .SS Library Manager .sp To print all available commands and options use: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib \-\-help $ platformio lib COMMAND \-\-help .ft P .fi .UNINDENT .UNINDENT .SS platformio lib install .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib install\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib install [OPTIONS] [LIBRARY_ID] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Install new library by specified \fI\%PlatformIO Library Registry ID\fP\&. .SS Options .INDENT 0.0 .TP .B \-v, \-\-version .UNINDENT .sp Install specified version of library .SS Examples .INDENT 0.0 .IP 1. 3 Install the latest version of library .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # IRremote: http://platformio.org/#!/lib/show/4/IRremote $ platformio lib install 4 # Installing library [ 4 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #4 \(aqIRremote\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Install specified version of library .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # XBee: http://platformio.org/#!/lib/show/6/XBee $ platformio lib install 6 \-\-version=0.5 # Installing library [ 6 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #6 \(aqXBee\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Install library with dependencies .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # Adafruit\-ST7735: http://platformio.org/#!/lib/show/12/Adafruit\-ST7735 $ platformio lib install 12 # Installing library [ 12 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #12 \(aqAdafruit\-ST7735\(aq has been successfully installed! # Installing dependencies: # Installing library [ 13 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #13 \(aqAdafruit\-GFX\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .SS platformio lib list .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib list\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .INDENT 2.0 .IP \(bu 2 \fI\%Options\fP .UNINDENT .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib list [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp List installed libraries .SS Options .INDENT 0.0 .TP .B \-\-json\-output .UNINDENT .sp Return the output in \fI\%JSON\fP format .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib list # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 12 ] Adafruit\-ST7735 arduino, atmelavr "Adafruit Industries": A library for the Adafruit 1.8" SPI display # [ 31 ] Adafruit\-Unified\-Sensor arduino, atmelavr "Adafruit Industries": Adafruit Unified Sensor Driver # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # [ 6 ] XBee arduino, atmelavr "Andrew Rapp": Arduino library for communicating with XBees in API mode # [ 13 ] Adafruit\-GFX arduino, atmelavr "Adafruit Industries": A core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.) # [ 4 ] IRremote arduino, atmelavr "Ken Shirriff": Send and receive infrared signals with multiple protocols # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # ... .ft P .fi .UNINDENT .UNINDENT .SS platformio lib register .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib register\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib register [HTTP_URL_TO_LIBRARY.JSON] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Register new library and allow others to install it. .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib register http://my.example.com/library.json .ft P .fi .UNINDENT .UNINDENT .SS platformio lib search .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib search\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib search [OPTIONS] [QUERY] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Search for library in \fI\%PlatformIO Library Registry\fP by \fIlibrary_config\fP fields in the boolean mode. .sp The boolean search capability supports the following operators: .TS center; |l|l|. _ T{ Operator T} T{ Description T} _ T{ \fB+\fP T} T{ A leading or trailing plus sign indicates that this word must be present in library fields (see above) that is returned. T} _ T{ \fB\-\fP T} T{ A leading or trailing minus sign indicates that this word must not be present in any of the libraries that are returned. T} _ T{ \fB(no operator)\fP T} T{ By default (when neither \fB+\fP nor \fB\-\fP is specified), the word is optional, but the libraries that contain it are rated higher. T} _ T{ \fB> <\fP T} T{ These two operators are used to change a word\(aqs contribution to the relevance value that is assigned to a library. The \fB>\fP operator increases the contribution and the \fB<\fP operator decreases it. T} _ T{ \fB( )\fP T} T{ Parentheses group words into subexpressions. Parenthesized groups can be nested. T} _ T{ \fB~\fP T} T{ A leading tilde acts as a negation operator, causing the word\(aqs contribution to the library\(aqs relevance to be negative. This is useful for marking "noise" words. A library containing such a word is rated lower than others, but is not excluded altogether, as it would be with the \fB\-\fP operator. T} _ T{ \fB*\fP T} T{ The asterisk serves as the truncation (or wildcard) operator. Unlike the other operators, it is appended to the word to be affected. Words match if they begin with the word preceding the \fB*\fP operator. T} _ T{ \fB"\fP T} T{ A phrase that is enclosed within double quote (\fB"\fP) characters matches only libraries that contain the phrase literally, as it was typed. T} _ .TE .sp For more detail information please go to \fI\%MySQL Boolean Full\-Text Searches\fP\&. .SS Options .INDENT 0.0 .TP .B \-a, \-\-author .UNINDENT .sp Filter libraries by specified author .INDENT 0.0 .TP .B \-k, \-\-keyword .UNINDENT .sp Filter libraries by specified keyword .INDENT 0.0 .TP .B \-f, \-\-framework .UNINDENT .sp Filter libraries by specified framework .INDENT 0.0 .TP .B \-p, \-\-platform .UNINDENT .sp Filter libraries by specified keyword .SS Examples .INDENT 0.0 .IP 1. 3 List all libraries .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # [ 13 ] Adafruit\-GFX arduino, atmelavr "Adafruit Industries": A core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.) # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # [ 12 ] Adafruit\-ST7735 arduino, atmelavr "Adafruit Industries": A library for the Adafruit 1.8" SPI display # [ 31 ] Adafruit\-Unified\-Sensor arduino, atmelavr "Adafruit Industries": Adafruit Unified Sensor Driver # [ 4 ] IRremote arduino, atmelavr "Ken Shirriff": Send and receive infrared signals with multiple protocols # [ 1 ] OneWire arduino, atmelavr "Paul Stoffregen": Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) # [ 6 ] XBee arduino, atmelavr "Andrew Rapp": Arduino library for communicating with XBees in API mode # [ 15 ] Adafruit\-ADXL345\-Unified arduino, atmelavr "Adafruit Industries": Unified driver for the ADXL345 Accelerometer # Show next libraries? [y/N]: # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Search for \fI\%1\-Wire libraries\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "1\-wire" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 1 ] OneWire arduino, atmelavr "Paul Stoffregen": Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Search for \fI\%Arduino\-based "I2C" libraries\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "i2c" \-\-framework="arduino" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 11 ] I2Cdevlib\-Core arduino, atmelavr "Jeff Rowberg": The I2C Device Library (I2Cdevlib) is a collection of uniform and well\-documented classes to provide simple and intuitive interfaces to I2C devices. # [ 24 ] Adafruit\-L3GD20 arduino, atmelavr "Adafruit Industries": Driver for Adafruit\(aqs L3GD20 I2C Gyroscope Breakout # [ 10 ] I2Cdevlib\-AK8975 arduino, atmelavr "Jeff Rowberg": AK8975 is 3\-axis electronic compass IC with high sensitive Hall sensor technology # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 4. 3 Search for \fI\%libraries by "web" and "http" keywords\fP\&. .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search \-\-keyword="web" \-\-keyword="http" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 5 ] Webduino arduino, atmelavr "Ben Combee": An extensible web server library (for use with the Arduino WizNet Ethernet Shield) # [ 17 ] Adafruit\-CC3000 arduino, atmelavr "Adafruit Industries": Library code for Adafruit\(aqs CC3000 Wi\-Fi/WiFi breakouts # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 5. 3 Search for \fI\%libraries by "Adafruit Industries" author\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search \-\-author="Adafruit Industries" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # [ 13 ] Adafruit\-GFX arduino, atmelavr "Adafruit Industries": A core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.) # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 6. 3 Search for \fI\%libraries which are compatible with Dallas temperature sensors\fP like DS18B20, DS18S20 and etc. .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "DS*" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 1 ] OneWire arduino, atmelavr "Paul Stoffregen": Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 7. 3 Search for \fI\%Energia\-based *nRF24* or *HttpClient* libraries\fP\&. The search query that is described below can be interpreted like \fBenergia nRF24 OR energia HttpClient\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "+(nRF24 HttpClient)" \-\-framework="energia" # Found 2 libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 46 ] HttpClient energia, timsp430, titiva "Zack Lalanne": HttpClient is a library to make it easier to interact with web servers # [ 43 ] nRF24 energia, timsp430 "Eric": The nRF24L01 is a low\-cost 2.4GHz ISM transceiver module. It supports a number of channel frequencies in the 2.4GHz band and a range of data rates. .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 8. 3 Search for the \fI\%all sensor libraries excluding temperature\fP\&. .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "sensor \-temperature" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 31 ] Adafruit\-Unified\-Sensor arduino, atmelavr "Adafruit Industries": Adafruit Unified Sensor Driver # [ 10 ] I2Cdevlib\-AK8975 arduino, atmelavr "Jeff Rowberg": AK8975 is 3\-axis electronic compass IC with high sensitive Hall sensor technology # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # [ 33 ] Adafruit\-TMP006 arduino, atmelavr "Adafruit Industries": A library for the Adafruit TMP006 Infrared Thermopile Sensor # [ 34 ] Adafruit\-TSL2561\-Unified arduino, atmelavr "Adafruit Industries": Unified light sensor driver for Adafruit\(aqs TSL2561 breakouts # [ 97 ] I2Cdevlib\-BMA150 arduino, atmelavr "Jeff Rowberg": The BMA150 is a triaxial, low\-g acceleration sensor IC with digital output for consumer market applications # [ 106 ] I2Cdevlib\-MPR121 arduino, atmelavr "Jeff Rowberg": The MPR121 is a 12\-bit proximity capacitive touch sensor # [ 111 ] I2Cdevlib\-AK8975 energia, timsp430 "Jeff Rowberg": AK8975 is 3\-axis electronic compass IC with high sensitive Hall sensor technology # Show next libraries? [y/N]: .ft P .fi .UNINDENT .UNINDENT .SS platformio lib show .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib show\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib show ID .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Show details about the installed library .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # OneWire: http://platformio.org/#!/lib/show/1/OneWire $ platformio lib show 1 # OneWire # \-\-\-\-\-\-\- # Authors: Paul Stoffregen <paul@pjrc.com> http://www.pjrc.com/teensy/td_libs_OneWire.html (maintainer), Jim Studt, Jason Dangel <dangel.jason@gmail.com>, Derek Yerger, Tom Pollard <pollard@alum.mit.edu>, Robin James # Keywords: onewire, 1\-wire, bus, sensor, temperature, ibutton # Frameworks: arduino # Platforms: atmelavr # Version: 2.2 # # Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) .ft P .fi .UNINDENT .UNINDENT .SS platformio lib uninstall .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib uninstall\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib uninstall ID .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Uninstall specified library .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # XBee: http://platformio.org/#!/lib/show/6/XBee $ platformio lib uninstall 6 # The library #6 \(aqXBee\(aq has been successfully uninstalled! .ft P .fi .UNINDENT .UNINDENT .SS platformio lib update .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib update\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib update .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Check or update installed libraries .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib update # Updating [ 23 ] Adafruit\-L3GD20\-Unified library: # Versions: Current=63de2eb9ea, Latest=63de2eb9ea [Up\-to\-date] # Updating [ 12 ] Adafruit\-ST7735 library: # Versions: Current=e880eb1687, Latest=e880eb1687 [Up\-to\-date] # Updating [ 31 ] Adafruit\-Unified\-Sensor library: # Versions: Current=88ae805bce, Latest=88ae805bce [Up\-to\-date] # Updating [ 26 ] Adafruit\-LSM303DLHC\-Unified library: # Versions: Current=59767208a8, Latest=59767208a8 [Up\-to\-date] # Updating [ 13 ] Adafruit\-GFX library: # Versions: Current=a9e5bc4707, Latest=a9e5bc4707 [Up\-to\-date] # Updating [ 1 ] OneWire library: # Versions: Current=2.2, Latest=2.2 [Up\-to\-date] # Updating [ 4 ] IRremote library: # Versions: Current=f2dafe5030, Latest=f2dafe5030 [Up\-to\-date] # Updating [ 14 ] Adafruit\-9DOF\-Unified library: # Versions: Current=b2f07242ac, Latest=b2f07242ac [Up\-to\-date] .ft P .fi .UNINDENT .UNINDENT .IP [1] 5 Inspired by \fI\%npm\fP and \fI\%bower\fP package managers for web. .SS User Guide .sp To print all available commands and options use: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio \-\-help $ platformio COMMAND \-\-help .ft P .fi .UNINDENT .UNINDENT .SS platformio boards .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio boards\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # Print all available pre\-configured embedded boards platformio boards # Filter boards by "Query" platformio boards QUERY .ft P .fi .UNINDENT .UNINDENT .SS Description .sp List pre\-configured Embedded Boards .SS Examples .INDENT 0.0 .IP 1. 3 Show Arduino\-based boards .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio boards arduino Platform: atmelavr \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Type MCU Frequency Flash RAM Name \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- btatmega168 atmega168 16Mhz 14Kb 1Kb Arduino BT ATmega168 btatmega328 atmega328p 16Mhz 28Kb 2Kb Arduino BT ATmega328 diecimilaatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Duemilanove or Diecimila ATmega168 diecimilaatmega328 atmega328p 16Mhz 30Kb 2Kb Arduino Duemilanove or Diecimila ATmega328 esplora atmega32u4 16Mhz 28Kb 2Kb Arduino Esplora ethernet atmega328p 16Mhz 31Kb 2Kb Arduino Ethernet \&... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Show mbed\-enabled boards .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio boards mbed Platform: freescalekinetis \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Type MCU Frequency Flash RAM Name \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- frdm_k20d50m mk20dx128vlh5 48Mhz 128Kb 16Kb Freescale Kinetis FRDM\-K20D50M frdm_k22f mk22fn512vlh12 120Mhz 512Kb 128Kb Freescale Kinetis FRDM\-K22F \&... Platform: nordicnrf51 \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Type MCU Frequency Flash RAM Name \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- wallBotBLE nrf51822 16Mhz 128Kb 16Kb JKSoft Wallbot BLE nrf51_dk nrf51822 32Mhz 256Kb 32Kb Nordic nRF51\-DK \&... Platform: nxplpc \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Type MCU Frequency Flash RAM Name \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- blueboard_lpc11u24 lpc11u24 48Mhz 32Kb 8Kb BlueBoard\-LPC11U24 dipcortexm0 lpc11u24 50Mhz 32Kb 8Kb DipCortex M0 lpc11u35 lpc11u35 48Mhz 64Kb 10Kb EA LPC11U35 QuickStart Board \&... Platform: ststm32 \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Type MCU Frequency Flash RAM Name \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- disco_f401vc stm32f401vct6 84Mhz 256Kb 64Kb 32F401CDISCOVERY nucleo_f030r8 stm32f030r8t6 48Mhz 64Kb 8Kb ST Nucleo F030R8 \&... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Show boards which are based on \fBATmega168\fP MCU .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio boards atmega168 Platform: atmelavr \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Type MCU Frequency Flash RAM Name \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- btatmega168 atmega168 16Mhz 14Kb 1Kb Arduino BT ATmega168 diecimilaatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Duemilanove or Diecimila ATmega168 miniatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Mini ATmega168 atmegangatmega168 atmega168 16Mhz 14Kb 1Kb Arduino NG or older ATmega168 nanoatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Nano ATmega168 pro8MHzatmega168 atmega168 8Mhz 14Kb 1Kb Arduino Pro or Pro Mini ATmega168 (3.3V, 8 MHz) pro16MHzatmega168 atmega168 16Mhz 14Kb 1Kb Arduino Pro or Pro Mini ATmega168 (5V, 16 MHz) lilypadatmega168 atmega168 8Mhz 14Kb 1Kb LilyPad Arduino ATmega168 168pa16m atmega168p 16Mhz 15Kb 1Kb Microduino Core (Atmega168PA@16M,5V) 168pa8m atmega168p 8Mhz 15Kb 1Kb Microduino Core (Atmega168PA@8M,3.3V) .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 4. 3 Show boards by \fIplatform_timsp430\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio boards timsp430 Platform: timsp430 \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Type MCU Frequency Flash RAM Name \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- lpmsp430fr5739 msp430fr5739 16Mhz 15Kb 1Kb FraunchPad w/ msp430fr5739 lpmsp430f5529 msp430f5529 16Mhz 128Kb 1Kb LaunchPad w/ msp430f5529 (16MHz) lpmsp430f5529_25 msp430f5529 25Mhz 128Kb 1Kb LaunchPad w/ msp430f5529 (25MHz) lpmsp430fr5969 msp430fr5969 8Mhz 64Kb 1Kb LaunchPad w/ msp430fr5969 lpmsp430g2231 msp430g2231 1Mhz 2Kb 128B LaunchPad w/ msp430g2231 (1MHz) lpmsp430g2452 msp430g2452 16Mhz 8Kb 256B LaunchPad w/ msp430g2452 (16MHz) lpmsp430g2553 msp430g2553 16Mhz 16Kb 512B LaunchPad w/ msp430g2553 (16MHz) .ft P .fi .UNINDENT .UNINDENT .SS platformio init .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio init\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio init [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Initialize new PlatformIO based project. .sp This command will create: .INDENT 0.0 .IP \(bu 2 \fIprojectconf\fP .IP \(bu 2 \fBsrc\fP \- a source directory. Put your source code here .IP \(bu 2 \fBlib\fP \- a directory for the project specific libraries. PlatformIO will compile them to static libraries and link to executable file .UNINDENT .SS Options .INDENT 0.0 .TP .B \-\-project\-dir, \-d .UNINDENT .sp A path to the directory where \fIPlatformIO\fP will initialise new project. .INDENT 0.0 .TP .B \-\-board, \-b .UNINDENT .sp If you specify board \fBtype\fP (you can pass multiple \fB\-\-board\fP options), then \fIPlatformIO\fP will automatically generate environment for \fIprojectconf\fP and pre\-fill these data: .INDENT 0.0 .IP \(bu 2 \fIprojectconf_env_platform\fP .IP \(bu 2 \fIprojectconf_env_framework\fP .IP \(bu 2 \fIprojectconf_env_board\fP .UNINDENT .sp The full list with pre\-configured boards is available here \fIplatforms\fP\&. .INDENT 0.0 .TP .B \-\-disable\-auto\-uploading .UNINDENT .sp If you initialise project with the specified \fB\-\-board\fP, then \fIPlatformIO\fP will create environment with enabled firmware auto\-uploading. This option allows you to disable firmware auto\-uploading by default. .SS Examples .INDENT 0.0 .IP 1. 3 Create new project in the current working directory .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio init The current working directory *** will be used for the new project. You can specify another project directory via \(gaplatformio init \-d %PATH_TO_THE_PROJECT_DIR%\(ga command. The next files/directories will be created in *** platformio.ini \- Project Configuration File. |\-> PLEASE EDIT ME <\-| src \- Put your source code here lib \- Put here project specific or 3\-rd party libraries Do you want to continue? [y/N]: y Project has been successfully initialized! Useful commands: \(gaplatformio run\(ga \- process/build project from the current directory \(gaplatformio run \-\-target upload\(ga or \(gaplatformio run \-t upload\(ga \- upload firmware to embedded board \(gaplatformio run \-\-target clean\(ga \- clean project (remove compiled files) .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Create new project in the specified directory .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio init \-d %PATH_TO_DIR% The next files/directories will be created in *** platformio.ini \- Project Configuration File. |\-> PLEASE EDIT ME <\-| src \- Put your source code here lib \- Put here project specific or 3\-rd party libraries Do you want to continue? [y/N]: y Project has been successfully initialized! Useful commands: \(gaplatformio run\(ga \- process/build project from the current directory \(gaplatformio run \-\-target upload\(ga or \(gaplatformio run \-t upload\(ga \- upload firmware to embedded board \(gaplatformio run \-\-target clean\(ga \- clean project (remove compiled files) .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Initialise project for Arduino Uno .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio init \-\-board uno Would you like to enable firmware auto\-uploading when project is successfully built using \(gaplatformio run\(ga command? Don\(aqt forget that you can upload firmware manually using \(gaplatformio run \-\-target upload\(ga command. [y/N]: y The current working directory *** will be used for the new project. You can specify another project directory via \(gaplatformio init \-d %PATH_TO_THE_PROJECT_DIR%\(ga command. The next files/directories will be created in *** platformio.ini \- Project Configuration File. |\-> PLEASE EDIT ME <\-| src \- Put your source code here lib \- Put here project specific or 3\-rd party libraries Do you want to continue? [y/N]: y Project has been successfully initialized! Useful commands: \(gaplatformio run\(ga \- process/build project from the current directory \(gaplatformio run \-\-target upload\(ga or \(gaplatformio run \-t upload\(ga \- upload firmware to embedded board \(gaplatformio run \-\-target clean\(ga \- clean project (remove compiled files) .ft P .fi .UNINDENT .UNINDENT .SS platformio install .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio install\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio install [OPTIONS] [PLATFORMS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Install pre\-built development \fIPlatforms\fP with related packages. .sp There are several predefined aliases for packages, such as: .INDENT 0.0 .IP \(bu 2 \fBtoolchain\fP .IP \(bu 2 \fBuploader\fP .UNINDENT .SS Options .INDENT 0.0 .TP .B \-\-with\-package .UNINDENT .sp Install specified package (or alias) .INDENT 0.0 .TP .B \-\-without\-package .UNINDENT .sp Do not install specified package (or alias) .INDENT 0.0 .TP .B \-\-skip\-default .UNINDENT .sp Skip default packages .SS Examples .INDENT 0.0 .IP 1. 3 Install \fIplatform_timsp430\fP with default packages .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio install timsp430 Installing toolchain\-timsp430 package: Downloading [####################################] 100% Unpacking [####################################] 100% Installing tool\-mspdebug package: Downloading [####################################] 100% Unpacking [####################################] 100% Installing framework\-energiamsp430 package: Downloading [####################################] 100% Unpacking [####################################] 100% The platform \(aqtimsp430\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Install \fIplatform_timsp430\fP with \fBuploader\fP utility only and skip default packages .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio install timsp430 \-\-skip\-default\-package \-\-with\-package=uploader Installing tool\-mspdebug package: Downloading [####################################] 100% Unpacking [####################################] 100% The platform \(aqtimsp430\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .SS Library Manager .sp To print all available commands and options use: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib \-\-help $ platformio lib COMMAND \-\-help .ft P .fi .UNINDENT .UNINDENT .SS platformio lib install .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib install\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib install [OPTIONS] [LIBRARY_ID] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Install new library by specified \fI\%PlatformIO Library Registry ID\fP\&. .SS Options .INDENT 0.0 .TP .B \-v, \-\-version .UNINDENT .sp Install specified version of library .SS Examples .INDENT 0.0 .IP 1. 3 Install the latest version of library .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # IRremote: http://platformio.org/#!/lib/show/4/IRremote $ platformio lib install 4 # Installing library [ 4 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #4 \(aqIRremote\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Install specified version of library .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # XBee: http://platformio.org/#!/lib/show/6/XBee $ platformio lib install 6 \-\-version=0.5 # Installing library [ 6 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #6 \(aqXBee\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Install library with dependencies .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # Adafruit\-ST7735: http://platformio.org/#!/lib/show/12/Adafruit\-ST7735 $ platformio lib install 12 # Installing library [ 12 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #12 \(aqAdafruit\-ST7735\(aq has been successfully installed! # Installing dependencies: # Installing library [ 13 ]: # Downloading [####################################] 100% # Unpacking [####################################] 100% # The library #13 \(aqAdafruit\-GFX\(aq has been successfully installed! .ft P .fi .UNINDENT .UNINDENT .SS platformio lib list .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib list\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .INDENT 2.0 .IP \(bu 2 \fI\%Options\fP .UNINDENT .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib list [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp List installed libraries .SS Options .INDENT 0.0 .TP .B \-\-json\-output .UNINDENT .sp Return the output in \fI\%JSON\fP format .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib list # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 12 ] Adafruit\-ST7735 arduino, atmelavr "Adafruit Industries": A library for the Adafruit 1.8" SPI display # [ 31 ] Adafruit\-Unified\-Sensor arduino, atmelavr "Adafruit Industries": Adafruit Unified Sensor Driver # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # [ 6 ] XBee arduino, atmelavr "Andrew Rapp": Arduino library for communicating with XBees in API mode # [ 13 ] Adafruit\-GFX arduino, atmelavr "Adafruit Industries": A core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.) # [ 4 ] IRremote arduino, atmelavr "Ken Shirriff": Send and receive infrared signals with multiple protocols # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # ... .ft P .fi .UNINDENT .UNINDENT .SS platformio lib register .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib register\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib register [HTTP_URL_TO_LIBRARY.JSON] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Register new library and allow others to install it. .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib register http://my.example.com/library.json .ft P .fi .UNINDENT .UNINDENT .SS platformio lib search .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib search\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib search [OPTIONS] [QUERY] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Search for library in \fI\%PlatformIO Library Registry\fP by \fIlibrary_config\fP fields in the boolean mode. .sp The boolean search capability supports the following operators: .TS center; |l|l|. _ T{ Operator T} T{ Description T} _ T{ \fB+\fP T} T{ A leading or trailing plus sign indicates that this word must be present in library fields (see above) that is returned. T} _ T{ \fB\-\fP T} T{ A leading or trailing minus sign indicates that this word must not be present in any of the libraries that are returned. T} _ T{ \fB(no operator)\fP T} T{ By default (when neither \fB+\fP nor \fB\-\fP is specified), the word is optional, but the libraries that contain it are rated higher. T} _ T{ \fB> <\fP T} T{ These two operators are used to change a word\(aqs contribution to the relevance value that is assigned to a library. The \fB>\fP operator increases the contribution and the \fB<\fP operator decreases it. T} _ T{ \fB( )\fP T} T{ Parentheses group words into subexpressions. Parenthesized groups can be nested. T} _ T{ \fB~\fP T} T{ A leading tilde acts as a negation operator, causing the word\(aqs contribution to the library\(aqs relevance to be negative. This is useful for marking "noise" words. A library containing such a word is rated lower than others, but is not excluded altogether, as it would be with the \fB\-\fP operator. T} _ T{ \fB*\fP T} T{ The asterisk serves as the truncation (or wildcard) operator. Unlike the other operators, it is appended to the word to be affected. Words match if they begin with the word preceding the \fB*\fP operator. T} _ T{ \fB"\fP T} T{ A phrase that is enclosed within double quote (\fB"\fP) characters matches only libraries that contain the phrase literally, as it was typed. T} _ .TE .sp For more detail information please go to \fI\%MySQL Boolean Full\-Text Searches\fP\&. .SS Options .INDENT 0.0 .TP .B \-a, \-\-author .UNINDENT .sp Filter libraries by specified author .INDENT 0.0 .TP .B \-k, \-\-keyword .UNINDENT .sp Filter libraries by specified keyword .INDENT 0.0 .TP .B \-f, \-\-framework .UNINDENT .sp Filter libraries by specified framework .INDENT 0.0 .TP .B \-p, \-\-platform .UNINDENT .sp Filter libraries by specified keyword .SS Examples .INDENT 0.0 .IP 1. 3 List all libraries .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # [ 13 ] Adafruit\-GFX arduino, atmelavr "Adafruit Industries": A core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.) # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # [ 12 ] Adafruit\-ST7735 arduino, atmelavr "Adafruit Industries": A library for the Adafruit 1.8" SPI display # [ 31 ] Adafruit\-Unified\-Sensor arduino, atmelavr "Adafruit Industries": Adafruit Unified Sensor Driver # [ 4 ] IRremote arduino, atmelavr "Ken Shirriff": Send and receive infrared signals with multiple protocols # [ 1 ] OneWire arduino, atmelavr "Paul Stoffregen": Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) # [ 6 ] XBee arduino, atmelavr "Andrew Rapp": Arduino library for communicating with XBees in API mode # [ 15 ] Adafruit\-ADXL345\-Unified arduino, atmelavr "Adafruit Industries": Unified driver for the ADXL345 Accelerometer # Show next libraries? [y/N]: # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Search for \fI\%1\-Wire libraries\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "1\-wire" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 1 ] OneWire arduino, atmelavr "Paul Stoffregen": Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Search for \fI\%Arduino\-based "I2C" libraries\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "i2c" \-\-framework="arduino" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 11 ] I2Cdevlib\-Core arduino, atmelavr "Jeff Rowberg": The I2C Device Library (I2Cdevlib) is a collection of uniform and well\-documented classes to provide simple and intuitive interfaces to I2C devices. # [ 24 ] Adafruit\-L3GD20 arduino, atmelavr "Adafruit Industries": Driver for Adafruit\(aqs L3GD20 I2C Gyroscope Breakout # [ 10 ] I2Cdevlib\-AK8975 arduino, atmelavr "Jeff Rowberg": AK8975 is 3\-axis electronic compass IC with high sensitive Hall sensor technology # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 4. 3 Search for \fI\%libraries by "web" and "http" keywords\fP\&. .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search \-\-keyword="web" \-\-keyword="http" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 5 ] Webduino arduino, atmelavr "Ben Combee": An extensible web server library (for use with the Arduino WizNet Ethernet Shield) # [ 17 ] Adafruit\-CC3000 arduino, atmelavr "Adafruit Industries": Library code for Adafruit\(aqs CC3000 Wi\-Fi/WiFi breakouts # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 5. 3 Search for \fI\%libraries by "Adafruit Industries" author\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search \-\-author="Adafruit Industries" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # [ 13 ] Adafruit\-GFX arduino, atmelavr "Adafruit Industries": A core graphics library for all our displays, providing a common set of graphics primitives (points, lines, circles, etc.) # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 6. 3 Search for \fI\%libraries which are compatible with Dallas temperature sensors\fP like DS18B20, DS18S20 and etc. .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "DS*" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 1 ] OneWire arduino, atmelavr "Paul Stoffregen": Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) # ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 7. 3 Search for \fI\%Energia\-based *nRF24* or *HttpClient* libraries\fP\&. The search query that is described below can be interpreted like \fBenergia nRF24 OR energia HttpClient\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "+(nRF24 HttpClient)" \-\-framework="energia" # Found 2 libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 46 ] HttpClient energia, timsp430, titiva "Zack Lalanne": HttpClient is a library to make it easier to interact with web servers # [ 43 ] nRF24 energia, timsp430 "Eric": The nRF24L01 is a low\-cost 2.4GHz ISM transceiver module. It supports a number of channel frequencies in the 2.4GHz band and a range of data rates. .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 8. 3 Search for the \fI\%all sensor libraries excluding temperature\fP\&. .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib search "sensor \-temperature" # Found N libraries: # # [ ID ] Name Compatibility "Authors": Description # \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- # [ 31 ] Adafruit\-Unified\-Sensor arduino, atmelavr "Adafruit Industries": Adafruit Unified Sensor Driver # [ 10 ] I2Cdevlib\-AK8975 arduino, atmelavr "Jeff Rowberg": AK8975 is 3\-axis electronic compass IC with high sensitive Hall sensor technology # [ 14 ] Adafruit\-9DOF\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the Adafruit 9DOF Breakout (L3GD20 / LSM303) # [ 23 ] Adafruit\-L3GD20\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for the L3GD20 Gyroscope # [ 26 ] Adafruit\-LSM303DLHC\-Unified arduino, atmelavr "Adafruit Industries": Unified sensor driver for Adafruit\(aqs LSM303 Breakout (Accelerometer + Magnetometer) # [ 33 ] Adafruit\-TMP006 arduino, atmelavr "Adafruit Industries": A library for the Adafruit TMP006 Infrared Thermopile Sensor # [ 34 ] Adafruit\-TSL2561\-Unified arduino, atmelavr "Adafruit Industries": Unified light sensor driver for Adafruit\(aqs TSL2561 breakouts # [ 97 ] I2Cdevlib\-BMA150 arduino, atmelavr "Jeff Rowberg": The BMA150 is a triaxial, low\-g acceleration sensor IC with digital output for consumer market applications # [ 106 ] I2Cdevlib\-MPR121 arduino, atmelavr "Jeff Rowberg": The MPR121 is a 12\-bit proximity capacitive touch sensor # [ 111 ] I2Cdevlib\-AK8975 energia, timsp430 "Jeff Rowberg": AK8975 is 3\-axis electronic compass IC with high sensitive Hall sensor technology # Show next libraries? [y/N]: .ft P .fi .UNINDENT .UNINDENT .SS platformio lib show .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib show\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib show ID .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Show details about the installed library .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # OneWire: http://platformio.org/#!/lib/show/1/OneWire $ platformio lib show 1 # OneWire # \-\-\-\-\-\-\- # Authors: Paul Stoffregen <paul@pjrc.com> http://www.pjrc.com/teensy/td_libs_OneWire.html (maintainer), Jim Studt, Jason Dangel <dangel.jason@gmail.com>, Derek Yerger, Tom Pollard <pollard@alum.mit.edu>, Robin James # Keywords: onewire, 1\-wire, bus, sensor, temperature, ibutton # Frameworks: arduino # Platforms: atmelavr # Version: 2.2 # # Control devices (from Dallas Semiconductor) that use the One Wire protocol (DS18S20, DS18B20, DS2408 and etc) .ft P .fi .UNINDENT .UNINDENT .SS platformio lib uninstall .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib uninstall\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib uninstall ID .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Uninstall specified library .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # XBee: http://platformio.org/#!/lib/show/6/XBee $ platformio lib uninstall 6 # The library #6 \(aqXBee\(aq has been successfully uninstalled! .ft P .fi .UNINDENT .UNINDENT .SS platformio lib update .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio lib update\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio lib update .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Check or update installed libraries .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio lib update # Updating [ 23 ] Adafruit\-L3GD20\-Unified library: # Versions: Current=63de2eb9ea, Latest=63de2eb9ea [Up\-to\-date] # Updating [ 12 ] Adafruit\-ST7735 library: # Versions: Current=e880eb1687, Latest=e880eb1687 [Up\-to\-date] # Updating [ 31 ] Adafruit\-Unified\-Sensor library: # Versions: Current=88ae805bce, Latest=88ae805bce [Up\-to\-date] # Updating [ 26 ] Adafruit\-LSM303DLHC\-Unified library: # Versions: Current=59767208a8, Latest=59767208a8 [Up\-to\-date] # Updating [ 13 ] Adafruit\-GFX library: # Versions: Current=a9e5bc4707, Latest=a9e5bc4707 [Up\-to\-date] # Updating [ 1 ] OneWire library: # Versions: Current=2.2, Latest=2.2 [Up\-to\-date] # Updating [ 4 ] IRremote library: # Versions: Current=f2dafe5030, Latest=f2dafe5030 [Up\-to\-date] # Updating [ 14 ] Adafruit\-9DOF\-Unified library: # Versions: Current=b2f07242ac, Latest=b2f07242ac [Up\-to\-date] .ft P .fi .UNINDENT .UNINDENT .SS platformio list .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio list\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .INDENT 2.0 .IP \(bu 2 \fI\%Options\fP .UNINDENT .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio list [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp List installed \fIPlatforms\fP .SS Options .INDENT 0.0 .TP .B \-\-json\-output .UNINDENT .sp Return the output in \fI\%JSON\fP format .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio list atmelavr with packages: toolchain\-atmelavr, tool\-avrdude, framework\-arduinoavr, tool\-micronucleus atmelsam with packages: framework\-arduinosam, ldscripts, toolchain\-gccarmnoneeabi, tool\-bossac freescalekinetis with packages: framework\-mbed, toolchain\-gccarmnoneeabi nordicnrf51 with packages: framework\-mbed, toolchain\-gccarmnoneeabi nxplpc with packages: framework\-mbed, toolchain\-gccarmnoneeabi ststm32 with packages: framework\-libopencm3, toolchain\-gccarmnoneeabi, tool\-stlink, framework\-spl, framework\-cmsis, framework\-mbed, ldscripts teensy with packages: toolchain\-atmelavr, ldscripts, framework\-arduinoteensy, toolchain\-gccarmnoneeabi, tool\-teensy timsp430 with packages: toolchain\-timsp430, tool\-mspdebug, framework\-energiamsp430, framework\-arduinomsp430 titiva with packages: ldscripts, framework\-libopencm3, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-energiativa .ft P .fi .UNINDENT .UNINDENT .SS platformio run .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio run\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio run [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Process environments which are defined in \fIprojectconf\fP file .SS Options .INDENT 0.0 .TP .B \-e, \-\-environment .UNINDENT .sp Process specified environments .INDENT 0.0 .TP .B \-t, \-\-target .UNINDENT .sp Process specified targets .INDENT 0.0 .TP .B \-\-upload\-port .UNINDENT .sp Upload port of embedded board. To print all available ports use \fIcmd_serialports\fP command .SS Examples .INDENT 0.0 .IP 1. 3 Process \fI\%Wiring Blink Example\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio run Processing arduino_pro5v environment: scons: \(ga.pioenvs/arduino_pro5v/firmware.elf\(aq is up to date. scons: \(ga.pioenvs/arduino_pro5v/firmware.hex\(aq is up to date. Processing launchpad_msp430g2 environment: scons: \(ga.pioenvs/launchpad_msp430g2/firmware.elf\(aq is up to date. scons: \(ga.pioenvs/launchpad_msp430g2/firmware.hex\(aq is up to date. Processing launchpad_lm4f120 environment: scons: \(ga.pioenvs/launchpad_lm4f120/firmware.elf\(aq is up to date. scons: \(ga.pioenvs/launchpad_lm4f120/firmware.hex\(aq is up to date .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Process specific environment .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio run \-e arduino_pro5v \-e launchpad_lm4f120 Processing arduino_pro5v environment: scons: \(ga.pioenvs/arduino_pro5v/firmware.elf\(aq is up to date. scons: \(ga.pioenvs/arduino_pro5v/firmware.hex\(aq is up to date. Processing launchpad_lm4f120 environment: scons: \(ga.pioenvs/launchpad_lm4f120/firmware.elf\(aq is up to date. scons: \(ga.pioenvs/launchpad_lm4f120/firmware.hex\(aq is up to date. .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Process specific target .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio run \-t clean Processing arduino_pro5v environment: Removed .pioenvs/arduino_pro5v/src/main.o \&... Removed .pioenvs/arduino_pro5v/firmware.hex Processing launchpad_msp430g2 environment: Removed .pioenvs/launchpad_msp430g2/src/main.o \&... Removed .pioenvs/launchpad_msp430g2/firmware.hex Processing launchpad_lm4f120 environment: Removed .pioenvs/launchpad_lm4f120/src/main.o \&... Removed .pioenvs/launchpad_lm4f120/firmware.hex .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 4. 3 Mix environments and targets .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio run \-e launchpad_msp430g2 \-t upload Processing launchpad_msp430g2 environment: /Users/ikravets/.platformio/timsp430/tools/mspdebug/mspdebug rf2500 \-\-force\-reset "prog .pioenvs/launchpad_msp430g2/firmware.hex" MSPDebug version 0.20 \- debugging tool for MSP430 MCUs Copyright (C) 2009\-2012 Daniel Beer <dlbeer@gmail.com> This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Trying to open interface 1 on 009 Initializing FET... FET protocol version is 30394216 Configured for Spy\-Bi\-Wire Sending reset... Set Vcc: 3000 mV Device ID: 0x2553 Code start address: 0xc000 Code size : 16384 byte = 16 kb RAM start address: 0x200 RAM end address: 0x3ff RAM size : 512 byte = 0 kb Device: MSP430G2553/G2403 Code memory starts at 0xc000 Number of breakpoints: 2 Chip ID data: 25 53 Erasing... Programming... Writing 646 bytes at c000... Writing 32 bytes at ffe0... Done, 678 bytes total .ft P .fi .UNINDENT .UNINDENT .SS platformio search .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio search\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .INDENT 2.0 .IP \(bu 2 \fI\%Options\fP .UNINDENT .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio search QUERY [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Search for development \fIPlatforms\fP .SS Options .INDENT 0.0 .TP .B \-\-json\-output .UNINDENT .sp Return the output in \fI\%JSON\fP format .SS Examples .INDENT 0.0 .IP 1. 3 Print all available development platforms .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio search atmelavr (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\- Atmel AVR 8\- and 32\-bit MCUs deliver a unique combination of performance... atmelsam (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\- Atmel | SMART offers Flash\- based ARM products based on the ... freescalekinetis (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Freescale Kinetis Microcontrollers is family of multiple hardware\- and ... nordicnrf51 (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\-\-\-\- The Nordic nRF51 Series is a family of highly flexible, multi\-protocol ... nxplpc (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\- The NXP LPC is a family of 32\-bit microcontroller integrated circuits ... ststm32 (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\- The STM32 family of 32\-bit Flash MCUs based on the ARM Cortex\-M ... teensy (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\- Teensy is a complete USB\-based microcontroller development syste ... timsp430 (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\- MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are ... titiva (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\- Texas Instruments TM4C12x MCUs offer the industrys most popular ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Search for TI development platforms .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio search ti timsp430 (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\- MSP430 microcontrollers (MCUs) from Texas Instruments (TI) are ... titiva (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\- Texas Instruments TM4C12x MCUs offer the industrys most popular ... .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 3. 3 Search for development platforms which support "mbed Framework" .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio search mbed freescalekinetis (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- Freescale Kinetis Microcontrollers is family of multiple hardware\- and ... nordicnrf51 (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\-\-\-\-\- The Nordic nRF51 Series is a family of highly flexible, multi\-protocol ... nxplpc (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\- The NXP LPC is a family of 32\-bit microcontroller integrated circuits ... ststm32 (available packages: ldscripts, toolchain\-gccarmnoneeabi, tool\-lm4flash, framework\-opencm3, framework\-energiativa) \-\-\-\-\-\-\- The STM32 family of 32\-bit Flash MCUs based on the ARM Cortex\-M ... .ft P .fi .UNINDENT .UNINDENT .SS platformio serialports .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio serialports\fP .INDENT 2.0 .IP \(bu 2 \fI\%platformio serialports list\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .IP \(bu 2 \fI\%platformio serialports monitor\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Options\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .UNINDENT .SS platformio serialports list .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio serialports list [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp List available \fI\%Serial Ports\fP .SS Options .INDENT 0.0 .TP .B \-\-json\-output .UNINDENT .sp Return the output in \fI\%JSON\fP format .SS Examples .INDENT 0.0 .IP 1. 3 Unix OS .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio serialports list /dev/cu.SLAB_USBtoUART \-\-\-\-\-\-\-\-\-\- Hardware ID: USB VID:PID=10c4:ea60 SNR=0001 Description: CP2102 USB to UART Bridge Controller /dev/cu.uart\-1CFF4676258F4543 \-\-\-\-\-\-\-\-\-\- Hardware ID: USB VID:PID=451:f432 SNR=1CFF4676258F4543 Description: Texas Instruments MSP\-FET430UIF .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Windows OS .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio serialports list COM4 \-\-\-\-\-\-\-\-\-\- Hardware ID: USB VID:PID=0451:F432 Description: MSP430 Application UART (COM4) COM3 \-\-\-\-\-\-\-\-\-\- Hardware ID: USB VID:PID=10C4:EA60 SNR=0001 Description: Silicon Labs CP210x USB to UART Bridge (COM3) .ft P .fi .UNINDENT .UNINDENT .SS platformio serialports monitor .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio serialports monitor [OPTIONS] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp This is a console application that provides a small terminal application. It is based on \fI\%Miniterm\fP and itself does not implement any terminal features such as \fIVT102\fP compatibility. However it inherits these features from the terminal it is run. For example on GNU/Linux running from an \fIxterm\fP it will support the escape sequences of the \fIxterm\fP\&. On \fIWindows\fP the typical console window is dumb and does not support any escapes. When \fIANSI.sys\fP is loaded it supports some escapes. .sp To control \fImonitor\fP please use these "hot keys": .INDENT 0.0 .IP \(bu 2 \fBCtrl+]\fP Quit .IP \(bu 2 \fBCtrl+T\fP Menu .IP \(bu 2 \fBCtrl+T followed by Ctrl+H\fP Help .UNINDENT .SS Options .INDENT 0.0 .TP .B \-p, \-\-port .UNINDENT .sp Port, a number or a device name .INDENT 0.0 .TP .B \-b, \-\-baud .UNINDENT .sp Set baud rate, default \fB9600\fP .INDENT 0.0 .TP .B \-\-parity .UNINDENT .sp Set parity (\fINone, Even, Odd, Space, Mark\fP), one of [\fBN\fP, \fBE\fP, \fBO\fP, \fBS\fP, \fBM\fP], default \fBN\fP .INDENT 0.0 .TP .B \-\-rtscts .UNINDENT .sp Enable \fBRTS/CTS\fP flow control, default \fBOff\fP .INDENT 0.0 .TP .B \-\-xonxoff .UNINDENT .sp Enable software flow control, default \fBOff\fP .INDENT 0.0 .TP .B \-\-rts .UNINDENT .sp Set initial \fBRTS\fP line state, default \fB0\fP .INDENT 0.0 .TP .B \-\-dtr .UNINDENT .sp Set initial \fBDTR\fP line state, default \fB0\fP .INDENT 0.0 .TP .B \-\-echo .UNINDENT .sp Enable local echo, default \fBOff\fP .INDENT 0.0 .TP .B \-\-cr .UNINDENT .sp Do not send \fBCR+LF\fP, send \fBR\fP only, default \fBOff\fP .INDENT 0.0 .TP .B \-\-lf .UNINDENT .sp Do not send \fBCR+LF\fP, send \fBLF\fP only, default \fBOff\fP .INDENT 0.0 .TP .B \-d, \-\-debug .UNINDENT .sp Debug received data (escape non\-printable chars). \fB\-\-debug\fP can be given multiple times: .INDENT 0.0 .IP 0. 4 just print what is received .IP 1. 4 escape non\-printable characters, do newlines as unusual .IP 2. 4 escape non\-printable characters, newlines too .IP 3. 4 hex dump everything .UNINDENT .INDENT 0.0 .TP .B \-\-exit\-char .UNINDENT .sp ASCII code of special character that is used to exit the application, default \fB0x1d\fP .INDENT 0.0 .TP .B \-\-menu\-char .UNINDENT .sp ASCII code of special character that is used to control miniterm (menu), default \fB0x14\fP .INDENT 0.0 .TP .B \-\-\-quiet .UNINDENT .sp Diagnostics: suppress non\-error messages, default \fBOff\fP .SS Examples .INDENT 0.0 .IP 1. 3 Show available options for \fImonitor\fP .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio serialports monitor \-\-help Usage: platformio serialports monitor [OPTIONS] Options: \-p, \-\-port TEXT Port, a number or a device name \-b, \-\-baud INTEGER Set baud rate, default=9600 \-\-parity [N|E|O|S|M] Set parity, default=N \-\-rtscts Enable RTS/CTS flow control, default=Off \-\-xonxoff Enable software flow control, default=Off \-\-rts [0|1] Set initial RTS line state, default=0 \-\-dtr [0|1] Set initial DTR line state, default=0 \-\-echo Enable local echo, default=Off \-\-cr Do not send CR+LF, send CR only, default=Off \-\-lf Do not send CR+LF, send LF only, default=Off \-d, \-\-debug Debug received data (escape non\-printable chars) \-\-debug can be given multiple times: 0: just print what is received 1: escape non\-printable characters, do newlines as unusual 2: escape non\-printable characters, newlines too 3: hex dump everything \-\-exit\-char INTEGER ASCII code of special character that is used to exit the application, default=0x1d \-\-menu\-char INTEGER ASCII code of special character that is used to control miniterm (menu), default=0x14 \-\-quiet Diagnostics: suppress non\-error messages, default=Off \-\-help Show this message and exit. .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Communicate with serial device and print help inside terminal .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio serialports monitor \-\-\- Available ports: \-\-\- /dev/cu.Bluetooth\-Incoming\-Port n/a \-\-\- /dev/cu.Bluetooth\-Modem n/a \-\-\- /dev/cu.SLAB_USBtoUART CP2102 USB to UART Bridge Controller \-\-\- /dev/cu.obd2ecu\-SPPDev n/a Enter port name:/dev/cu.SLAB_USBtoUART \-\-\- Miniterm on /dev/cu.SLAB_USBtoUART: 9600,8,N,1 \-\-\- \-\-\- Quit: Ctrl+] | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H \-\-\- Hello PlatformIO! \-\-\- pySerial (2.7) \- miniterm \- help \-\-\- \-\-\- Ctrl+] Exit program \-\-\- Ctrl+T Menu escape key, followed by: \-\-\- Menu keys: \-\-\- Ctrl+T Send the menu character itself to remote \-\-\- Ctrl+] Send the exit character itself to remote \-\-\- Ctrl+I Show info \-\-\- Ctrl+U Upload file (prompt will be shown) \-\-\- Toggles: \-\-\- Ctrl+R RTS Ctrl+E local echo \-\-\- Ctrl+D DTR Ctrl+B BREAK \-\-\- Ctrl+L line feed Ctrl+A Cycle repr mode \-\-\- \-\-\- Port settings (Ctrl+T followed by the following): \-\-\- p change port \-\-\- 7 8 set data bits \-\-\- n e o s m change parity (None, Even, Odd, Space, Mark) \-\-\- 1 2 3 set stop bits (1, 2, 1.5) \-\-\- b change baud rate \-\-\- x X disable/enable software flow control \-\-\- r R disable/enable hardware flow control \-\-\- exit \-\-\- .ft P .fi .UNINDENT .UNINDENT .SS platformio settings .sp Manage PlatformIO settings .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio settings\fP .INDENT 2.0 .IP \(bu 2 \fI\%platformio settings get\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Settings\fP .INDENT 2.0 .IP \(bu 2 \fI\%auto_update_libraries\fP .IP \(bu 2 \fI\%auto_update_platforms\fP .IP \(bu 2 \fI\%check_libraries_interval\fP .IP \(bu 2 \fI\%check_platformio_interval\fP .IP \(bu 2 \fI\%check_platforms_interval\fP .IP \(bu 2 \fI\%enable_prompts\fP .IP \(bu 2 \fI\%enable_telemetry\fP .UNINDENT .IP \(bu 2 \fI\%Examples\fP .UNINDENT .IP \(bu 2 \fI\%platformio settings set\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .IP \(bu 2 \fI\%platformio settings reset\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .UNINDENT .SS platformio settings get .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio settings get [NAME] .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Get/List existing settings .SS Settings .SS \fBauto_update_libraries\fP .INDENT 0.0 .TP .B Default Yes .TP .B Values Yes/No .UNINDENT .sp Automatically update libraries. .SS \fBauto_update_platforms\fP .INDENT 0.0 .TP .B Default Yes .TP .B Values Yes/No .UNINDENT .sp Automatically update platforms. .SS \fBcheck_libraries_interval\fP .INDENT 0.0 .TP .B Default 7 .TP .B Values Days (Number) .UNINDENT .sp Check for the library updates interval. .SS \fBcheck_platformio_interval\fP .INDENT 0.0 .TP .B Default 3 .TP .B Values Days (Number) .UNINDENT .sp Check for the new PlatformIO interval. .SS \fBcheck_platforms_interval\fP .INDENT 0.0 .TP .B Default 7 .TP .B Values Days (Number) .UNINDENT .sp Check for the platform updates interval. .SS \fBenable_prompts\fP .INDENT 0.0 .TP .B Default Yes .TP .B Values Yes/No .UNINDENT .sp Can PlatformIO communicate with you via prompts? .INDENT 0.0 .IP \(bu 2 propose to install platforms which aren\(aqt installed yet .IP \(bu 2 paginate over library search results .IP \(bu 2 and etc. .UNINDENT .sp \fBWARNING:\fP .INDENT 0.0 .INDENT 3.5 If you are going to run \fIPlatformIO\fP from \fBsubprocess\fP, you \fBMUST DISABLE\fP all prompts. It will allow you to avoid blocking. .UNINDENT .UNINDENT .SS \fBenable_telemetry\fP .INDENT 0.0 .TP .B Default Yes .TP .B Values Yes/No .UNINDENT .sp Shares commands, platforms and libraries usage to help us make PlatformIO better. .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 .INDENT 0.0 .IP \(bu 2 The \fBYes\fP value is equl to: \fBTrue\fP, \fBY\fP, \fB1\fP\&. The value is not case sensetive. .IP \(bu 2 You can override these settings using \fIenvvars\fP\&. .UNINDENT .UNINDENT .UNINDENT .SS Examples .INDENT 0.0 .IP 1. 3 List all settings and theirs current values .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio settings get Name Value [Default] Description \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- auto_update_libraries Yes Automatically update libraries (Yes/No) auto_update_platforms Yes Automatically update platforms (Yes/No) check_libraries_interval 7 Check for the library updates interval (days) check_platformio_interval 3 Check for the new PlatformIO interval (days) check_platforms_interval 7 Check for the platform updates interval (days) enable_prompts Yes Can PlatformIO communicate with you via prompts: propose to install platforms which aren\(aqt installed yet, paginate over library search results and etc.)? ATTENTION!!! If you call PlatformIO like subprocess, please disable prompts to avoid blocking (Yes/No) enable_telemetry Yes Shares commands, platforms and libraries usage to help us make PlatformIO better (Yes/No) .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Show specified setting .UNINDENT .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio settings get auto_update_platforms Name Value [Default] Description \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- auto_update_platforms Yes Automatically update platforms (Yes/No) .ft P .fi .UNINDENT .UNINDENT .SS platformio settings set .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio settings set NAME VALUE .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Set new value for the setting .SS Examples .sp Change to check for the new PlatformIO each day .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio settings set check_platformio_interval 1 The new value for the setting has been set! Name Value [Default] Description \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- check_platformio_interval 1 [3] Check for the new PlatformIO interval (days) .ft P .fi .UNINDENT .UNINDENT .SS platformio settings reset .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio settings reset .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Reset settings to default .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio settings reset The settings have been reseted! Name Value [Default] Description \-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\- auto_update_libraries Yes Automatically update libraries (Yes/No) auto_update_platforms Yes Automatically update platforms (Yes/No) check_libraries_interval 7 Check for the library updates interval (days) check_platformio_interval 3 Check for the new PlatformIO interval (days) check_platforms_interval 7 Check for the platform updates interval (days) .ft P .fi .UNINDENT .UNINDENT .SS platformio show .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio show\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio show PLATFORM .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Show details about the installed \fIPlatforms\fP .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio show atmelavr atmelavr \- An embedded platform for Atmel AVR microcontrollers (with Arduino Framework) \-\-\-\-\-\-\-\-\-\- Package: toolchain\-atmelavr Alias: toolchain Version: 1 Installed: 2014\-12\-13 23:58:48 \-\-\-\-\-\-\-\-\-\- Package: tool\-avrdude Version: 2 Installed: 2015\-02\-13 22:23:17 \-\-\-\-\-\-\-\-\-\- Package: framework\-arduinoavr Version: 12 Installed: 2015\-02\-23 20:57:40 \-\-\-\-\-\-\-\-\-\- Package: tool\-micronucleus Version: 1 Installed: 2015\-02\-23 21:20:14 .ft P .fi .UNINDENT .UNINDENT .SS platformio uninstall .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio uninstall\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio uninstall PLATFORM .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Uninstall specified \fIPlatforms\fP .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio uninstall timsp430 Uninstalling toolchain\-timsp430 package: [OK] Uninstalling tool\-mspdebug package: [OK] Uninstalling framework\-energiamsp430 package: [OK] The platform \(aqtimsp430\(aq has been successfully uninstalled! .ft P .fi .UNINDENT .UNINDENT .SS platformio update .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio update\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio update .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Check or update installed \fIPlatforms\fP .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio update Platform atmelavr \-\-\-\-\-\-\-\- Updating toolchain\-atmelavr package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating tool\-avrdude package: Versions: Current=2, Latest=2 [Up\-to\-date] Updating framework\-arduinoavr package: Versions: Current=12, Latest=12 [Up\-to\-date] Updating tool\-micronucleus package: Versions: Current=1, Latest=1 [Up\-to\-date] Platform atmelsam \-\-\-\-\-\-\-\- Updating framework\-arduinosam package: Versions: Current=3, Latest=3 [Up\-to\-date] Updating ldscripts package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating toolchain\-gccarmnoneeabi package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating tool\-bossac package: Versions: Current=1, Latest=1 [Up\-to\-date] Platform stm32 \-\-\-\-\-\-\-\- Updating toolchain\-gccarmnoneeabi package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating tool\-stlink package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating framework\-spl package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating framework\-cmsis package: Versions: Current=2, Latest=2 [Up\-to\-date] Updating framework\-opencm3 package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating ldscripts package: Versions: Current=1, Latest=1 [Up\-to\-date] Platform teensy \-\-\-\-\-\-\-\- Updating toolchain\-atmelavr package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating ldscripts package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating framework\-arduinoteensy package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating toolchain\-gccarmnoneeabi package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating tool\-teensy package: Versions: Current=1, Latest=1 [Up\-to\-date] Platform timsp430 \-\-\-\-\-\-\-\- Updating toolchain\-timsp430 package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating tool\-mspdebug package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating framework\-energiamsp430 package: Versions: Current=2, Latest=2 [Up\-to\-date] Platform titiva \-\-\-\-\-\-\-\- Updating ldscripts package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating toolchain\-gccarmnoneeabi package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating tool\-lm4flash package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating framework\-opencm3 package: Versions: Current=1, Latest=1 [Up\-to\-date] Updating framework\-energiativa package: Versions: Current=4, Latest=4 [Up\-to\-date] .ft P .fi .UNINDENT .UNINDENT .SS platformio upgrade .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%platformio upgrade\fP .INDENT 2.0 .IP \(bu 2 \fI\%Usage\fP .IP \(bu 2 \fI\%Description\fP .IP \(bu 2 \fI\%Examples\fP .UNINDENT .UNINDENT .SS Usage .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C platformio upgrade .ft P .fi .UNINDENT .UNINDENT .SS Description .sp Check or upgrade PlatformIO to the latest version .SS Examples .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ platformio upgrade You\(aqre up\-to\-date! PlatformIO x.x.x is currently the newest version available. # If you have problem with permissions try: $ sudo platformio upgrade .ft P .fi .UNINDENT .UNINDENT .SS IDE Integration .SS Arduino .sp The open\-source \fI\%Arduino Software (IDE)\fP makes it easy to write code and upload it to the board. It runs on \fIWindows, Mac OS X, and Linux\fP\&. The environment is written in \fIJava\fP and based on \fIProcessing\fP and other open\-source software. .sp This software can be used with: .INDENT 0.0 .IP \(bu 2 \fIplatform_atmelavr\fP .IP \(bu 2 \fIplatform_atmelsam\fP .IP \(bu 2 \fIframework_arduino\fP .UNINDENT .sp Refer to the \fI\%Arduino Getting Started\fP page for Installation instructions. .SS Integration .sp More detailed information is located in PlatformIO blog: \fI\%Integration of PlatformIO library manager to Arduino IDE\fP\&. .SS Screenshot \fI\%\fP.SS Eclipse .sp The \fI\%Eclipse CDT (C/C++ Development Tooling)\fP Project provides a fully functional C and C++ Integrated Development Environment based on the Eclipse platform. Features include: support for project creation and managed build for various toolchains, standard make build, source navigation, various source knowledge tools, such as type hierarchy, call graph, include browser, macro definition browser, code editor with syntax highlighting, folding and hyperlink navigation, source code refactoring and code generation, visual debugging tools, including memory, registers, and disassembly viewers. .sp This software can be used with: .INDENT 0.0 .IP \(bu 2 all availalbe \fIplatforms\fP .IP \(bu 2 all availalbe \fIframeworks\fP .UNINDENT .sp Refer to the \fI\%CDT Documentation\fP page for more detailed information. .SS Integration .sp More detailed information is located in PlatformIO blog: \fI\%Building and debugging Atmel AVR (Arduino\-based) project using Eclipse IDE+PlatformIO\fP\&. .sp \fI\%More examples (TI MSP430, TI TIVA, etc.)\fP .SS Screenshot \fI\%\fP.SS Energia .sp The open\-source \fI\%Energia Software (IDE)\fP makes it easy to write code and upload it to the board. It runs on \fIWindows, Mac OS X, and Linux\fP\&. The environment is written in \fIJava\fP and based on \fIProcessing\fP and other open\-source software. .sp This software can be used with: .INDENT 0.0 .IP \(bu 2 \fIplatform_timsp430\fP .IP \(bu 2 \fIplatform_titiva\fP .IP \(bu 2 \fIframework_energia\fP .UNINDENT .sp Refer to the \fI\%Energia Getting Started\fP page for Installation instructions. .SS Integration .sp More detailed information is located in PlatformIO blog: \fI\%Integration of PlatformIO library manager to Energia IDE\fP\&. .SS Screenshot \fI\%\fP.SS Sublime Text .sp The \fI\%Sublime Text\fP is a cross\-platform text and source code editor, with a Python application programming interface (API). Sublime Text is proprietary software. Its functionality is extendable with plugins. Most of the extending packages have free\-software licenses and are community\-built and maintained. Sublime Text lacks graphical setting dialogues and is entirely configured by editing text files. .sp This software can be used with: .INDENT 0.0 .IP \(bu 2 all availalbe \fIplatforms\fP .IP \(bu 2 all availalbe \fIframeworks\fP .UNINDENT .sp Refer to the \fI\%Sublime Text Documentation\fP page for more detailed information. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Sublime Text\fP .INDENT 2.0 .IP \(bu 2 \fI\%Integration\fP .INDENT 2.0 .IP \(bu 2 \fI\%Initial configuration\fP .INDENT 2.0 .IP \(bu 2 \fI\%Command Hotkeys\fP .UNINDENT .IP \(bu 2 \fI\%First program in Sublime Text\fP .UNINDENT .IP \(bu 2 \fI\%Conclusion\fP .UNINDENT .UNINDENT .SS Integration .SS Initial configuration .sp First of all, we need to create "New Build System" with name "PlatformIO" from \fBMenu: Tools → Build System → New Build System\fP and fill it like described below: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C { "cmd": ["platformio", "run"], "working_dir": "${project_path:${folder}}", "variants": [ { "name": "Clean", "cmd": ["platformio", "run", "\-t", "clean"] }, { "name": "Upload", "cmd": ["platformio", "run", "\-t", "upload"] } ] } .ft P .fi .UNINDENT .UNINDENT .sp Secondly, we need to select "PlatformIO" Build System from a list: [image] .sp After that, we can use the necessary commands from \fBMenu: Tools → Command Palette\fP or with \fBCtrl+Shift+P\fP (Windows/Linux) \fBCmd+Shift+P\fP (Mac) shortcut. [image] .SS Command Hotkeys .sp Sublime Text allows to bind own hotkey per command. Let\(aqs setup them for PlatformIO commands using shortcut \fBMenu: Preferences → Key\-Bindings \- User\fP: [image] .sp We are going to use these shortcuts: .INDENT 0.0 .IP \(bu 2 \fBF11\fP for clean project .IP \(bu 2 \fBF12\fP for upload firmware to target device .UNINDENT .sp In this case, the final code will look like: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C [ { "keys": ["f11"], "command": "build", "args": {"variant": "Clean"} }, { "keys": ["f12"], "command": "build", "args": {"variant": "Upload"} } ] .ft P .fi .UNINDENT .UNINDENT .SS First program in Sublime Text .sp Simple "Blink" project will consist from two files: .sp 1. Main "C" source file named \fBmain.c\fP must be located in the \fBsrc\fP directory. Let\(aqs create new file named \fBmain.c\fP using \fBMenu: File → New File\fP or shortcut \fBCtrl+N\fP (Windows/Linux) \fBCmd+N\fP (Mac) with the next contents: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C #include "Arduino.h" #define WLED 13 // Most Arduino boards already have an LED attached to pin 13 on the board itself void setup() { pinMode(WLED, OUTPUT); // set pin as output } void loop() { digitalWrite(WLED, HIGH); // set the LED on delay(1000); // wait for a second digitalWrite(WLED, LOW); // set the LED off delay(1000); // wait for a second } .ft P .fi .UNINDENT .UNINDENT .sp 2. Project Configuration File named \fBplatformio.ini\fP must be located in the project root directory. Copy the source code which is described below to it. .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # # Project Configuration File # # A detailed documentation with the EXAMPLES is located here: # http://docs.platformio.org/en/latest/projectconf.html # # A sign \(ga#\(ga at the beginning of the line indicates a comment # Comment lines are ignored. [env:arduino_uno] platform = atmelavr framework = arduino board = uno .ft P .fi .UNINDENT .UNINDENT .SS Conclusion .sp Taking everything into account, we can open project directory in Sublime Text using \fBMenu: File → Open Folder\fP and build it with shortcut \fBCtrl+B\fP (Windows/Linux) or \fBCmd+B\fP (Mac), clean project with shortcut \fBF11\fP and upload firmware to target with shortcut \fBF12\fP\&. [image] .SS VIM .sp \fI\%VIM\fP is an open\-source, powerful and configurable text editor. Vim is designed for use both from a command\-line interface and as a standalone application in a graphical user interface. .sp This software can be used with: .INDENT 0.0 .IP \(bu 2 all availalbe \fIplatforms\fP .IP \(bu 2 all availalbe \fIframeworks\fP .UNINDENT .SS Integration .sp Recommended bundles: .INDENT 0.0 .IP \(bu 2 Syntax highlight \- \fI\%Arduino\-syntax\-file\fP .IP \(bu 2 Code Completion \- \fI\%YouCompleteMe\fP (see configuration example by \fBAnthony Ford\fP \fI\%PlatformIO/YouCompleteMe Integration\fP) .IP \(bu 2 Syntax checking \- \fI\%Syntastic\fP .UNINDENT .sp Put to the project directory \fBMakefile\fP wrapper with contents: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # Uncomment lines below if you have problems with $PATH #SHELL := /bin/bash #PATH := /usr/local/bin:$(PATH) all: platformio run \-t upload clean: platformio run \-t clean .ft P .fi .UNINDENT .UNINDENT .sp Now, in VIM \fBcd /path/to/this/project\fP and press \fBCtrl+B\fP or \fBCmd+B\fP (Mac). \fIPlatformIO\fP should compile your source code from the \fBsrc\fP directory, make firmware and upload it. .SS Screenshot [image] .SS Visual Studio .sp The \fI\%Microsoft Visual Studio (Free)\fP is an integrated development environment (IDE) from Microsoft. Visual Studio includes a code editor supporting IntelliSense (the code completion component) as well as code refactoring. .sp This software can be used with: .INDENT 0.0 .IP \(bu 2 all availalbe \fIplatforms\fP .IP \(bu 2 all availalbe \fIframeworks\fP .UNINDENT .sp Refer to the \fI\%Visual Studio Documentation\fP page for more detailed information. .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Visual Studio\fP .INDENT 2.0 .IP \(bu 2 \fI\%Integration\fP .INDENT 2.0 .IP \(bu 2 \fI\%Setup New Project\fP .IP \(bu 2 \fI\%First program in Visual Studio\fP .UNINDENT .IP \(bu 2 \fI\%Conclusion\fP .UNINDENT .UNINDENT .SS Integration .SS Setup New Project .sp First of all, let\(aqs create new project from Visual Studio Start Page: \fBStart → New Project\fP or using \fBMenu: File → New → Project\fP, then select project with \fBMakefile\fP type (\fBVisual C++ → General → Makefile Project\fP), fill \fBProject name\fP, \fBSolution name\fP, \fBLocation\fP fields and press OK button. [image] .sp Secondly, we need to configure project with PlatformIO source code builder: [image] .sp If we want to use native AVR programming, we have to specify additional preprocessor symbol ("Preprocessor definitions" field) about your MCU. For example, an Arduino Uno is based on the ATmega328 MCU. In this case We will add new definition \fB__AVR_ATmega328__\fP\&. [image] .sp Release Configuration is the same as Debug, so on the next step we check "Same as Debug Configuration" and click "Finish" button. [image] .sp Thirdly, we need to add directories with header files using project properties (right click on the project name or \fBAlt\-Enter\fP shortcut) and add two directories to \fBConfiguration Properties → NMake → Include Search Path\fP: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $(HOMEDRIVE)$(HOMEPATH)\e.platformio\epackages\etoolchain\-atmelavr\eavr\einclude $(HOMEDRIVE)$(HOMEPATH)\e.platformio\epackages\eframework\-arduinoavr\ecores\earduino .ft P .fi .UNINDENT .UNINDENT [image] .SS First program in Visual Studio .sp Simple "Blink" project will consist from two files: .sp 1. Main "C" source file named \fBmain.c\fP must be located in the \fBsrc\fP directory. Let\(aqs create new file named \fBmain.c\fP using \fBMenu: File → New File\fP or shortcut \fBCtrl+N\fP: [image] .sp Copy the source code which is described below to file \fBmain.c\fP\&. .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C #include "Arduino.h" #define WLED 13 // Most Arduino boards already have an LED attached to pin 13 on the board itself void setup() { pinMode(WLED, OUTPUT); // set pin as output } void loop() { digitalWrite(WLED, HIGH); // set the LED on delay(1000); // wait for a second digitalWrite(WLED, LOW); // set the LED off delay(1000); // wait for a second } .ft P .fi .UNINDENT .UNINDENT .INDENT 0.0 .IP 2. 3 Project Configuration File named \fBplatformio.ini\fP must be located in the project root directory. .UNINDENT [image] .sp Copy the source code which is described below to it. .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C # # Project Configuration File # # A detailed documentation with the EXAMPLES is located here: # http://docs.platformio.org/en/latest/projectconf.html # # A sign \(ga#\(ga at the beginning of the line indicates a comment # Comment lines are ignored. [env:arduino_uno] platform = atmelavr framework = arduino board = uno .ft P .fi .UNINDENT .UNINDENT .SS Conclusion .sp Taking everything into account, we can build project with shortcut \fBCtrl+Shift+B\fP or using \fBMenu: Build → Build Solution\fP: [image] .SS Articles about us .sp \fBNOTE:\fP .INDENT 0.0 .INDENT 3.5 If you\(aqve writeen article about PlatformIO and would like it listed on this page, \fI\%please edit this page\fP\&. .UNINDENT .UNINDENT .sp Here are recent articles about PlatformIO: .INDENT 0.0 .IP \(bu 2 March 23, 2015 \- \fBAtmel\fP \- \fI\%Cross\-board and cross\-vendor embedded development with PlatformIO\fP .IP \(bu 2 March 22, 2015 \- \fBMark VandeWettering\fP \- \fI\%Discovered a new tool for embedded development: PlatformIO\fP .IP \(bu 2 October 7, 2014 \- \fBIvan Kravets\fP \- \fI\%Integration of PlatformIO library manager to Arduino and Energia IDEs\fP .IP \(bu 2 June 20, 2014 \- \fBIvan Kravets\fP \- \fI\%Building and debugging Atmel AVR (Arduino\-based) project using Eclipse IDE+PlatformIO\fP .IP \(bu 2 June 17, 2014 \- \fBIvan Kravets\fP \- \fI\%How was PlatformIO born or why I love Python World\fP .UNINDENT .SS Frequently Asked Questions .SS Contents .INDENT 0.0 .IP \(bu 2 \fI\%Frequently Asked Questions\fP .INDENT 2.0 .IP \(bu 2 \fI\%General\fP .INDENT 2.0 .IP \(bu 2 \fI\%What is PlatformIO?\fP .IP \(bu 2 \fI\%How does it work?\fP .UNINDENT .IP \(bu 2 \fI\%Troubleshooting\fP .INDENT 2.0 .IP \(bu 2 \fI\%PlatformIO blocks command execution using user prompt\fP .IP \(bu 2 \fI\%Windows: UnicodeDecodeError: \(aqascii\(aq codec can\(aqt decode byte\fP .IP \(bu 2 \fI\%Serial does not work with panStampAVR board\fP .IP \(bu 2 \fI\%An error pkg_resources.DistributionNotFound\fP .UNINDENT .UNINDENT .UNINDENT .SS General .SS What is PlatformIO? .sp \fI\%PlatformIO\fP is a cross\-platform code builder and the missing library manager. .sp PlatformIO is independent from the platform, in which it is running. In fact, the only requirement is Python, which exists pretty much everywhere. What this means is that PlatformIO projects can be easily moved from one computer to another, as well as that PlatformIO allows for the easy sharing of projects between team members, regardless of operating system they prefer to work with. Beyond that, PlatformIO can be run not only on commonly used desktops/laptops but also on the servers without X Window System. While PlatformIO itself is a console application, it can be used in combination with one\(aqs favorite \fIide\fP or text editor such as \fIide_arduino\fP, \fIide_eclipse\fP, \fIide_visualstudio\fP, \fIide_vim\fP, \fIide_sublimetext\fP, etc. .sp Alright, so PlatformIO can run on different operating systems. But more importantly, from development perspective at least, is a list of supported boards and MCUs. To keep things short: PlatformIO supports over 100 \fIEmbedded Boards\fP and all major \fIDevelopment Platforms\fP\&. .sp PlatformIO allows users to: .INDENT 0.0 .IP \(bu 2 Decide which operation system they want to run development process on. You can even use one OS at home and another at work. .IP \(bu 2 Choose which editor to use for writing the code. It can be pretty simple editor or powerful favorite \fIide\fP\&. .IP \(bu 2 Focus on the code development, significantly simplifying support for the \fIplatforms\fP and MCUs. .UNINDENT .SS How does it work? .sp Without going too deep into PlatformIO implementation details, work cycle of the project developed using PlatformIO is as follows: .INDENT 0.0 .IP \(bu 2 Users choose board(s) interested in \fIprojectconf\fP .IP \(bu 2 Based on this list of boards, PlatformIO downloads required toolchains and installs them automatically. .IP \(bu 2 Users develop code and PlatformIO makes sure that it is compiled, prepared and uploaded to all the boards of interest. .UNINDENT .SS Troubleshooting .SS PlatformIO blocks command execution using user prompt .sp If you are going to run \fIPlatformIO\fP from \fBsubprocess\fP, you \fBMUST DISABLE\fP all prompts. It will allow you to avoid blocking. There are a few options: .INDENT 0.0 .IP \(bu 2 using environment variable \fIPLATFORMIO_SETTING_ENABLE_PROMPTS=No\fP .IP \(bu 2 disable global setting \fBenable_prompts\fP via \fIcmd_settings\fP command .IP \(bu 2 masking under Continuous Integration system via environment variable \fICI=true\fP\&. .UNINDENT .SS Windows: \fBUnicodeDecodeError: \(aqascii\(aq codec can\(aqt decode byte\fP .sp Answered in \fI\%issue #143\fP\&. .SS Serial does not work with panStampAVR board .sp Answered in \fI\%issue #144\fP\&. .SS An error \fBpkg_resources.DistributionNotFound\fP .sp Please upgrade \fISetupTools\fP package: .INDENT 0.0 .INDENT 3.5 .sp .nf .ft C $ [sudo] pip uninstall setuptools $ [sudo] pip install setuptools # Then re\-install PlatformIO $ [sudo] pip uninstall platformio $ [sudo] pip install platformio .ft P .fi .UNINDENT .UNINDENT .SS Release History .SS 1.4.0 (2015\-??\-??) .INDENT 0.0 .IP \(bu 2 Integrated PlatformIO with AppVeyor Windows based Continuous Integration system (\fI\%issue #149\fP) .IP \(bu 2 Added support for new Arduino based boards by \fISparkFun, BQ, LightUp, LowPowerLab, RedBearLab, TinyCircuits, WickedDevice\fP to \fI\%atmelavr\fP platform .UNINDENT .SS 1.3.0 (2015\-03\-27) .INDENT 0.0 .IP \(bu 2 Moved PlatformIO source code and repositories from \fI\%Ivan Kravets\fP account to \fI\%PlatformIO Organisation\fP (\fI\%issue #138\fP) .IP \(bu 2 Added support for new Arduino based boards by \fISparkFun, RepRap, Sanguino\fP to \fI\%atmelavr\fP platform (\fI\%issue #127\fP, \fI\%issue #131\fP) .IP \(bu 2 Added integration instructions for \fI\%Visual Studio\fP and \fI\%Sublime Text\fP IDEs .IP \(bu 2 Improved handling of multi\-file \fB*.ino/pde\fP sketches (\fI\%issue #130\fP) .IP \(bu 2 Fixed wrong insertion of function prototypes converting \fB*.ino/pde\fP (\fI\%issue #137\fP, \fI\%issue #140\fP) .UNINDENT .SS 1.2.0 (2015\-03\-20) .INDENT 0.0 .IP \(bu 2 Added full support of \fI\%mbed\fP framework including libraries: \fIRTOS, Ethernet, DSP, FAT, USB\fP\&. .IP \(bu 2 Added \fI\%freescalekinetis\fP development platform with Freescale Kinetis Freedom boards .IP \(bu 2 Added \fI\%nordicnrf51\fP development platform with supported boards from \fIJKSoft, Nordic, RedBearLab, Switch Science\fP .IP \(bu 2 Added \fI\%nxplpc\fP development platform with supported boards from \fICQ Publishing, Embedded Artists, NGX Technologies, NXP, Outrageous Circuits, SeeedStudio, Solder Splash Labs, Switch Science, u\-blox\fP .IP \(bu 2 Added support for \fIST Nucleo\fP boards to \fI\%ststm32\fP development platform .IP \(bu 2 Created new \fI\%Frameworks\fP page in documentation and added to \fI\%PlatformIO Web Site\fP (\fI\%issue #115\fP) .IP \(bu 2 Introduced online \fI\%Embedded Boards Explorer\fP .IP \(bu 2 Automatically append define \fB\-DPLATFORMIO=%version%\fP to builder (\fI\%issue #105\fP) .IP \(bu 2 Renamed \fBstm32\fP development platform to \fI\%ststm32\fP .IP \(bu 2 Renamed \fBopencm3\fP framework to \fI\%libopencm3\fP .IP \(bu 2 Fixed uploading for \fI\%atmelsam\fP development platform .IP \(bu 2 Fixed re\-arranging the \fB*.ino/pde\fP files when converting to \fB*.cpp\fP (\fI\%issue #100\fP) .UNINDENT .SS 1.1.0 (2015\-03\-05) .INDENT 0.0 .IP \(bu 2 Implemented \fBPLATFORMIO_*\fP environment variables (\fI\%issue #102\fP) .IP \(bu 2 Added support for \fISainSmart\fP boards to \fI\%atmelsam\fP development platform .IP \(bu 2 Added \fI\%Project Configuration\fP option named \fI\%envs_dir\fP .IP \(bu 2 Disabled "prompts" automatically for \fIContinuous Integration\fP systems (\fI\%issue #103\fP) .IP \(bu 2 Fixed firmware uploading for \fI\%atmelavr\fP boards which work within \fBusbtiny\fP protocol .IP \(bu 2 Fixed uploading for \fIDigispark\fP board (\fI\%issue #106\fP) .UNINDENT .SS 1.0.1 (2015\-02\-27) .sp \fBPlatformIO 1.0 \- recommended for production\fP .INDENT 0.0 .IP \(bu 2 Changed development status from \fBbeta\fP to \fBProduction/Stable\fP .IP \(bu 2 Added support for \fIARM\fP\-based credit\-card sized computers: \fI\%Raspberry Pi\fP, \fI\%BeagleBone\fP and \fI\%CubieBoard\fP .IP \(bu 2 Added \fI\%atmelsam\fP development platform with supported boards: \fIArduino Due and Digistump DigiX\fP (\fI\%issue #71\fP) .IP \(bu 2 Added \fI\%ststm32\fP development platform with supported boards: \fIDiscovery kit for STM32L151/152, STM32F303xx, STM32F407/417 lines\fP and \fI\%libOpenCM3 Framework\fP (\fI\%issue #73\fP) .IP \(bu 2 Added \fI\%teensy\fP development platform with supported boards: \fITeensy 2.x & 3.x\fP (\fI\%issue #72\fP) .IP \(bu 2 Added new \fIArduino\fP boards to \fI\%atmelavr\fP platform: \fIArduino NG, Arduino BT, Arduino Esplora, Arduino Ethernet, Arduino Robot Control, Arduino Robot Motor and Arduino Yun\fP .IP \(bu 2 Added support for \fIAdafruit\fP boards to \fI\%atmelavr\fP platform: \fIAdafruit Flora and Adafruit Trinkets\fP (\fI\%issue #65\fP) .IP \(bu 2 Added support for \fIDigispark\fP boards to \fI\%atmelavr\fP platform: \fIDigispark USB Development Board and Digispark Pro\fP (\fI\%issue #47\fP) .IP \(bu 2 Covered code with tests (\fI\%issue #2\fP) .IP \(bu 2 Refactored \fILibrary Dependency Finder\fP (issues \fI\%#48\fP, \fI\%#50\fP, \fI\%#55\fP) .IP \(bu 2 Added \fI\%src_dir\fP option to \fB[platformio]\fP section of \fI\%platformio.ini\fP which allows to redefine location to project\(aqs source directory (\fI\%issue #83\fP) .IP \(bu 2 Added \fB\-\-json\-output\fP option to \fI\%platformio boards\fP and \fI\%platformio search\fP commands which allows to return the output in \fI\%JSON\fP format (\fI\%issue #42\fP) .IP \(bu 2 Allowed to ignore some libs from \fILibrary Dependency Finder\fP via \fI\%ignore_libs\fP option .IP \(bu 2 Improved \fI\%platformio run\fP command: asynchronous output for build process, timing and detailed information about environment configuration (\fI\%issue #74\fP) .IP \(bu 2 Output compiled size and static memory usage with \fI\%platformio run\fP command (\fI\%issue #59\fP) .IP \(bu 2 Updated \fIframework\-arduino\fP AVR & SAM to 1.6 stable version .IP \(bu 2 Fixed an issue with the libraries that are git repositories (\fI\%issue #49\fP) .IP \(bu 2 Fixed handling of assembly files (\fI\%issue #58\fP) .IP \(bu 2 Fixed compiling error if space is in user\(aqs folder (\fI\%issue #56\fP) .IP \(bu 2 Fixed \fIAttributeError: \(aqmodule\(aq object has no attribute \(aqdisable_warnings\(aq\fP when a version of \fIrequests\fP package is less then 2.4.0 .IP \(bu 2 Fixed bug with invalid process\(aqs "return code" when PlatformIO has internal error (\fI\%issue #81\fP) .IP \(bu 2 Several bug fixes, increased stability and performance improvements .UNINDENT .SS 0.10.2 (2015\-01\-06) .INDENT 0.0 .IP \(bu 2 Fixed an issue with \fB\-\-json\-output\fP (\fI\%issue #42\fP) .IP \(bu 2 Fixed an exception during \fI\%platformio upgrade\fP under Windows OS (\fI\%issue #45\fP) .UNINDENT .SS 0.10.1 (2015\-01\-02) .INDENT 0.0 .IP \(bu 2 Added \fB\-\-json\-output\fP option to \fI\%platformio list\fP, \fI\%platformio serialports list\fP and \fI\%platformio lib list\fP commands which allows to return the output in \fI\%JSON\fP format (\fI\%issue #42\fP) .IP \(bu 2 Fixed missing auto\-uploading by default after \fI\%platformio init\fP command .UNINDENT .SS 0.10.0 (2015\-01\-01) .sp \fBHappy New Year!\fP .INDENT 0.0 .IP \(bu 2 Implemented \fI\%platformio boards\fP command (\fI\%issue #11\fP) .IP \(bu 2 Added support of \fIEngduino\fP boards for \fI\%atmelavr\fP platform (\fI\%issue #38\fP) .IP \(bu 2 Added \fB\-\-board\fP option to \fI\%platformio init\fP command which allows to initialise project with the specified embedded boards (\fI\%issue #21\fP) .IP \(bu 2 Added \fI\%example with uploading firmware\fP via USB programmer (USBasp) for \fI\%atmelavr\fP \fIMCUs\fP (\fI\%issue #35\fP) .IP \(bu 2 Automatic detection of port on \fI\%platformio serialports monitor\fP (\fI\%issue #37\fP) .IP \(bu 2 Allowed auto\-installation of platforms when prompts are disabled (\fI\%issue #43\fP) .IP \(bu 2 Fixed urllib3\(aqs \fISSL\fP warning under Python <= 2.7.2 (\fI\%issue #39\fP) .IP \(bu 2 Fixed bug with \fIArduino USB\fP boards (\fI\%issue #40\fP) .UNINDENT .SS 0.9.2 (2014\-12\-10) .INDENT 0.0 .IP \(bu 2 Replaced "dark blue" by "cyan" colour for the texts (\fI\%issue #33\fP) .IP \(bu 2 Added new setting \fI\%enable_prompts\fP and allowed to disable all \fIPlatformIO\fP prompts (useful for cloud compilers) (\fI\%issue #34\fP) .IP \(bu 2 Fixed compilation bug on \fIWindows\fP with installed \fIMSVC\fP (\fI\%issue #18\fP) .UNINDENT .SS 0.9.1 (2014\-12\-05) .INDENT 0.0 .IP \(bu 2 Ask user to install platform (when it hasn\(aqt been installed yet) within \fI\%platformio run\fP and \fI\%platformio show\fP commands .IP \(bu 2 Improved main \fI\%documentation\fP .IP \(bu 2 Fixed "\fIOSError: [Errno 2] No such file or directory\fP" within \fI\%platformio run\fP command when PlatformIO isn\(aqt installed properly .IP \(bu 2 Fixed example for \fI\%Eclipse IDE with Tiva board\fP (\fI\%issue #32\fP) .IP \(bu 2 Upgraded \fI\%Eclipse Project Examples\fP to latest \fILuna\fP and \fIPlatformIO\fP releases .UNINDENT .SS 0.9.0 (2014\-12\-01) .INDENT 0.0 .IP \(bu 2 Implemented \fI\%platformio settings\fP command .IP \(bu 2 Improved \fI\%platformio init\fP command. Added new option \fB\-\-project\-dir\fP where you can specify another path to directory where new project will be initialized (\fI\%issue #31\fP) .IP \(bu 2 Added \fIMigration Manager\fP which simplifies process with upgrading to a major release .IP \(bu 2 Added \fITelemetry Service\fP which should help us make \fIPlatformIO\fP better .IP \(bu 2 Implemented \fIPlatformIO AppState Manager\fP which allow to have multiple \fB\&.platformio\fP states. .IP \(bu 2 Refactored \fIPackage Manager\fP .IP \(bu 2 Download Manager: fixed SHA1 verification within \fICygwin Environment\fP (\fI\%issue #26\fP) .IP \(bu 2 Fixed bug with code builder and built\-in Arduino libraries (\fI\%issue #28\fP) .UNINDENT .SS 0.8.0 (2014\-10\-19) .INDENT 0.0 .IP \(bu 2 Avoided trademark issues in \fI\%library.json\fP with the new fields: \fI\%frameworks\fP, \fI\%platforms\fP and \fI\%dependencies\fP (\fI\%issue #17\fP) .IP \(bu 2 Switched logic from "Library Name" to "Library Registry ID" for all \fI\%platformio lib\fP commands (install, uninstall, update and etc.) .IP \(bu 2 Renamed \fBauthor\fP field to \fI\%authors\fP and allowed to setup multiple authors per library in \fI\%library.json\fP .IP \(bu 2 Added option to specify "maintainer" status in \fI\%authors\fP field .IP \(bu 2 New filters/options for \fI\%platformio lib search\fP command: \fB\-\-framework\fP and \fB\-\-platform\fP .UNINDENT .SS 0.7.1 (2014\-10\-06) .INDENT 0.0 .IP \(bu 2 Fixed bug with order for includes in conversation from INO/PDE to CPP .IP \(bu 2 Automatic detection of port on upload (\fI\%issue #15\fP) .IP \(bu 2 Fixed lib update crashing when no libs are installed (\fI\%issue #19\fP) .UNINDENT .SS 0.7.0 (2014\-09\-24) .INDENT 0.0 .IP \(bu 2 Implemented new \fI\%[platformio]\fP section for Configuration File with \fI\%home_dir\fP option (\fI\%issue #14\fP) .IP \(bu 2 Implemented \fILibrary Manager\fP (\fI\%issue #6\fP) .UNINDENT .SS 0.6.0 (2014\-08\-09) .INDENT 0.0 .IP \(bu 2 Implemented \fI\%platformio serialports monitor\fP (\fI\%issue #10\fP) .IP \(bu 2 Fixed an issue \fBImportError: No module named platformio.util\fP (\fI\%issue #9\fP) .IP \(bu 2 Fixed bug with auto\-conversation from Arduino *.ino to *.cpp .UNINDENT .SS 0.5.0 (2014\-08\-04) .INDENT 0.0 .IP \(bu 2 Improved nested lookups for libraries .IP \(bu 2 Disabled default warning flag "\-Wall" .IP \(bu 2 Added auto\-conversation from *.ino to valid *.cpp for Arduino/Energia frameworks (\fI\%issue #7\fP) .IP \(bu 2 Added \fI\%Arduino example\fP with external library (\fIAdafruit CC3000\fP) .IP \(bu 2 Implemented \fI\%platformio upgrade\fP command and "auto\-check" for the latest version (\fI\%issue #8\fP) .IP \(bu 2 Fixed an issue with "auto\-reset" for \fIRaspduino\fP board .IP \(bu 2 Fixed a bug with nested libs building .UNINDENT .SS 0.4.0 (2014\-07\-31) .INDENT 0.0 .IP \(bu 2 Implemented \fI\%platformio serialports\fP command .IP \(bu 2 Allowed to put special build flags only for \fBsrc\fP files via \fI\%srcbuild_flags\fP environment option .IP \(bu 2 Allowed to override some of settings via system environment variables such as: \fBPLATFORMIO_SRCBUILD_FLAGS\fP and \fBPLATFORMIO_ENVS_DIR\fP .IP \(bu 2 Added \fB\-\-upload\-port\fP option for \fI\%platformio run\fP command .IP \(bu 2 Implemented (especially for \fI\%SmartAnthill\fP) \fI\%platformio run \-t uploadlazy\fP target (no dependencies to framework libs, ELF and etc.) .IP \(bu 2 Allowed to skip default packages via \fI\%platformio install \-\-skip\-default\-package\fP option .IP \(bu 2 Added tools for \fIRaspberry Pi\fP platform .IP \(bu 2 Added support for \fIMicroduino\fP and \fIRaspduino\fP boards in \fI\%atmelavr\fP platform .UNINDENT .SS 0.3.1 (2014\-06\-21) .INDENT 0.0 .IP \(bu 2 Fixed auto\-installer for Windows OS (bug with %PATH% customisations) .UNINDENT .SS 0.3.0 (2014\-06\-21) .INDENT 0.0 .IP \(bu 2 Allowed to pass multiple "SomePlatform" to install/uninstall commands .IP \(bu 2 Added "IDE Integration" section to README with Eclipse project examples .IP \(bu 2 Created auto installer script for \fIPlatformIO\fP (\fI\%issue #3\fP) .IP \(bu 2 Added "Super\-Quick" way to Installation section (README) .IP \(bu 2 Implemented "build_flags" option for environments (\fI\%issue #4\fP) .UNINDENT .SS 0.2.0 (2014\-06\-15) .INDENT 0.0 .IP \(bu 2 Resolved \fI\%issue #1 "Build referred libraries"\fP .IP \(bu 2 Renamed project\(aqs "libs" directory to "lib" .IP \(bu 2 Added \fI\%arduino\-internal\-library\fP example .IP \(bu 2 Changed to beta status .UNINDENT .SS 0.1.0 (2014\-06\-13) .INDENT 0.0 .IP \(bu 2 Birth! First alpha release .UNINDENT .SH AUTHOR Ivan Kravets .SH COPYRIGHT 2014-2015, Ivan Kravets .\" Generated by docutils manpage writer. .
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor