platformio-core travis-ci python

An open source ecosystem for IoT development :alien: Cross-platform build system, unified debugger and library manager. Continuous and IDE integration. Arduino, ESP8266 and ARM mbed compatible.

PlatformIO

.. image:: https://travis-ci.org/platformio/platformio-core.svg?branch=develop :target: https://travis-ci.org/platformio/platformio-core :alt: Travis.CI Build Status .. image:: https://ci.appveyor.com/api/projects/status/unnpw0n3c5k14btn/branch/develop?svg=true :target: https://ci.appveyor.com/project/ivankravets/platformio-core :alt: AppVeyor.CI Build Status .. image:: https://requires.io/github/platformio/platformio-core/requirements.svg?branch=develop :target: https://requires.io/github/platformio/platformio-core/requirements/?branch=develop :alt: Requirements Status .. image:: https://img.shields.io/pypi/v/platformio.svg :target: https://pypi.python.org/pypi/platformio/ :alt: Latest Version .. image:: https://img.shields.io/pypi/l/platformio.svg :target: https://pypi.python.org/pypi/platformio/ :alt: License .. image:: https://img.shields.io/PlatformIO/Community.png :alt: Community Forums :target: https://community.platformio.org .. image:: https://img.shields.io/PlatformIO/Plus.png?color=orange :alt: PlatformIO Plus: Professional solutions for an awesome open source PlatformIO ecosystem :target: https://pioplus.com

Quick Links: Home Page <http://platformio.org> | PlatformIO Plus <https://pioplus.com> | PlatformIO IDE <http://platformio.org/platformio-ide> | Project Examples <https://github.com/platformio/platformio-examples/> | Docs <http://docs.platformio.org> | Donate <http://platformio.org/donate> | Contact Us <https://pioplus.com/contact.html>_

Social: Twitter <https://twitter.com/PlatformIO_Org> | Facebook <https://www.facebook.com/platformio> | Hackaday <https://hackaday.io/project/7980-platformio> | Bintray <https://bintray.com/platformio> | Community <https://community.platformio.org>_

.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-ide-laptop.png :target: http://platformio.org

PlatformIO <http://platformio.org>_ is an open source ecosystem for IoT development. Cross-platform build system, unified debugger and library manager. Continuous and IDE integration. Arduino, ESP8266 and ARM mbed compatible

  • PlatformIO IDE - The next-generation integrated development environment for IoT. C/C++ Intelligent Code Completion and Smart Code Linter for the super-fast coding. Multi-projects workflow with Multiple Panes. Themes Support with dark and light colors. Built-in Terminal with PlatformIO Core tool and support for the powerful Serial Port Monitor. All advanced instruments without leaving your favourite development environment.
  • Development Platforms - Embedded and Desktop development platforms with pre-built toolchains, debuggers, uploaders and frameworks which work under popular host OS: Mac, Windows, Linux (+ARM)
  • Embedded Boards - Rapid Embedded Programming, IDE and Continuous Integration in a few steps with PlatformIO thanks to built-in project generator for the most popular embedded boards and IDE
  • Library Manager - Hundreds Popular Libraries are organized into single Web 2.0 platform: list by categories, keywords, authors, compatible platforms and frameworks; learn via examples; be up-to-date with the latest version.

Atmel AVR & SAM, Espressif 8266 & 32, Freescale Kinetis, Intel ARC32, Lattice iCE40, Microchip PIC32, Nordic nRF51, NXP LPC, Silicon Labs EFM32, ST STM32, TI MSP430 & Tiva, Teensy, Arduino, mbed, libOpenCM3, etc.

  • PlatformIO Plus and professional solutions <https://pioplus.com>_
  • PlatformIO IDE <http://platformio.org/platformio-ide>_
  • Get Started <http://platformio.org/get-started>_
  • Library Search and Registry <http://platformio.org/lib>_
  • Development Platforms <http://platformio.org/platforms>_
  • Frameworks <http://platformio.org/frameworks>_
  • Embedded Boards Explorer <http://platformio.org/boards>_
  • Library Manager <http://docs.platformio.org/en/stable/librarymanager/index.html>_
  • User Guide <http://docs.platformio.org/en/stable/userguide/index.html>_
  • Continuous Integration <http://docs.platformio.org/en/stable/ci/index.html>_
  • IDE Integration <http://docs.platformio.org/en/stable/ide.html>_
  • Articles about us <http://docs.platformio.org/en/stable/articles.html>_
  • FAQ <http://docs.platformio.org/en/stable/faq.html>_
  • Release Notes <http://docs.platformio.org/en/stable/history.html>_

Use whenever. Run everywhere.

PlatformIO is written in pure Python and doesn't depend on any additional libraries/tools from an operating system. It allows you to use PlatformIO beginning from PC (Mac, Linux, Win) and ending with credit-card sized computers (Raspberry Pi <http://www.raspberrypi.org>, BeagleBone <http://beagleboard.org>, CubieBoard <http://cubieboard.org>_).

Embedded Development. Easier Than Ever.

PlatformIO is well suited for embedded development and has pre-configured settings for most popular Embedded Boards <http://platformio.org/boards>_.

  • Colourful command-line output <https://raw.githubusercontent.com/platformio/platformio/develop/examples/platformio-examples.png>_
  • IDE Integration <http://docs.platformio.org/en/stable/ide.html>_ with Cloud9, Codeanywhere, Eclipse Che, Atom, CLion, CodeBlocks, Eclipse, Emacs, NetBeans, Qt Creator, Sublime Text, Vim, Visual Studio
  • Cloud compiling and Continuous Integration <http://docs.platformio.org/en/stable/ci/index.html>_ with AppVeyor, Circle CI, Drone, Shippable, Travis CI
  • Built-in Serial Port Monitor <http://docs.platformio.org/en/stable/userguide/cmd_serialports.html#platformio-serialports-monitor> and configurable build -flags/-options <http://docs.platformio.org/en/stable/projectconf.html#build-flags>
  • Automatic firmware uploading
  • Pre-built tool chains, frameworks for the popular development platforms <http://platformio.org/platforms>_

.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-embedded-development.png :target: http://platformio.org :alt: PlatformIO Embedded Development Process

The Missing Library Manager. It's here!

PlatformIO Library Manager is the missing library manager for development platforms which allows you to organize and have up-to-date external libraries.

  • Friendly Command-Line Interface <http://docs.platformio.org/en/stable/librarymanager/index.html>_
  • Modern Web 2.0 Library Portal <http://platformio.org/lib>_
  • Open Source Library Registry API <https://github.com/platformio/platformio-api>_
  • Library Crawler based on library.json <http://docs.platformio.org/en/stable/librarymanager/config.html>_ specification
  • Project Dependency Manager with Semantic Versioning <http://docs.platformio.org/page/librarymanager/index.html>_ requirements

.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-library-manager.png :target: http://platformio.org :alt: PlatformIO Library Manager Architecture

Smart Build System. Fast and Reliable.

PlatformIO Code Builder is built-on a next-generation software construction tool named SCons <http://www.scons.org/>_. Think of SCons as an improved, cross-platform substitute for the classic Make utility.

  • Reliable, automatic dependency analysis
  • Reliable detection of build changes
  • Improved support for parallel builds
  • Ability to share built files in a cache
  • Lookup for external libraries which are installed via Library Manager <http://docs.platformio.org/en/stable/librarymanager/index.html>_

.. image:: https://raw.githubusercontent.com/platformio/platformio-web/develop/app/images/platformio-scons-builder.png :target: http://platformio.org :alt: PlatformIO Build System Architecture

Single source code. Multiple platforms.

PlatformIO allows the developer to compile the same code with different development platforms using only One Command platformio run <http://docs.platformio.org/en/stable/userguide/cmd_run.html>. This happens due to Project Configuration File (platformio.ini) <http://docs.platformio.org/en/stable/projectconf.html> where you can setup different environments with specific options (platform type, firmware uploading settings, pre-built framework, build flags and many more).

It has support for the most popular embedded platforms:

  • Atmel AVR <http://platformio.org/platforms/atmelavr>_
  • Atmel SAM <http://platformio.org/platforms/atmelsam>_
  • Espressif 32 <http://platformio.org/platforms/espressif32>_
  • Espressif 8266 <http://platformio.org/platforms/espressif8266>_
  • Freescale Kinetis <http://platformio.org/platforms/freescalekinetis>_
  • Intel ARC32 <http://platformio.org/platforms/intel_arc32>_
  • Lattice iCE40 <http://platformio.org/platforms/lattice_ice40>_
  • Microchip PIC32 <http://platformio.org/platforms/microchippic32>_
  • Nordic nRF51 <http://platformio.org/platforms/nordicnrf51>_
  • NXP LPC <http://platformio.org/platforms/nxplpc>_
  • ST STM32 <http://platformio.org/platforms/ststm32>_
  • Silicon Labs EFM32 <http://platformio.org/platforms/siliconlabsefm32>_
  • Teensy <http://platformio.org/platforms/teensy>_
  • TI MSP430 <http://platformio.org/platforms/timsp430>_
  • TI TivaVA C <http://platformio.org/platforms/titiva>_

Frameworks:

  • Arduino <http://platformio.org/frameworks/arduino>_
  • ARTIK SDK <http://platformio.org/frameworks/artik-sdk>_
  • CMSIS <http://platformio.org/frameworks/cmsis>_
  • Energia <http://platformio.org/frameworks/energia>_
  • ESP-IDF <http://platformio.org/frameworks/espidf>_
  • libOpenCM3 <http://platformio.org/frameworks/libopencm3>_
  • mbed <http://platformio.org/frameworks/mbed>_
  • Pumbaa <http://platformio.org/frameworks/pumbaa>_
  • Simba <http://platformio.org/frameworks/simba>_
  • SPL <http://platformio.org/frameworks/spl>_
  • WiringPi <http://platformio.org/frameworks/wiringpi>_

For further details, please refer to What is PlatformIO? <http://docs.platformio.org/en/stable/faq.html#what-is-platformio>_

Contributing

See contributing guidelines <https://github.com/platformio/platformio/blob/develop/CONTRIBUTING.md>_.

License

Copyright 2014-present PlatformIO [email protected]

The PlatformIO is licensed under the permissive Apache 2.0 license, so you can use it in both commercial and personal projects with confidence.

Related Repositories

Arduino

Arduino

ESP8266 core for Arduino ...

OakCore

OakCore

Arduino/Platformio Core for Oak including Particle library ...

MightyCore

MightyCore

An Arduino core for the ATmega1284, ATmega644, ATmega324, ATmega164, ATmega32, A ...

Arduino

Arduino

ESP8266 core for Arduino ...

vscode-platformio

vscode-platformio

PlatformIO for Visual Studio Code: Arduino, Espressif, Raspberry Pi, mbed and mo ...


Top Contributors

ivankravets valeros ZachMassia franciscoruiz mplewis jphollanti bkudria ctag dkuku floretan jrobeson Lutino PaulStoffregen TimJay twpayne WillemMali xoseperez dh1tw sticilface

Releases

-   v3.4.1 zip tar
-   v3.4.0 zip tar
-   v3.3.1 zip tar
-   v3.3.0 zip tar
-   v3.2.1 zip tar
-   v3.2.0 zip tar
-   v3.1.0 zip tar
-   v3.0.1 zip tar
-   v3.0.0 zip tar
-   v2.11.2 zip tar
-   v2.11.1 zip tar
-   v2.11.0 zip tar
-   v2.10.3 zip tar
-   v2.10.2 zip tar
-   v2.10.1 zip tar
-   v2.10.0 zip tar
-   v2.9.4 zip tar
-   v2.9.3 zip tar
-   v2.9.2 zip tar
-   v2.9.1 zip tar
-   v2.9.0 zip tar
-   v2.8.6 zip tar
-   v2.8.5 zip tar
-   v2.8.4 zip tar
-   v2.8.3 zip tar
-   v2.8.2 zip tar
-   v2.8.1 zip tar
-   v2.8.0 zip tar
-   v2.7.1 zip tar
-   v2.7.0 zip tar