Find My Freedom Phone
Text for the NLnet NGI MobiFree application form (https://nlnet.nl/propose/).
Contact information
- Mr Julian Foad
- ...
- Trax.im / Rooted Software Ltd.
- UK
General project information
- "Find My Freedom Phone" (Find My Freedom Fone -- FMFF?)
- https://lab.trax.im/trax.im/findmyfreedomphone/findmyfreedomphone
Abstract: whole project & outcomes
A solution for ordinary people to find their lost Freedom Phone or track and disable it if stolen.
"Find my phone" offerings from Big Tech are user-friendly but authoritarian. The Freedom Phones ecosystem so far offers only independent add-on apps that demand too much up-front effort to set up.
This project bridges the gap by building on existing freedom tech in this space (FindMyDevice, KDE-Connect, UnifiedPush), integrating it into a freedom phone operating system to make it easy and reliable. Defining published APIs and protocols, it enables third-party development of interoperable alternatives to its components such as the device sub-functions (GPS access, camera access, and so on) and the remote-access GUI. It enables service providers to offer custom hosted implementations, while maintaining full authority of owners over their devices to choose among providers or use entirely their own resources.
Outcomes: proof-of-concept implementation; documented APIs and protocols; blog posts; outreach to potentially interested Freedom Phone organisations.
Prior involvement
A little experimentation and self-hosting with projects in this scene including FMD & FMD-server, /e/OS, LineageOS, F-Droid & F-Droid-server, UnifiedPush & ntfy-server; building and deploying, contributing a little documentation, commenting on a few bugs and discussions.
Requested support
- €xxx
Labour: 256 hours(research and development, 16 h/week for 16 weeks) x €xxx/hour: €xxx.
Capital: possibly 1 or 2 additional freedom phones, second-hand, for testing: say €240.
This project has no other funding sources.
Compare
Main comparison: FindMyDevice (FMD) by Nulide. FMD with optional FMD-server implements a lot of the expected functionality. As FMD on the device side is a regular app, to grant permissions for its system-level functions the owner must perform contortions beyond an ordinary person's patience. The FMD-server, which can be self-hosted, has two purposes: storing device location reports, and providing a GUI for the remote functions. FMD's connection transport modes include SMS, and FMD-server which uses TCP/IP and push notifications over UnifiedPush. To set up SMS, the owner specifies a pass-code and/or trusted sender phone numbers. To set up FMD-server, the owner must keep track of credentials both for the server and for each device (as the server doesn't). With this all configured, then the owner can access the device functions through SMS or their chosen FMD-server.
The comparison with KDEConnect is similar. KDEConnect provides a different range of remote-access functions, oriented to desktop-environment integration like clipboard sharing, rather than device management, but includes "ring the device". It requires similar contortions to grant permissions for its Android app. Rather than a dedicated server component, KDEConnect works peer-to-peer between mobile and desktop devices, running its transport over TCP/UDP.
The comparison with the Big Tech duopoly is illuminating. They more or less require a single sign-in to their authoritative service when setting up their devices, and in order to continue using them. No additional action is required of their user in advance to activate the device finding functions.
Technical Challenges
Working with AOSP device management functions, and testing such work.
Setting up whole-OS build environment (LineageOS and/or /e/OS).
Ecosystem
Main ecosystem researched is android-compatibles (LineageOS, Murena-/e/OS, CalyxOS, GrapheneOS, and more). We will reach out and solicit help and involvement from them, and try to show and integration that they could adopt, and ask for their review and feedback. There are precedents: CalyxOS developed SeedVault backup which is being adopted by others, and UnifiedPush adoption is steadily growing.
Other freedom-phone ecosystems include GNU-Linux-compatibles (PostmarketOS, Purism-Librem...) and SailfishOS (Jolla). Not sure if they have any "Find my phone" functionality yet. We will let them known about it and see if there is interest from their side, as the technology should be cross-platform.
Attachments
(none)