mirror of
https://github.com/meshtastic/meshtastic.git
synced 2024-11-15 18:14:19 -08:00
437 lines
6.4 KiB
Plaintext
437 lines
6.4 KiB
Plaintext
---
|
|
id: python-cli
|
|
title: Meshtastic Command Line Interface
|
|
sidebar_label: Python CLI
|
|
---
|
|
|
|
# Meshtastic Python CLI Guide
|
|
|
|
The python pip package installs a "meshtastic" command line executable, which displays packets sent over the network as JSON and lets you see serial debugging information from the meshtastic devices. This command is not run inside of python, you run it from your operating system shell prompt directly. If when you type "meshtastic" it doesn't find the command and you are using Windows: Check that the python "scripts" directory is in your path.
|
|
|
|
## Optional Arguments
|
|
|
|
### -h or --help
|
|
|
|
Shows a help message that describes the arguments.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic -h
|
|
```
|
|
|
|
### --port PORT
|
|
|
|
The port the Meshtastic device is connected to, i.e. `/dev/ttyUSB0`, `/dev/cu.wchusbserial`, `COM4` etc. if unspecified, meshtastic will try to find it. Important to use when multiple devices are connected to ensure you call the command for the correct device.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --port /dev/ttyUSB0 --info
|
|
meshtastic --port COM4 --info
|
|
```
|
|
|
|
### --host HOST
|
|
|
|
The hostname/ipaddr of the device to connect to (over TCP).
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --host HOST
|
|
```
|
|
|
|
### --seriallog SERIALLOG
|
|
|
|
Logs device serial output to either 'stdout', 'none' or a filename to append to.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --port /dev/ttyUSB0 --seriallog
|
|
```
|
|
|
|
### --info
|
|
|
|
Read and display the radio config information.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --port /dev/ttyUSB0 --info
|
|
```
|
|
|
|
### --nodes
|
|
|
|
Prints a node list in a pretty, formatted table.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --nodes
|
|
```
|
|
|
|
### --qr
|
|
|
|
Displays the QR code that corresponds to the current channel.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --qr
|
|
```
|
|
|
|
### --get GET
|
|
|
|
Gets a preferences field.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --get lora.region
|
|
```
|
|
|
|
### --set [config_section].[option] [value]
|
|
|
|
Sets a preferences field.
|
|
|
|
Configuration values are described in this section: [Configuration Sections](https://meshtastic.org/docs/settings/config/)
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --set lora.region Unset
|
|
```
|
|
|
|
### --seturl SETURL
|
|
|
|
Set a channel URL.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --seturl https://www.meshtastic.org/c/GAMiIE67C6zsNmlWQ-KE1tKt0fRKFciHka-DShI6G7ElvGOiKgZzaGFyZWQ=
|
|
```
|
|
|
|
### --ch-index CH_INDEX
|
|
|
|
Set the specified channel index
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-index 1 --ch-disable
|
|
```
|
|
|
|
### --ch-add CH_ADD
|
|
|
|
Add a secondary channel, you must specify a channel name.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-add testing-channel
|
|
```
|
|
|
|
### --ch-del
|
|
|
|
Delete the ch-index channel.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-index 1 --ch-del
|
|
```
|
|
|
|
### --ch-enable
|
|
|
|
Enable the specified channel.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-index 1 --ch-enable
|
|
```
|
|
|
|
### --ch-disable
|
|
|
|
Disable the specified channel.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-index 1 --ch-disable
|
|
```
|
|
|
|
### --ch-set CH_SET CH_SET
|
|
|
|
Set a channel parameter.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-set id 1234 --ch-index 0
|
|
```
|
|
|
|
### --ch-longslow
|
|
|
|
Change to the standard long-range (but slow) channel.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-longslow
|
|
```
|
|
|
|
### --ch-shortfast
|
|
|
|
Change to the standard fast (but short range) channel.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ch-shortfast
|
|
```
|
|
|
|
### --set-owner SET_OWNER
|
|
|
|
Set device owner name.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --dest '!28979058' --set-owner "MeshyJohn"
|
|
```
|
|
|
|
### --set-ham SET_HAM
|
|
|
|
Set licensed Ham ID and turn off encryption.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --set-ham KI1345
|
|
```
|
|
|
|
### --dest DEST
|
|
|
|
The destination node id for any sent commands
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --dest '!28979058' --set-owner "MeshyJohn"
|
|
```
|
|
|
|
### --sendtext SENDTEXT
|
|
|
|
Send a text message. Can specify a channel index ('--ch-index') or a destination ('--dest')
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --sendtext "Hello Mesh!"
|
|
```
|
|
|
|
### --sendping
|
|
|
|
Send a ping message (which requests a reply).
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --sendping
|
|
```
|
|
|
|
### --reboot
|
|
|
|
Tell the destination node to reboot.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --dest '!28979058' --reboot
|
|
```
|
|
|
|
### --reply
|
|
|
|
Reply to received messages.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --reply
|
|
```
|
|
|
|
### --gpio-wrb GPIO_WRB GPIO_WRB
|
|
|
|
Set a particular GPIO # to 1 or 0.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --port /dev/ttyUSB0 --gpio-wrb 4 1 --dest '!28979058'
|
|
```
|
|
|
|
### --gpio-rd GPIO_RD
|
|
|
|
Read from a GPIO mask.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --port /dev/ttyUSB0 --gpio-rd 0x10 --dest '!28979058'
|
|
```
|
|
|
|
### --gpio-watch GPIO_WATCH
|
|
|
|
Start watching a GPIO mask for changes.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --port /dev/ttyUSB0 --gpio-watch 0x10 --dest '!28979058'
|
|
```
|
|
|
|
### --no-time
|
|
|
|
Suppress sending the current time to the mesh.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --port /dev/ttyUSB0 --no-time
|
|
```
|
|
|
|
### --setalt SETALT
|
|
|
|
Set device altitude (allows use without GPS).
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --setalt 120
|
|
```
|
|
|
|
### --setlat SETLAT
|
|
|
|
Set device latitude (allows use without GPS).
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --setlat 25.2
|
|
```
|
|
|
|
### --setlon SETLON
|
|
|
|
Set device longitude (allows use without GPS).
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --setlon -16.8
|
|
```
|
|
|
|
### --debug
|
|
|
|
Show API library debug log messages.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --debug --info
|
|
```
|
|
|
|
### --test
|
|
|
|
Run stress test against all connected Meshtastic devices.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --test
|
|
```
|
|
|
|
### --ble BLE
|
|
|
|
BLE mac address to connect to (BLE is not yet supported for this tool).
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --ble "83:38:92:32:37:48"
|
|
```
|
|
|
|
### --noproto
|
|
|
|
Don't start the API, just function as a dumb serial terminal. Probably not very helpful from the command line. Used more for testing/internal needs.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --noproto
|
|
```
|
|
|
|
### --version
|
|
|
|
Show program's version number and exit.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --version
|
|
```
|
|
|
|
### --configure
|
|
|
|
Configure all of the radio configuration from a yaml file.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --configure example_config.yaml
|
|
```
|
|
|
|
### --export-config
|
|
|
|
Export the configuration of the device. (to be consumed by the '--configure' command)
|
|
|
|
To create to a file with the connected device's configuration, this command's output must be piped to a yaml file
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --export-config > example_config.yaml
|
|
```
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --export-config
|
|
```
|
|
|
|
### --support
|
|
|
|
Print out info that would be helpful supporting any issues.
|
|
|
|
**Usage**
|
|
|
|
```shell
|
|
meshtastic --support
|
|
```
|
|
|
|
## Deprecated Arguments
|
|
|
|
### --setchan
|
|
|
|
Deprecated - use "--ch-set param value" instead.
|
|
|
|
### --set-router
|
|
|
|
Deprecated - use "--set is_router true" instead.
|
|
|
|
### --unset-router
|
|
|
|
Deprecated - use "--set is_router false" instead.
|