Files
MeshTerm/config.example.toml
T
Jean-Pierre MartineauandClaude Opus 5.5 2d5e8bb67d Adding a radio on the SPI bus has a walkthrough of its own
configuration.md now takes a non-AIO board from its meshtasticd config
to a working profile: the key-by-key mapping, a whole example, how to
check it, and what the profile deliberately doesn't hold (radio
settings, the preamble, identity). It warns that a key left out keeps
the AIO's value, unlike meshtasticd where it means off. --spi joins the
option lists in cli.md, the README, and the cookbook, radio/ joins the
state-files table, and config.example.toml carries a full wiring example.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-24 17:44:44 -04:00

84 lines
3.6 KiB
TOML

# MeshTerm configuration: where things live, and which device to talk to.
# Copy to ~/.meshterm/config.toml (or pass --db / --port on the CLI).
#
# How MeshTerm itself behaves — transmit cooldown, message retries, how much history it
# keeps — is *not* here. Those are preferences: they live in ~/.meshterm/preferences.toml,
# and are edited on the Preferences page (or with `meshterm preferences set <key> <value>`).
# Every one has a built-in default, so that file only ever lists what you have changed.
#
# Profiles are optional. With no profile, no --port/--ble/--tcp, MeshTerm discovers attached
# serial devices and nearby Bluetooth companions, lets you pick one (interactively) or uses the
# single one present, and remembers the last device that connected as the default for next time.
# A network (TCP) companion isn't discoverable — name it with --tcp host:port, a TCP profile, or
# the picker's "add a network device" prompt. Define profiles below only to give your hardware
# stable aliases (e.g. --profile yagi, --profile handheld for Bluetooth, --profile wifi for TCP).
# Uncomment and name one of your own profiles below to make it the default. Left
# commented, MeshTerm finds the device itself, as described above.
# default_profile = "s3"
# Open the radio link as soon as the menu appears. False opens it lazily instead — only
# once monitoring is turned on or a tool first needs the radio.
connect_on_start = true
# db_path = "C:/Users/you/meshterm/meshterm.db"
# One [profiles.<name>] block per physical companion device.
[profiles.s3]
port = "COM5"
baudrate = 115200
description = "XIAO ESP32-S3 + Wio SX1262 serial companion"
[profiles.yagi]
port = "COM6"
description = "Yagi repeater (reaching the wider mesh)"
[profiles.local]
port = "COM7"
description = "Local-range repeater"
[profiles.observer]
port = "COM8"
description = "XIAO observer running a bot"
# A Bluetooth LE companion: give it an `address` (from `meshterm devices`) instead of a port.
# The `transport = "ble"` line is optional — a bare `address` already implies Bluetooth.
[profiles.handheld]
address = "AA:BB:CC:DD:EE:FF"
# transport = "ble"
# ble_pin = "123456" # only if your device requires a pairing PIN
description = "Pocket handheld over Bluetooth"
# A network (TCP) companion — a WiFi board, or a meshcored-style proxy — reachable at a
# host:port. Give it a `host` (and optional `tcp_port`, default 5000); a bare `host` already
# implies TCP, so the `transport = "tcp"` line is optional. A TCP companion isn't discoverable,
# so a profile (or --tcp host:port, or the picker's "add a network device" prompt) is how you
# reach one.
[profiles.wifi]
host = "192.168.1.50"
# tcp_port = 5000
# transport = "tcp"
description = "Basestation over WiFi"
# A radio on this machine's own SPI bus: MeshTerm runs its node while it is connected.
# The pins default to the uConsole AIO v1's, which needs nothing more than this (and is
# listed on the device screen anyway, whenever /dev/spidev1.0 exists).
[profiles.aio]
transport = "spi"
# [profiles.aio.spi]
# en_pins = [27] # the AIO v2 powers its radio from pin 27
# Any other board states its whole wiring — every pin and both switches, because a key
# left out keeps the AIO's value. Read them off the board's meshtasticd config; the
# values here are an illustration only. docs/configuration.md has the key-by-key mapping.
# [profiles.hat.spi]
# bus_id = 0 # /dev/spidev0.0
# cs_id = 0
# reset_pin = 18
# busy_pin = 20
# irq_pin = 16
# txen_pin = 6
# rxen_pin = -1
# use_dio2_rf = false
# use_dio3_tcxo = false
# python = "/opt/radio/bin/python" # only to pick the Python that has openhop-core