Skip to content

Keymind - Keep Ensuring Your Message Is Network Delivered#2501

Open
mikecarper wants to merge 41 commits intomeshcore-dev:mainfrom
mikecarper:keymind
Open

Keymind - Keep Ensuring Your Message Is Network Delivered#2501
mikecarper wants to merge 41 commits intomeshcore-dev:mainfrom
mikecarper:keymind

Conversation

@mikecarper
Copy link
Copy Markdown

Built on top of HALO #2367 , keymind makes sure a flood message gets out.

This PR adds in flood retry support for repeaters, including CLI controls for retry count, path gate, target prefixes, and bridge
bucket mode.

This adds:

  • Core flood retry scheduling and retry lifecycle handling
  • Queue failure reporting so retry code can handle full outbound queues cleanly
  • Repeater CLI prefs and docs for flood retry settings
  • Recent repeater freshness tracking for bridge bucket decisions
  • Bridge mode cancellation when configured other-side buckets are heard, without requiring the echoed packet to pass
    through this repeater

• For bridge mode, use bucket settings, not flood.retry.prefixes.

set flood.retry.preset rooftop
set flood.retry.count 3
set flood.retry.path off
set flood.retry.bridge on

set flood.retry.bucket 1 AABBCC,DDEEFF
set flood.retry.bucket 2 112233,445566

You can use up to 6 buckets and 8 prefixes per bucket.

Check config:

get flood.retry.preset
get flood.retry.count
get flood.retry.path
get flood.retry.bridge
get flood.retry.bucket.1
get flood.retry.bucket.2

With meshdebug builds
picocom -b 115200 /dev/ttyACM0 --imap lfcrlf --logfile /tmp/mesh.log
and
tail -F /tmp/mesh.log | grep --line-buffered -Ei 'direct retry|flood retry'

mikecarper and others added 30 commits April 17, 2026 16:40
…rect-path-retries

# Conflicts:
#	build.sh
#	src/helpers/CommonCLI.cpp
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants