PairFree
io.github.omegadestroyer.pairfree
Zapstore _@zapstore.dev One light app for earbuds of many brands. No account, no internet, no tracking
Republished from GitHub / F-Droid by the Zapstore main account.
PairFree aims to be one app for the settings of nearly any earbuds and headphones. It replaces heavy, brand-specific apps with a light, fast one that talks to your earbuds directly over Bluetooth. Why PairFree: • No account: nothing to sign up for or log in to • No internet: the app has no internet permission, so it cannot go online • Nothing leaves your phone unless you share it yourself, such as a device report or an equalizer profile. No ads, no analytics, no crash reports, no cloud backup of your settings • One app to rule them all: the same screens for every brand, instead of one vendor app each • Few permissions: Bluetooth, for earbuds you have already paired, and notifications for the optional status notification. For JBL models alone, finding nearby devices, asked for only when you open one and never used for your location. No location, no contacts • Small and quick: about 3 MB, with no login and no server to wait for • Open source (GPL-3.0), with every protocol documented and tested in its repository • Your equalizer as files: save your own curves, and export and share them Supported brands: • SOUNDPEATS: tried on the H3 and Air5 Pro+. Other models use the same protocol and should work • Soundcore (Anker): 39 models, tried on the Space A40. Built on the open-source OpenSCQ30 • Samsung Galaxy Buds: 16 models, from the 2019 Buds to the Buds4 Pro, not yet tried on real earbuds. Built on the open-source GalaxyBudsClient and Samsung's own plugin • Sony: 24 models, from the WH-1000XM2 to the WH-1000XM6, WF-1000XM5 and LinkBuds, not yet tried on real headphones. Written from Sony's own app and checked against the open-source Gadgetbridge • Bose: 22 models, from the QC35 to the QC Ultra 2 headphones and earbuds, not yet tried with PairFree. Written from Bose's own app and the open-source bosectl. PairFree never signs in to Bose's cloud, so anything that needs it stays out of reach • AirPods and Beats on Apple's chips: 30 models, not yet tried with PairFree. Ported from the open-source LibrePods. Android 17 is needed, or a Pixel on Android 16 QPR3, or a OnePlus, OPPO or realme phone on Android 16 • JBL: 83 models, from the Tune 520BT to the Live Buds 4, not yet tried with PairFree. Written from JBL's own app and checked against the open-source JblTray What it controls, on the models that have each: • Battery for each earbud and the case • Noise control: off, noise cancelling, transparency or ambient sound, with their scenes and levels • The equalizer: the brand's presets, your own curves and saved profiles • Touch controls: what each tap and hold does on each earbud, and turning touch off • Game mode, two devices at once, LDAC and LE Audio • The ear tip fit test, find my earbuds, voice prompts and water drain • Settings only one brand has, such as each Galaxy Bud's ambient sound level, voice detect, Sony's speak-to-chat and DSEE upscaling, Bose's listening modes, JBL's TalkThru, or the AirPods' Conversation Awareness • A status notification with the battery and buttons for noise control and game mode, in place of Google's Fast Pair notification if you like PairFree shows only what your earbuds support. If your model has not been tried, the Device tab copies a device report you can send, so it can be added for everyone. Record from the official app goes further: it reads, on your phone, what the brand's own app sends to your earbuds when you change a setting (and on SOUNDPEATS earbuds the equalizer curves), so PairFree can learn to do the same. It keeps nothing but the messages exchanged with your earbuds, and the report it makes masks their address and serial number. Close the brand's own app before using PairFree: only one app can control the earbuds at a time. PairFree is an independent project. It is not affiliated with or endorsed by SOUNDPEATS, Anker, Samsung, Sony, Bose, Harman (JBL) or Apple.
First release: Oct 18, 2026, 1 total release.
Most recent release: Oct 18, 2026.
Appears in 0 app stacks.
0 sats / 0 zaps received in the past year.
Sats Received
Underlying data available via MCP: app_zaps, app_releases.
Zap Count
Underlying data available via MCP: app_zaps, app_releases.
Releases
- Oct 18, 2026 0.2.0PairFree grows from a SoundPEATS app into one app for earbuds and headphones of many brands. Android 12 or newer. **Tried on real earbuds: the SOUNDPEATS H3 and Air5 Pro+, and the Soundcore Space A40.** Every other model is new in this release. Each brand's support is built from that brand's own app and from open-source projects, but nobody has tried those models with PairFree yet. The [model tables](https://github.com/Omega-Destroyer/PairFree#supported-brands) show what PairFree offers on each model. If you have one of them, a report from your earbuds helps a lot: see [Help add your model](https://github.com/Omega-Destroyer/PairFree#help-add-your-model). ### New in 0.2.0 **New brands:** - **Soundcore (Anker)**, 39 models, based on [OpenSCQ30](https://github.com/Oppzippy/OpenSCQ30) - **Samsung Galaxy Buds**, 16 models from the first Galaxy Buds to the Buds4 family, based on [GalaxyBudsClient](https://github.com/timschneeb/GalaxyBudsClient)
More…
- **Sony**, 24 headphones and earbuds - **Bose**, 22 headphones and earbuds - **JBL**, 83 headphones and earbuds - **AirPods and Apple-chip Beats**, 30 models, based on [LibrePods](https://github.com/kavishdevar/librepods). These need Android 17, or a Pixel on Android 16 QPR3, or a OnePlus, OPPO or realme phone on Android 16: before Android 17, Android does not let apps open the Bluetooth channel AirPods use. **Also new:** - An optional status notification for any brand: the battery and buttons for noise control in the notification shade while your earbuds are connected. - Record from the official app now works with every brand's app (Device tab), to help add and check models. - A drawing of each model, for every brand. - Batteries that earbuds report in steps show as bars. - Fixes for rare cases where unexpected data from the earbuds could stall the connection. ### Updating from 0.1.4 0.2.0 installs over 0.1.4 (the same signing key), but **it starts with default settings**: the settings moved to a new file when SoundPeter became PairFree. If you saved EQ profiles, export them in 0.1.4 first (Sound tab, Export file), then import them after updating. ### Privacy No account and no cloud. PairFree has no internet permission. What Android's app info lists: - **Nearby devices (Bluetooth):** to talk to your earbuds. - **Notifications** and a **link to your earbuds**: both optional, and only for the status notification. - **Bluetooth scanning**, marked as never used for location: asked only for JBL models whose Bluetooth LE side does not answer at its usual address. The scan stops when the earbuds are found. ### Install 1. Download **PairFree-0.2.0.apk** below and open it. Android asks to allow installing apps from your browser or file manager the first time. 2. Close your earbuds' official app. Only one app can control the earbuds at a time. 3. Open PairFree, allow Nearby devices, and pick your earbuds. PairFree has been accepted into F-Droid and appears there once F-Droid's build server publishes it. The build is reproducible: F-Droid builds the same source, checks that the result matches this APK, and then ships this APK with this signature. ### Known issues - **Untested models:** on brands and models nobody has tried yet, a setting may not work or may be missing. Please report what you see. - **Air5 Pro+ LDAC:** on a Samsung Galaxy S24 FE the phone refuses LDAC from the Air5 Pro+ and falls back to AAC, while the H3 runs LDAC on the same phone. It looks like an Air5 Pro+ firmware bug and has been reported to SoundPEATS. Leave LDAC off on the Air5 Pro+ to keep aptX. - Tested on one phone (Samsung Galaxy S24 FE, Android 16). ### Checksums - `PairFree-0.2.0.apk` SHA-256: `145747674f18864373570408abd09fb9c565f8ff08acdc3268929d186219f3d2` - Signing certificate SHA-256: `338c33bcdcb8c0eb2a04bd57ec63c08afcc9b2a893580211caa8bb50f54f5eb8` (the same key as every earlier release)