platformio device

platformio device list

Usage

platformio device list [OPTIONS]
pio device list [OPTIONS]

Description

List available devices. Default is set to --serial and all available Serial Ports will be shown.

Options

--serial

List available Serial Ports, default.

--logical

List available logical devices.

--mdns

List multicast DNS services.

--json-output

Return the output in JSON format.

Examples

  1. Unix OS

$ platformio device list
/dev/cu.SLAB_USBtoUART
----------
Hardware ID: USB VID:PID=10c4:ea60 SNR=0001
Description: CP2102 USB to UART Bridge Controller

/dev/cu.uart-1CFF4676258F4543
----------
Hardware ID: USB VID:PID=451:f432 SNR=1CFF4676258F4543
Description: Texas Instruments MSP-FET430UIF
  1. Windows OS

$ platformio device list
COM4
----------
Hardware ID: USB VID:PID=0451:F432
Description: MSP430 Application UART (COM4)

COM3
----------
Hardware ID: USB VID:PID=10C4:EA60 SNR=0001
Description: Silicon Labs CP210x USB to UART Bridge (COM3)
  1. List multicast DNS services and logical devices

$ platformio device list --mdns --logical
Multicast DNS Services
======================

PlatformIO._bttremote._tcp.local.
------------------------------
Type: _bttremote._tcp.local.
IP: ...
Port: 62941
Properties: ...

Time for PlatformIO._adisk._tcp.local.
---------------------------------
Type: _adisk._tcp.local.
IP: 192.168.0.1
Port: 9
Properties: ...

PlatformIO._ssh._tcp.local.
------------------------
Type: _ssh._tcp.local.
IP: ...
Port: 22

PlatformIO._sftp-ssh._tcp.local.
-----------------------------
Type: _sftp-ssh._tcp.local.
IP: ...
Port: 22


Logical Devices
===============
/
-
Name:

/Volumes/PIO
-------------
Name: PIO

/Volumes/PLUS
--------------
Name: PLUS

platformio device monitor

Usage

platformio device monitor [OPTIONS]

Description

This is a console application that provides a small terminal application. It is based on Miniterm and itself does not implement any terminal features such as VT102 compatibility. However it inherits these features from the terminal it is run. For example on GNU/Linux running from an xterm it will support the escape sequences of the xterm. On Windows the typical console window is dumb and does not support any escapes. When ANSI.sys is loaded it supports some escapes.

Miniterm supports RFC 2217 remote serial ports and raw sockets using URL Handlers such as rfc2217://<host>:<port> respectively socket://<host>:<port> as port argument when invoking.

To control monitor please use these “hot keys”:

  • Ctrl+C Quit

  • Ctrl+T Menu

  • Ctrl+T followed by Ctrl+H Help

Options

-p, --port

Port, a number or a device name, or valid URL Handlers.

Can be customized in “platformio.ini” (Project Configuration File) using monitor_port option.

URL Handlers

-b, --baud

Set baud rate, default 9600.

Can be customized in “platformio.ini” (Project Configuration File) using monitor_speed option.

--parity

Set parity (None, Even, Odd, Space, Mark), one of [N, E, O, S, M], default N

--rtscts

Enable RTS/CTS flow control, default Off

--xonxoff

Enable software flow control, default Off

--rts

Set initial RTS line state (0 or 1).

Can be customized in “platformio.ini” (Project Configuration File) using monitor_rts option.

--dtr

Set initial DTR line state (0 or 1).

Can be customized in “platformio.ini” (Project Configuration File) using monitor_dtr option.

--echo

Enable local echo, default Off

--encoding

Set the encoding for the serial port (e.g. hexlify, Latin1, UTF-8), default UTF-8.

-f, --filter

Add text transformation. Available filters:

  • colorize Apply different colors for received and echo

  • debug Print what is sent and received

  • default Remove typical terminal control codes from input

  • direct Do-nothing: forward all data unchanged

  • nocontrol Remove all control codes, incl. CR+LF

  • printable Show decimal code for all non-ASCII characters and replace most control codes

--eol

End of line mode (CR, LF or CRLF), default CRLF

NEW: Available in Miniterm/PySerial 3.0

--raw

Do not apply any encodings/transformations

--exit-char

ASCII code of special character that is used to exit the application, default 3 (DEC, Ctrl+C).

For example, to use Ctrl+] run platformio device monitor --exit-char 29.

--menu-char

ASCII code of special character that is used to control miniterm (menu), default 20 (DEC)

---quiet

Diagnostics: suppress non-error messages, default Off

-d, --project-dir

Specify the path to project directory. By default, --project-dir is equal to current working directory (CWD).

-e, --environment

Process specified environments.

You can also specify which environments should be processed by default using default_envs option from “platformio.ini” (Project Configuration File).

Examples

  1. Show available options for monitor

$ platformio device monitor --help
Usage: platformio device monitor [OPTIONS]

Options:
  -p, --port TEXT       Port, a number or a device name
  -b, --baud INTEGER    Set baud rate, default=9600
  --parity [N|E|O|S|M]  Set parity, default=N
  --rtscts              Enable RTS/CTS flow control, default=Off
  --xonxoff             Enable software flow control, default=Off
  --rts [0|1]           Set initial RTS line state, default=0
  --dtr [0|1]           Set initial DTR line state, default=0
  --echo                Enable local echo, default=Off
  --encoding TEXT       Set the encoding for the serial port (e.g. hexlify,
                        Latin1, UTF-8), default: UTF-8
  -f, --filter TEXT     Add text transformation
  --eol [CR|LF|CRLF]    End of line mode, default=CRLF
  --raw                 Do not apply any encodings/transformations
  --exit-char INTEGER   ASCII code of special character that is used to exit
                        the application, default=29 (DEC)
  --menu-char INTEGER   ASCII code of special character that is used to
                        control miniterm (menu), default=20 (DEC)
  --quiet               Diagnostics: suppress non-error messages, default=Off
  -h, --help            Show this message and exit.
  1. Communicate with serial device and print help inside terminal

$ platformio device monitor

--- Available ports:
--- /dev/cu.Bluetooth-Incoming-Port n/a
--- /dev/cu.Bluetooth-Modem n/a
--- /dev/cu.SLAB_USBtoUART CP2102 USB to UART Bridge Controller
--- /dev/cu.obd2ecu-SPPDev n/a
Enter port name:/dev/cu.SLAB_USBtoUART
--- Miniterm on /dev/cu.SLAB_USBtoUART: 9600,8,N,1 ---
--- Quit: Ctrl+C  |  Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H ---
Hello PlatformIO!
---
--- Ctrl+]   Exit program
--- Ctrl+T   Menu escape key, followed by:
--- Menu keys:
---    Ctrl+T  Send the menu character itself to remote
---    Ctrl+]  Send the exit character itself to remote
---    Ctrl+I  Show info
---    Ctrl+U  Upload file (prompt will be shown)
--- Toggles:
---    Ctrl+R  RTS          Ctrl+E  local echo
---    Ctrl+D  DTR          Ctrl+B  BREAK
---    Ctrl+L  line feed    Ctrl+A  Cycle repr mode
---
--- Port settings (Ctrl+T followed by the following):
---    p          change port
---    7 8        set data bits
---    n e o s m  change parity (None, Even, Odd, Space, Mark)
---    1 2 3      set stop bits (1, 2, 1.5)
---    b          change baud rate
---    x X        disable/enable software flow control
---    r R        disable/enable hardware flow control
--- exit ---