Add GPS & Network service - #54
Open
apfxtech wants to merge 4 commits into
Open
Conversation
Co-authored-by: noproto <11845893+noproto@users.noreply.github.com>
apfxtech
requested review from
DrZlo13,
gornekich,
gsurkov,
hedger and
nminaylov
as code owners
July 14, 2026 08:39
9 tasks
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.
Adds protobuf messages for exchanging GNSS data over RPC.
The primary use case is allowing the companion application (Android, desktop, etc.) to provide GPS coordinates to the Flipper Zero. This enables applications on Flipper to use the host device's GNSS receiver without requiring external GPS hardware.
The protocol is intentionally bidirectional, allowing Flipper Zero to send its own location back to the companion application when required by the application.
Adds a generic networking interface for companion-assisted communication.
The companion application performs network operations (HTTP, HTTPS, WebSocket, TCP and UDP) on behalf of Flipper Zero and exchanges data through RPC messages.
This approach significantly reduces firmware complexity and memory usage by avoiding implementation of multiple network protocol stacks on the embedded device while still allowing Flipper applications to access network services.
The protocol is transport-agnostic: developers are free to implement any custom protocol on the Flipper side, while the companion application acts as a networking backend rather than exposing only predefined APIs.
Please create a new protobuf release/tag after merging this PR so the firmware can detect the protocol changes. Once the protobuf changes are accepted, I'll verify the firmware backend services against the new protocol and open a second pull request for the firmware implementation.