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.
This patch makes major changes to address the current complexity of GPS Configuration.
Introduces GpsProfile, a new protobuf we use to configure a pre-tuned selection of GPS settings. The aim is to replace the current 5 configuration options with a single user-friendly label that is tailored to real-world Meshtastic use cases.
Based on a users selection of pedestrian, vehicle, airborne, or fixed position, we apply different settings to GPS Update Interval, Position Broadcast Interval, Smart Broadcast Min Interval, Smart Broadcast Min Distance, and Position Flags in firmware.
This should allow the apps to drastically simplify the position configuration shown to users.
We aim take advantage of the profile to improve the accuracy of our position information, such as by discarding erroneous positions based on physically impossible movement. In this patch we use advanced features in GPS hardware specific to each profile to do this. In a follow-up patch we'll extend smartPosition to handle cases in software where GPS hardware support for this is not available.
More information about the selections for each use case is available in this google sheet
PositionFlags has long been seen as a complicated and confusing burden in the apps. We determined that very few users use them, with the majority happy with the default set, and some of the 'advanced' flags don't even work.
After the protobuf declaration, this patch is the next step to deprecate PositionFlags,
which will now be selected in firmware based on the GPSProfile.
Depends on: meshtastic/protobufs#749
Co-Authored-By: @RCGV1 (#6650)
🤝 Attestations