Giter Site home page Giter Site logo

d4rken-org / capod Goto Github PK

View Code? Open in Web Editor NEW
444.0 8.0 28.0 25.53 MB

A companion app for AirPods on Android.

Home Page: https://play.google.com/store/apps/details?id=eu.darken.capod

License: GNU General Public License v3.0

Ruby 0.54% Kotlin 96.93% Shell 2.53%
android bluetooth-low-energy airpods airpods-battery

capod's People

Contributors

a-gah avatar d4rken avatar gitgitro avatar jerretqueen avatar poussinou avatar seanathan10 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

capod's Issues

F-Droid compatibility

โ€ฆ as there are no releases, and no APKs attached to the (not existing) releases. As the loink to Play works, maybe you could add tag & APK here as well?

Hide "No device" notification

Hi there!
I would like to hide the notification of "No device" since it's pretty useless and spams the space on among notifications.

The trouble is that if I hide it with Android (12) settings, I'll hide the notification when pods are connected as well.

I guess that this notification is essential for the app staying in background to monitor BLE status.

So my suggestion is to divide notifications:

  • to stay in background
  • to show the info about pods (a.k.a. Device status)

The 2nd one will appear only when the pods are connected. While another one could be hidden via basic android tools. Seems like a win-win strategy.

What do you think?

/cc #3 #18

Genuine AirPods Gen 3 are detected as fake with seemingly incorrect information

My (genuine as far as I can tell) Gen 3 AirPods don't seem to be detected unless I explicitly set the device model in the settings to "AirPods (Gen 3)?" (i.e., fake). Once they are detected they seem to always show the pods as 100% battery and charging, and the case as 70% battery, no matter what.

I have tried a variety of combinations of compatibility settings in the app, but still the only way they were detected was by manually setting the device address and device model.

The debug information shown in the app when they are detected is:

[76: 07 13 01 13 20 75 AA 37 37 00 10 00 E4 E4 40 00 00 00 00 00 00]

I also attached a debug log recording where I just opened the case with the AirPods in it.

capod_logfile_1675365727977.log

Let me know if there is any other information I can gather to help solve this, and thank you for all the hard work that has been put into this app!

Option to change AirPods name

On Apple devices it's possible to change AirPods name, by default it's for example "nat's AirPods" or "AirPods (nat)" depending on device language.

Few months ago I asked about this on Discord but I don't think we understood each other and I was told that it should just be possible to use Windows/Android name change in Bluetooth settings but it's not the case because changing name using an Apple device changes how AirPods appear on other devices too.

Alternate notification icons for light mode

My device's dark mode keeps the notifications white which makes it impossible to see the icons next to the battery percentages. It would be nice to have a toggle for the icons to make them dark.

Update Firmware

I would find it useful if CAPod could update the firmware of my AirPods Pro. What do you think?

Show Firmware

I would find it useful if CAPod could show the firmware of my AirPods Pro. What do you think?

AirPods Pro 2 in-ear detection not working well

Hey there, first thanks a lot for the app love it!
Just bought AirPods Pro 2, and while setting up the app, I saw that the in-ear detection is not accurate, and it doesn't detect well if a pod is in-ear or not.
While checking the monitor mode a bit and putting them on and off, I can see that the pod's status is either long to update or not correct at all.
This is quite annoying for the auto-pause, which is not working, for instance.
I don't have much more info to provide for now, but I would be glad to help debug!

Automatic play/pause not working (AirPods 1st gen)

Ear detection with automatic play/pause is not working on AirPods 1st gen.
Firmware version : 6.8.8
All options are enabled and all requested permissions granted

When removing an earphone, the music does not stop. You must remove both earphones to stop it

Persistent notification

Would it be possible to use a different notification category for when there are no devices connected, so this can be switched off if preferred?

Material You Icon

Hi, using this app has been great so far! But one great thing to add would be Android 13 Tiramisu's Material You Icons.

Realme Buds Wireless 2S

Can you add realme Buds Wireless 2S?
Here is some info about this device (linux desktop screenshot)

Screenshot from 2022-08-05 14-29-29

If this is not helpful, can you tell me how you or other extracted Bluetooth data from other devices?
Thanks

Support for active data retrieval via direct connections with paired devices

Currently CAPod obtains data passively.
Supported devices (e.g. AirPods) regularly broadcast BLE advertisements.
CAPod receives these ScanRecords's and data with contains the information we display.
This does not require any pairing.

Most non-apple headphones only offer data via BLE characteristics which can be read if the headphones are paired and connected.

To support devices that only expose information via BLE characteristics, CAPod needs a new mechanism that obtains data from connected devices.

Some brainstorming:

  • Already have active worker if device is connected.
    • Flag devices that require active connection
    • Automatically launch worker for these devices (for Apple devices it can stay optional)
  • For connected devices establish a connection within CAPod, query services and characteristics
    • Map scan speed to intervals at which we query the device
      • Devices could have BLE notifications enabled, so in addition to manual refresh intervals, code should be reactive.
    • Some sort of caching?
    • Device modeling (interfaces) should work for this too.
    • Some kind of factory pattern that is created depending on the device type
  • Combine data from current BLE data provider with the new one
    • PodMonitor combines the current flow with broadcast data, and the new one
    • Extra connection based monitor lives app wide, worker just keeps it alive?
  • Adjust some texts/branding due to upcoming support for non apple devices
  • Make this a pro feature?
  • With a connection we can write data too
    • Extra settings for devices that support this? Maybe an action button shows in each card that supports this

TBC

i10, i11, i12 supoort

these airpods clones are suprisengly popular because they are cheap off brands that offer decent quality audio, touch control, and they use BT 5.

if they could be supported then I would like them to be added

Auto pause/play doesn't work with one pod mode on

Have 2 pods in with 1 pod mode on and auto pause/play doesn't work. I can see the icon that says in ear and the icon goes away when I take the pod out but music does not stop. Works fine with one pod mode off but I don't want to have to switch everytime I use just one AirPod.

Update UI for Popup

that would be cool and needed....
also would you mind opensourcing the app, i would gladly help with the design

btw this is by far the best app for airpods i tried, except for the ui!

Themed icon for Android 12+

It doesn't has a monochrome icon for themed icon for Android 12+ devices. Additional of this will be wooow

WF-1000XM4 Support

2022-07-28T15:17:03.011Z V/CAP:Bluetooth:Manager2: Bluetooth event (intent=Intent { act=android.bluetooth.device.action.ACL_CONNECTED flg=0x5000010 (has extras) }, extras=Bundle[{android.bluetooth.device.extra.DEVICE=F8:4E:17:42:F3:11}]) 2022-07-28T15:17:03.014Z D/CAP:Bluetooth:Manager2: Adding F8:4E:17:42:F3:11 to current devices [] 2022-07-28T15:17:03.016Z V/CAP:Monitor:Worker: MonitorMode.onEach(): (ALWAYS, []) 2022-07-28T15:17:03.016Z D/CAP:Monitor:Worker: Monitor mode: ALWAYS 2022-07-28T15:17:03.018Z V/CAP:Bluetooth:BleScanner: onScanResult(delay=22ms, callbackType=1, result=ScanResult{device=CC:79:80:67:CF:A0, scanRecord=ScanRecord [mAdvertiseFlags=-1, mServiceUuids=[0000fd82-0000-1000-8000-00805f9b34fb, 0000fe03-0000-1000-8000-00805f9b34fb], mServiceSolicitationUuids=[], mManufacturerSpecificData={301=[4, 0, 2, 2, -80, 50, 3, 1, -50, 113, -2, -117, -3, 16, 3, 0, 51, 0, 0, 0]}, mServiceData={}, mTxPowerLevel=-2147483648, mDeviceName=LE_WF-1000XM4

Let me know what else needs to be done, so we can work on this together and get this supported, thank you

Beats Fit Pro

Based on #31 the spotted hex data was possibly a pair of Beats Fit Pro and not AirPods Pro 2.

07 19 01 11 20 2B 88 0F 00 11 05 77 7B 0E E5 B8 AD 03 57 2F FA AA 2C F5 65 0F 52

Device ID: 11 20

Need someone with this device to confirm this though.

(request) Google Assistant Support

A nice to have would be support for the google assistant, also to remap the button action on Airpods to enable Google Assistant
Best regards

Nothing ear 1

Can you add support for nothing ear 1

It would be great

Thanks in advanced

AirPod Pro 2 actions problems

HI , my airpod pro 2

None of the pro actions are recognised at all (auto pause etc...)

My airpod firmware is 5b58 model number a2698

New functionality

Can you pkease add the functionality of the notification widget that it goes off when the airpods are disconnected.

notification can't allowed

When I update this app to version V2.1.1-rc0, the notifications themselves are no longer allowed.
I'm using Pixel 5a on android 13.
In the FOSS version I can allow notification permissions as usual.

2device pairing

Saw the feature in iPhone to listen music from 2 pairs of airpods at the time.
Is it possible to implement such feature on android via CApod?

AirPods Pro 2

I believe the AirPods Pro 2 model is 1120 in hex. Data appears to be the same as all other Pod devices.

Show Noise-Control Mode

AirPods Pro and AirPods Max have three noise-control modes: Active Noise Cancellation, Transparency mode, and Off. You can switch between them, depending on how much of your surroundings you want to hear.
https://support.apple.com/en-us/HT210643

It would be nice if CAPod could show the mode which is active.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.