doc: Add new section about using Zephyr with PlatformIO

This adds a description of PlatformIO ecosystem, tutorials, examples

Signed-off-by: Valerii Koval <valeros08@gmail.com>
This commit is contained in:
Valerii Koval 2020-04-13 16:11:05 +03:00 committed by Carles Cufí
commit 27ce35b0d4
4 changed files with 92 additions and 0 deletions

View file

@ -32,3 +32,4 @@ User and Developer Guides
west/index west/index
optimizations/index optimizations/index
zephyr_cmake_package.rst zephyr_cmake_package.rst
platformio/index.rst

Binary file not shown.

After

Width:  |  Height:  |  Size: 486 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 244 KiB

View file

@ -0,0 +1,91 @@
.. _platformio:
Using with PlatformIO
#####################
.. image:: img/platformio-logo.png
:target: https://platformio.org/?utm_source=docs.zephyrproject.org
.. contents::
:local:
What is PlatformIO?
*******************
`PlatformIO <https://platformio.org/?utm_source=docs.zephyrproject.org>`__
is a cross-platform, cross-architecture, multiple framework, professional
tool for embedded systems engineers and for software developers who write
applications for embedded products. It is fully compatible with the Zephyr
project.
- Open source, maximum permissive Apache 2.0 license
- Cross-platform IDE and Unified Debugger
- Static Code Analyzer and Remote Unit Testing
- Multi-platform and Multi-architecture Build System
- Firmware File Explorer and Memory Inspection.
.. image:: img/platformio-ide-vscode.png
:target: https://platformio.org/platformio-ide?utm_source=docs.zephyrproject.org
PlatformIOs unique philosophy in the embedded market provides developers with
a modern integrated development environment (`Cloud & Desktop IDE <https://docs.platformio.org/en/latest/integration/ide/index.html?utm_source=docs.zephyrproject.org#ide>`_)
that works cross-platform, supports many different software development kits
(SDKs) or `Frameworks <https://docs.platformio.org/en/latest/frameworks/index.html?utm_source=docs.zephyrproject.org#frameworks>`_,
and includes sophisticated debugging (`PIO Unified Debugger <https://docs.platformio.org/en/latest/plus/debugging.html?utm_source=docs.zephyrproject.org>`_),
unit testing (`PIO Unit Testing <https://docs.platformio.org/en/latest/plus/unit-testing.html?utm_source=docs.zephyrproject.org>`_),
automated code analysis (`PIO Check <https://docs.platformio.org/en/latest/plus/pio-check.html?utm_source=docs.zephyrproject.org>`_),
firmware inspection, and remote management (`PIO Remote <https://docs.platformio.org/en/latest/plus/pio-remote.html?utm_source=docs.zephyrproject.org>`_).
It is architected to maximize flexibility and choice by developers, who can use
either graphical or command line editors (`PlatformIO Core (CLI) <https://docs.platformio.org/en/latest/core/index.html?utm_source=docs.zephyrproject.org#piocore>`__),
or both. PlatformIO is a must-have tool for professional embedded systems
engineers who develop solutions on more than one specific platform. In addition,
by having a decentralized architecture, PlatformIO offers both new and existing
developers a quick integration path for developing commercial-ready products,
and reduces the overall time-to-market.
And it runs on any one of your favorite modern operating systems (macOS, MS Windows,
Linux, FreeBSD).
Installation
************
.. tip::
In our experience, PlatformIO IDE is the best way to start exploring the PlatformIO ecosystem.
* `PlatformIO IDE <https://platformio.org/platformio-ide?utm_source=docs.zephyrproject.org>`_
is a new generation toolset for embedded C/C++ development
* `PlatformIO Core (CLI) <https://docs.platformio.org/en/latest/core/index.html?utm_source=docs.zephyrproject.org>`_
is a unique, developed-from-scratch build system that removes the usual pain of
software integration, packaging, and library dependencies that developers encounter
when they move beyond the bounds of a specific SDK or example embedded application.
It can be used with a variety of code development environments and allows easy
integration with numerous cloud platforms and web services feeds.
Configuration
*************
Please go through `the official PlatformIO configuration guide for Zephyr project <https://docs.platformio.org/en/latest/frameworks/zephyr.html#configuration>`_.
Tutorials
*********
- `Zephyr and Nordic nRF52-DK: debugging, unit testing, project analysis
<https://docs.platformio.org/en/latest/tutorials/nordicnrf52/zephyr_debugging_unit_testing_inspect.html?utm_source=docs.zephyrproject.org>`_
- `Developing Zephyr RTOS embedded applications on PlatformIO and simulating on Antmicro Renode
<https://www.zephyrproject.org/developing-zephyr-rtos-embedded-applications-on-platformio-and-simulating-on-antmicro-renode/>`_
Project Examples
****************
Please check `the official examples for various development platforms <https://docs.platformio.org/en/latest/frameworks/zephyr.html?utm_source=docs.zephyrproject.org#examples>`_
Next Steps
**********
Here are some useful links for exploring the PlatformIO ecosystem:
- Try `other platforms <https://docs.platformio.org/en/latest/frameworks/zephyr.html?utm_source=docs.zephyrproject.org#platforms>`_
that support Zephyr project
- Learn more about `integrations with other IDEs/Text Editors <https://docs.platformio.org/en/latest/integration/ide/index.html?utm_source=docs.zephyrproject.org>`_
- Get help from `awesome PlatformIO community <https://community.platformio.org/?utm_source=docs.zephyrproject.org>`_