LinuxCommandLibrary

pio-home

Open PlatformIO Home in a web browser

TLDR

Open PlatformIO Home in the default web browser

$ pio home
copy

Use a specific HTTP port (defaults to 8008)
$ pio home --port [port]
copy

Bind to a specific IP address (defaults to 127.0.0.1)
$ pio home --host [ip_address]
copy

Do not automatically open PlatformIO Home in the default web browser
$ pio home --no-open
copy

Automatically shutdown the server on timeout (in seconds) when no clients are connected
$ pio home --shutdown-timeout [time]
copy

Specify a unique session identifier to keep PlatformIO Home isolated from other instances and protected from 3rd party access
$ pio home --session-id [id]
copy

SYNOPSIS

pio home [options]

PARAMETERS

--port <port>
    Specifies the TCP/IP port for the web server (default is 8008).

--host <host>
    Specifies the TCP/IP host address for the web server (default is 127.0.0.1 or localhost).

--no-open
    Prevents PlatformIO Home from automatically opening in the web browser.

--shutdown-timeout <seconds>
    Sets the timeout for the server shutdown process (default is 5 seconds).

--no-startup-check
    Skips the check for a running PlatformIO Home instance at startup.

--force-feature-display
    Forces the display of all PlatformIO Home features, even if they are not enabled by default.

--help
    Shows the help message and exits.

DESCRIPTION

pio home is a sub-command of the pio (PlatformIO Core) command-line interface. It launches PlatformIO Home, which is a powerful web-based user interface (UI) designed to streamline embedded systems development.

PlatformIO Home provides a centralized dashboard for managing projects, boards, libraries, and development environments. Users can access features like project creation and management, browsing available boards and frameworks, installing and updating development platforms, exploring and managing libraries, and utilizing a built-in serial port monitor.

It runs a local web server (usually on localhost:8008 by default) and automatically opens the UI in the default web browser. This graphical interface simplifies many tasks that could otherwise be complex or require multiple command-line operations, making embedded development more accessible and efficient for both beginners and experienced developers. It integrates seamlessly with the PlatformIO Core CLI, allowing users to switch between GUI and CLI workflows as needed.

CAVEATS

Requires an active internet connection for initial setup, library/platform installations, and updates.
Runs a local web server, which consumes system resources.
Default port 8008 might conflict with other applications; can be changed with --port.
While web-based, it still requires PlatformIO Core to be installed locally to function.

<B>WEB-BASED INTERFACE</B>

PlatformIO Home operates as a local web server, accessible via a browser, providing a rich graphical interface for managing projects, libraries, and development environments. This approach makes it cross-platform and easily accessible.

<B>INTEGRATION WITH VS CODE</B>

While pio home can be run standalone, it's often launched automatically when using the PlatformIO IDE extension for Visual Studio Code, seamlessly integrating the UI into the development environment.

HISTORY

PlatformIO Home was introduced as a major feature to complement the command-line interface, aiming to provide a more user-friendly graphical experience for embedded development. Its development is ongoing as part of the broader PlatformIO ecosystem, with regular updates introducing new features and improvements. It evolved from a pure CLI tool into a hybrid system offering both powerful command-line control and an intuitive web UI.

SEE ALSO

pio(1), pio run(1), pio lib(1), pio platform(1)

Copied to clipboard