PIO Remote™

Your devices are always with you!

New in version 3.2: (PlatformIO Plus)

PIO Remote™ allows you to work remotely with devices from Anywhere In The World. No matter where are you now! Run small and cross-platform PIO Remote™ Agent on a host machine and you will be able to list active devices (wireless + wired), to upload firmware Over-The-Air (OTA), to process remote unit tests, or to start remote debugging session via OTA Serial Port Monitor.

Using PIO Remote™ you can share your devices with friends or team. In combination with Cloud IDE, you can create awesome things at any time when inspiration comes to you.

You should have PIO Account to work with PIO Remote™. A registration is FREE.

Features

Technology

../_images/pio-remote-architecture.png

PIO Remote™ is an own PlatformIO Plus technology for Over-The-Air (OTA) remote operations without external dependencies to operation system or its software based on client-server architecture. The Server component (PlatformIO Cloud) plays a role of coupling link between PIO Remote™ Agent and client (end-developer, continuous integration system, etc.). When you start PIO Remote™ Agent, it connects over the Internet with PlatformIO Cloud and listen for the actions/commands which you can send in Client role from anywhere in the world.

PIO Remote™ is multi-agents and multi-clients system. A single agent can be shared with multiple clients, where different clients can use the same agent. This approach allows to work with distributed hardware located in the different places, networks, etc.

This technology allows to work with remote devices in generic form as you do that with host devices using PlatformIO ecosystem. The only one difference is a prefix “remote” before each generic PlatformIO command. For example, listing of host and remote devices will look like platformio device list and platformio remote device list.

Quick Start

  1. Start PIO Remote™ Agent using platformio remote agent start command on a host machine where devices are connected physically or are visible via network. PIO Remote™ Agent works on Windows, macOS, Linux and Linux ARMv6+. It means that you can use desktop machine, laptop or credit card sized PC (RaspberryPi, BeagleBoard, etc).

    You can share own devices/hardware with friends, team or other developers using platformio remote agent start --share option.

  2. Using other machine or Cloud IDE Terminal in the browser, please authorize using platformio account login command with the same credentials that you used on the previous step. Now, you can use PIO Remote™ CLI commands to work with remote devices Over-The-Air (OTA).

    You don’t need to have network or other access to host machine where PIO Remote™ Agent is started.

Note

Please use local IP as “upload port” when device is not connected directly to host machine where PIO Remote™ Agent is started but supports natively Over-the-Air (OTA) updates. For example, Platform espressif8266 and Over-the-Air (OTA) update. In this case, the final command for remote OTA update will look as platformio remote run -t upload --upload-port 192.168.0.255 or platformio remote run -t upload --upload-port myesp8266.local.