Full Command Reference
MeshCore has two command surfaces. The device-side serial CLI (canonical reference: docs.meshcore.io/cli_commands) uses bare get/set verbs and is used to configure repeaters and room servers over USB serial. The host tool meshcore-cli (invoked as meshcore-cli/meshcli) connects to a companion radio over BLE, TCP, or Serial; commands can be passed on the command line or entered in interactive chat mode. The tables below note which surface each command belongs to.
| Command | Purpose |
infos (alias i) | meshcore-cli: print node info (public key, TX power, radio params, name, location). For firmware version use ver; for battery/telemetry use self_telemetry / req_status. |
stats-radio / stats-core / stats-packets | Serial CLI: radio stats (noise floor, RSSI/SNR, airtime), core stats (battery, uptime, queue), and packet counters. There is no bare status command. |
contacts / list (alias lc) | meshcore-cli: list known contacts (nodes you have received adverts from). Use node_discover <filter> (nd) to discover nodes by type, or neighbors on a repeater's serial CLI. |
get <param> | Read a setting (e.g. get radio, get name, get tx). Run get help for the parameter list. There is no config get command. |
Configuration
| Command | Purpose |
set name <name> | Set the node name (no config set prefix). |
set tx <dbm> | Set LoRa transmit power in dBm (valid 1–22 for SX1262). Choose a value that keeps EIRP within your region's limit — 36 dBm EIRP in the US per FCC Part 15.247. Setting too high may violate local law. |
erase | Restore factory defaults. Serial-only and destructive. There is no config reset command. |
set lat <degrees> | Set latitude in degrees. |
set lon <degrees> | Set longitude in degrees. |
password <new_password> | Set the admin password. Any node presenting this password is added to the admin ACL. |
Messaging
| Command | Purpose |
msg <name> <message> (alias m) | meshcore-cli: send a direct message to a contact by name. |
public <message> or chan <nb> <message> | meshcore-cli: send to the public channel (0) or to channel number <nb>. Channel messages flood to subscribers. There is no broadcast command. |
msgs_subscribe (alias ms) | meshcore-cli: display messages as they arrive. Use recv (r) / wait_msg (wm) to read them, or chat mode. There is no listen command. |
Network & Routing
| Command | Purpose |
advert | Trigger immediate advertisement broadcast (flood). Use advert.zerohop for a zero-hop advert. |
set flood.advert.interval <hours> | Flood advert interval in hours (valid 3–168; default 12). |
set path.hash.mode <0|1|2> | Advert path hash size (0=1-byte, 1=2-byte, 2=3-byte; default 0). Affects only this node's own adverts, not forwarding or routing-table behaviour; requires firmware ≥ 1.14. |
region put <name> [parent] | Create a region. Names are user-defined (e.g. region put #USA) — there are no predefined US/state scopes. Flooding must be enabled separately. |
region put <child> <parent> | Create a nested region under a parent (e.g. region put #Colorado #USA). Names are user-defined, not ISO/region codes. |
region save | Save region configuration. |
Repeater & Room Server
| Command | Purpose |
set agc.reset.interval <seconds> | AGC reset interval in seconds (rounded down to a multiple of 4; 0 disables). Helps with receiver desensitization. |
set repeat <on|off> | Enable/disable packet repeating on a repeater or room server (default on). |
Firmware & Maintenance
| Command | Purpose |
reboot | Restart the device. |
start ota | Initiate an over-the-air firmware update (nRF52). Otherwise flash via the MeshCore web flasher or esptool/UF2. There is no flash command. |
No comments to display
No comments to display