build(native-macos): enable UDP multicast mesh#10784
Draft
jamesarich wants to merge 1 commit into
Draft
Conversation
native-macos only pulls portduino_base.build_flags_common, which omits -DHAS_UDP_MULTICAST=1 (that flag lives in portduino_base.build_flags, inherited by Linux native via native_base). As a result macOS native builds had no UDP multicast, so two local meshtasticd nodes couldn't mesh over 224.0.0.69:4403. Add -DHAS_UDP_MULTICAST=1 to the native-macos build_flags (inherited by native-macos-debug). Depends on the Darwin multicast-bind fix in framework-portduino#75 to actually mesh between sibling processes on macOS; without it the socket binds the group address and never loops back on Darwin. Verified: native-macos builds with the flag and two nodes mesh over UDP once the framework fix is in the resolved platform-native bundle. Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
Contributor
⚡ Try this PR in the Web FlasherWarning This is an automated, unreviewed CI test build. Back up your device configuration Supported boards built by this PR (25)
Build artifacts expire on 2026-07-25. Updated for |
Contributor
Firmware Size Report22 targets | vs
Show 17 more target(s)
Updated for bb3a3ea |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
native-macosonly pullsportduino_base.build_flags_common, which omits-DHAS_UDP_MULTICAST=1(that flag lives inportduino_base.build_flags, inherited by Linux native vianative_base). So macOS native builds shipped with no UDP multicast, and two localmeshtasticdnodes couldn't mesh over224.0.0.69:4403.This adds
-DHAS_UDP_MULTICAST=1to thenative-macosbuild flags (also inherited bynative-macos-debug).Dependency
Without the Darwin multicast-bind fix in that PR, the socket binds the multicast group address and never loops back on macOS, so enabling the flag alone yields a non-functional listener on Darwin. Opening as a draft until the framework fix is in the resolved
platform-nativebundle.Test plan
pio run -e native-macosbuilds with the flag (no manualPLATFORMIO_BUILD_FLAGSoverride).native-macosnodes mesh over224.0.0.69:4403— both node DBs cross-populate and a text message is delivered.-e native) unaffected — it already had the flag.