Eclipse Che is an open-source Java based developer workspace server and cloud integrated development environment (IDE) which provides a remote development platform for multi-user purpose. The workspace server comes with a RESTful webservice and provides high flexibility. It also contains a SDK which can be used to create plug-ins for languages, frameworks or tools.
- Please make sure to read PIO Remote™ guide first.
- You need PIO Account if you don’t have it. Registration is FREE.
- You should have a running PIO Remote™ Agent on a remote machine where hardware devices are connected physically or accessible for the remote operations. See PIO Remote Quick Start for details.
- Sign in to Codenvy (based on Eclipse Che). A registration is FREE and gives you unlimited private projects.
- Open Workspaces tab
- Click on “Add Workspace”, then switch to “Runtime” tab.
- Name set to “PlatformIO”
- Stack search for
- Click on “Create” button, then “Open”.
Let’s create our first PlatformIO-based Codenvy Project
- Click on
Menu: Workspace > Create New Projectand select
platformio-arduino-blinksample. Set “Name” to “Arduino Blink” and press “Create”.
- Now you can use dropdown Commands menu and process project with “run” command
- If you prefer to work with PlatformIO Core CLI, then you can process project
using Cloud IDE Terminal and the next commands:
- platformio run - build project locally (using Cloud IDE’s virtual machine)
- pio run -t clean - clean project
- pio remote run -t upload - upload firmware (program) to a remote device
- platformio remote device list - list available remote devices
- platformio remote device monitor - Remote Serial Port Monitor
You can have multiple PlatformIO-based Projects in the same workspace. We recommend a next folders structure:
├── project-A │ ├── lib │ │ └── readme.txt │ ├── platformio.ini │ └── src │ └── main.ino └── project-B ├── lib │ └── readme.txt ├── platformio.ini └── src ├── main.cpp └── main.h
pio remote run --project-dir project-A -t uploadbuild Project-A
pio remote run --project-dir project-A -t uploadremote firmware uploading
- using Project-A
pio remote run -d project-B -t uploadremote firmware (program) uploading
- using Project-B
See documentation for
platformio remote run --project-dir option.