@ -26,7 +26,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
## Operational
## Operational
### Reboot the node
### Reboot the node
**Usage:**
**Usage:**
- `reboot`
- `reboot`
**Note:** No reply is sent.
**Note:** No reply is sent.
@ -51,7 +51,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
### Sync the clock with the remote device
### Sync the clock with the remote device
**Usage:**
**Usage:**
- `clock sync`
- `clock sync`
---
---
@ -63,7 +63,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
### Set the time to a specific timestamp
### Set the time to a specific timestamp
**Usage:**
**Usage:**
- `time <epoch_seconds>`
- `time <epoch_seconds>`
**Parameters:**
**Parameters:**
@ -72,7 +72,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
### Send a flood advert
### Send a flood advert
**Usage:**
**Usage:**
- `advert`
- `advert`
---
---
@ -102,7 +102,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
## Neighbors (Repeater Only)
## Neighbors (Repeater Only)
### List nearby neighbors
### List nearby neighbors
**Usage:**
**Usage:**
- `neighbors`
- `neighbors`
**Note:** The output of this command is limited to the 8 most recent adverts.
**Note:** The output of this command is limited to the 8 most recent adverts.
@ -112,10 +112,10 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
### Remove a neighbor
### Remove a neighbor
**Usage:**
**Usage:**
- `neighbor.remove <pubkey_prefix>`
- `neighbor.remove <pubkey_prefix>`
**Parameters:**
**Parameters:**
- `pubkey_prefix`: The public key of the node to remove from the neighbors list. This can be a short prefix or the full key. All neighbors matching the provided prefix will be removed.
- `pubkey_prefix`: The public key of the node to remove from the neighbors list. This can be a short prefix or the full key. All neighbors matching the provided prefix will be removed.
**Note:** You can remove all neighbors by sending a space character as the prefix. The space indicates an empty prefix, which matches all existing neighbors.
**Note:** You can remove all neighbors by sending a space character as the prefix. The space indicates an empty prefix, which matches all existing neighbors.
@ -124,7 +124,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
### Discover zero hop neighbors
### Discover zero hop neighbors
**Usage:**
**Usage:**
- `discover.neighbors`
- `discover.neighbors`
---
---
@ -137,7 +137,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
### System Stats - Battery, Uptime, Queue Length and Debug Flags
### System Stats - Battery, Uptime, Queue Length and Debug Flags
**Usage:**
**Usage:**
- `stats-core`
- `stats-core`
**Serial Only:** Yes
**Serial Only:** Yes
@ -234,7 +234,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### Change the radio parameters for a set duration
#### Change the radio parameters for a set duration
**Note:** the 'path.hash.mode' sets the low-level ID/hash encoding size used when the repeater adverts. This setting has no impact on what packet ID/hash size this repeater forwards, all sizes should be forwarded on firmware >= 1.14. This feature was added in firmware 1.14
**Note:** the 'path.hash.mode' sets the low-level ID/hash encoding size used when the repeater adverts. This setting has no impact on what packet ID/hash size this repeater forwards, all sizes should be forwarded on firmware >= 1.14. This feature was added in firmware 1.14
**Temporary Note:** adverts with ID/hash sizes of 2 or 3 bytes may have limited flood propagation in your network while this feature is new as v1.13.0 firmware and older will drop packets with multibyte path ID/hashes as only 1-byte hashes are supported. Consider your install base of firmware >=1.14 has reached a criticality for effective network flooding before implementing higher ID/hash sizes.
**Temporary Note:** adverts with ID/hash sizes of 2 or 3 bytes may have limited flood propagation in your network while this feature is new as v1.13.0 firmware and older will drop packets with multibyte path ID/hashes as only 1-byte hashes are supported. Consider your install base of firmware >=1.14 has reached a criticality for effective network flooding before implementing higher ID/hash sizes.
---
---
@ -485,17 +485,17 @@ This document provides an overview of CLI commands that can be sent to MeshCore
- `set loop.detect <state>`
- `set loop.detect <state>`
**Parameters:**
**Parameters:**
- `state`:
- `state`:
- `off`: no loop detection is performed
- `off`: no loop detection is performed
- `minimal`: packets are dropped if repeater's ID/hash appears 4 or more times (1-byte), 2 or more (2-byte), 1 or more (3-byte)
- `minimal`: packets are dropped if repeater's ID/hash appears 4 or more times (1-byte), 2 or more (2-byte), 1 or more (3-byte)
- `moderate`: packets are dropped if repeater's ID/hash appears 2 or more times (1-byte), 1 or more (2-byte), 1 or more (3-byte)
- `moderate`: packets are dropped if repeater's ID/hash appears 2 or more times (1-byte), 1 or more (2-byte), 1 or more (3-byte)
- `strict`: packets are dropped if repeater's ID/hash appears 1 or more times (1-byte), 1 or more (2-byte), 1 or more (3-byte)
- `strict`: packets are dropped if repeater's ID/hash appears 1 or more times (1-byte), 1 or more (2-byte), 1 or more (3-byte)
**Default:** `off`
**Default:** `off`
**Note:** When it is enabled, repeaters will now reject flood packets which look like they are in a loop. This has been happening recently in some meshes when there is just a single 'bad' repeater firmware out there (probably some forked or custom firmware). If the payload is messed with, then forwarded, the same packet ends up causing a packet storm, repeated up to the max 64 hops. This feature was added in firmware 1.14
**Note:** When it is enabled, repeaters will now reject flood packets which look like they are in a loop. This has been happening recently in some meshes when there is just a single 'bad' repeater firmware out there (probably some forked or custom firmware). If the payload is messed with, then forwarded, the same packet ends up causing a packet storm, repeated up to the max 64 hops. This feature was added in firmware 1.14
**Example:** If preference is `loop.detect minimal`, and a 1-byte path size packet is received, the repeater will see if its own ID/hash is already in the path. If it's already encoded 4 times, it will reject the packet. If the packet uses 2-byte path size, and repeater's own ID/hash is already encoded 2 times, it rejects. If the packet uses 3-byte path size, and the repeater's own ID/hash is already encoded 1 time, it rejects.
**Example:** If preference is `loop.detect minimal`, and a 1-byte path size packet is received, the repeater will see if its own ID/hash is already in the path. If it's already encoded 4 times, it will reject the packet. If the packet uses 2-byte path size, and repeater's own ID/hash is already encoded 2 times, it rejects. If the packet uses 3-byte path size, and the repeater's own ID/hash is already encoded 1 time, it rejects.
---
---
@ -695,12 +695,12 @@ This document provides an overview of CLI commands that can be sent to MeshCore
### ACL
### ACL
#### Add, update or remove permissions for a companion
#### Add, update or remove permissions for a companion
**Usage:**
**Usage:**
- `setperm <pubkey> <permissions>`
- `setperm <pubkey> <permissions>`
**Parameters:**
**Parameters:**
- `pubkey`: Companion public key
- `pubkey`: Companion public key
- `permissions`:
- `permissions`:
- `0`: Guest
- `0`: Guest
- `1`: Read-only
- `1`: Read-only
- `2`: Read-write
- `2`: Read-write
@ -711,7 +711,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### View the current ACL
#### View the current ACL
**Usage:**
**Usage:**
- `get acl`
- `get acl`
**Serial Only:** Yes
**Serial Only:** Yes
@ -733,7 +733,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
### Region Management (v1.10.+)
### Region Management (v1.10.+)
#### Bulk-load region lists
#### Bulk-load region lists
**Usage:**
**Usage:**
- `region load`
- `region load`
- `region load <name> [flood_flag]`
- `region load <name> [flood_flag]`
@ -749,16 +749,16 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### Save any changes to regions made since reboot
#### Save any changes to regions made since reboot
**Usage:**
**Usage:**
- `region save`
- `region save`
---
---
#### Allow a region
#### Allow a region
**Usage:**
**Usage:**
- `region allowf <name>`
- `region allowf <name>`
**Parameters:**
**Parameters:**
- `name`: Region name (or `*` for wildcard)
- `name`: Region name (or `*` for wildcard)
**Note:** Setting on wildcard `*` allows packets without region transport codes
**Note:** Setting on wildcard `*` allows packets without region transport codes
@ -766,10 +766,10 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### Block a region
#### Block a region
**Usage:**
**Usage:**
- `region denyf <name>`
- `region denyf <name>`
**Parameters:**
**Parameters:**
- `name`: Region name (or `*` for wildcard)
- `name`: Region name (or `*` for wildcard)
**Note:** Setting on wildcard `*` drops packets without region transport codes
**Note:** Setting on wildcard `*` drops packets without region transport codes
@ -777,7 +777,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### Show information for a region
#### Show information for a region
**Usage:**
**Usage:**
- `region get <name>`
- `region get <name>`
**Parameters:**
**Parameters:**
@ -786,7 +786,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### View or change the home region for this node
#### View or change the home region for this node
**Usage:**
**Usage:**
- `region home`
- `region home`
- `region home <name>`
- `region home <name>`
@ -796,7 +796,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### View or change the default scope region for this node
#### View or change the default scope region for this node
**Usage:**
**Usage:**
- `region default`
- `region default`
- `region default {name|<null>}`
- `region default {name|<null>}`
@ -806,7 +806,7 @@ This document provides an overview of CLI commands that can be sent to MeshCore
---
---
#### Create a new region
#### Create a new region
**Usage:**
**Usage:**
- `region put <name> [parent_name]`
- `region put <name> [parent_name]`
**Parameters:**
**Parameters:**
@ -857,18 +857,18 @@ region save
---
---
#### Remove a region
#### Remove a region
**Usage:**
**Usage:**
- `region remove <name>`
- `region remove <name>`
**Parameters:**
**Parameters:**
- `name`: Region name
- `name`: Region name
**Note:** Must remove all child regions before the region can be removed
**Note:** Must remove all child regions before the region can be removed
---
---
#### View all regions
#### View all regions
**Usage:**
**Usage:**
- `region list <filter>`
- `region list <filter>`
**Serial Only:** Yes
**Serial Only:** Yes
@ -881,7 +881,7 @@ region save
---
---
#### Dump all defined regions and flood permissions
#### Dump all defined regions and flood permissions
**Usage:**
**Usage:**
- `region`
- `region`
**Serial Only:** For firmware older than 1.12.0
**Serial Only:** For firmware older than 1.12.0
@ -906,7 +906,7 @@ region save
**Example 2: Using Wildcard with F Flag**
**Example 2: Using Wildcard with F Flag**
```
```
region load
region load
* F
* F
<blanklinetoendregionload>
<blanklinetoendregionload>
region save
region save
@ -921,7 +921,7 @@ region save
**Example 3: Using Wildcard Without F Flag**
**Example 3: Using Wildcard Without F Flag**
```
```
region load
region load
*
*
<blanklinetoendregionload>
<blanklinetoendregionload>
region save
region save
@ -935,7 +935,7 @@ region save
**Example 4: Nested Public Region with F Flag**
**Example 4: Nested Public Region with F Flag**
```
```
region load
region load
#Europe F
#Europe F
#UK
#UK
#London
#London
@ -956,7 +956,7 @@ region save
**Example 5: Wildcard with Nested Public Regions**
**Example 5: Wildcard with Nested Public Regions**
```
```
region load
region load
* F
* F
#NorthAmerica
#NorthAmerica
#USA
#USA
@ -995,13 +995,13 @@ region save
---
---
#### Sync this node's clock with GPS time
#### Sync this node's clock with GPS time
**Usage:**
**Usage:**
- `gps sync`
- `gps sync`
---
---
#### Set this node's location based on the GPS coordinates
#### Set this node's location based on the GPS coordinates