Files
MeshTerm/config.example.toml
T
Jean-Pierre MartineauandClaude Opus 4.8 62f19da405 Soft-retry unacked direct messages up to twice
A direct message was transmitted once and marked failed the moment its
single delivery-ack window lapsed, leaving Ctrl-R as the only recourse.
Now the send path re-sends an unacknowledged message automatically before
giving up, matching the mesh convention of a few tries.

_deliver_direct loops send_direct_message until an ack lands or the budget
is spent; both the initial send and the manual Ctrl-R resend route through
it. Each attempt already blocks a full ack window before the next, so the
retries are spaced by that window rather than hammering the radio, and a
hard send rejection propagates without retry.

The budget is the new direct_message_soft_retries setting: retries + 1
tries, clamped to 0..2 so a message is never re-broadcast more than twice
(0 = one shot, default 2 = up to three tries).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 21:41:14 -04:00

45 lines
1.7 KiB
TOML

# MeshTerm configuration.
# Copy to ~/.meshterm/config.toml (or pass --db / --port on the CLI).
#
# Profiles are optional. With no profile, no --port, and no --ble, 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. Define profiles below only to give your hardware stable aliases
# (e.g. --profile yagi, or --profile handheld for a Bluetooth device).
default_profile = "s3"
trace_cooldown_s = 1.0
# Automatic re-sends of a direct message that goes unacknowledged, before it's marked failed.
# 0, 1, or 2 (clamped): 0 = one shot, 2 (default) = up to three tries. Ctrl-R in chat is a
# further manual retry on top of this.
direct_message_soft_retries = 2
# db_path = "C:/Users/you/meshterm/meshterm.db"
# output_dir = "C:/Users/you/meshterm/output"
# One [profiles.<name>] block per physical companion device.
[profiles.s3]
port = "COM5"
baudrate = 115200
default_tx_power = 20
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"