work out the accessiblity settings packets

This commit is contained in:
Kavish Devar
2025-01-20 20:18:24 +05:30
parent 7a06f3055c
commit 3a3074f592
2 changed files with 56 additions and 3 deletions

View File

@@ -211,6 +211,48 @@ The level can be any value between 0 and 100, 0 to allow maximum noise (i.e. min
*I find it quite funny how I have greater control over the noise control on the AirPods on non-Apple devices than on Apple devices, becuase on Apple Devices, there are just 3 options More Noise (0), Midway through (50), and Less Noise (100), but here I can set any value between 0 and 100.*
## Accessiblity Settings
## Headphone Accomodation
```
04 00 04 00 53 00 84 00 02 02 [Phone] [Media]
[EQ1][EQ2][EQ3][EQ4][EQ5][EQ6][EQ7][EQ8]
duplicated thrice for some reason
```
| Data | Type | Value range |
|---------------------|---------------|-----------------------------|
| Phone | Decimal | 1 (Enabled) or 2 (Disabled) |
| Media | Decimal | 1 (Enabled) or 2 (Disabled) |
| EQ | Little Endian | 0 to 100 |
## Customize Transparency mode
```
52 18 00
For left bud
[Enabled]
[EQ1][EQ2][EQ3][EQ4][EQ5][EQ6][EQ7][EQ8]
[Amplification]
[Tone]
[Conversation Boost]
[Ambient Noise Reduction]
00 0080 3F
<same for the right bud>
```
All values are formatted as Little Endian from float values.
| Data | Type | Value range |
|---------------------|---------------|-------------|
| Enabled | Little Endian | 0 or 1 |
| EQ | Little Endian | 0 to 100 |
| Amplification | Little Endian | -1 to 1 |
| Tone | Little Endian | -1 to 1 |
| Conversation Boost | Little Endian | 0 or 1 |
> [!IMPORTANT]
> Also send the [Headphone Accomodation](#headphone-accomodation) after this.
## Configure Stem Long Press
I have noted all the packets sent to configure what the press and hold of the steam should do. The packets sent are specific to the current state. And are probably overwritten everytime the AirPods are connected to a new (apple) device that is not synced with icloud (i think)... So, for non-Apple device too, the configuration needs to be stored and overwritten everytime the AirPods are connected to the device. That is the only way to keep the configuration.

View File

@@ -37,11 +37,22 @@ This tray app communicates with a daemon with the help of a UNIX socket. The dae
Currently, there's a [bug in the Android Bluetooth stack](https://issuetracker.google.com/issues/371713238) that prevents the app from working (upvote the issue - click the '+1' icon on the top right corner of IssueTracker). This project provides a root module which patches the bug.
> [!CAUTION]
> **This workaround requires root access.** Try at your own risk. It may break your bluetooth, and I am not responsible for any damage caused by this module.
> **This workaround requires root access.** Try at your own risk. It may break your bluetooth, and I am not responsible for any damage caused by tehemodule.
To install it, just download the `btl2capfix.zip` from [a release](https://github.com/kavishdevar/aln/releases) and install it from your root manager app.
As root run the following command:
```sh
lsof | grep libbluetooth
```
### Features
Send me the files (in the [support channel](https://t.me/airpodslikenormal_discussion))along with the paths, whichever are listed. The paths will be one of the following:
```
/system/lib64/libbluetooth_jni.so
/apex/com.android.btservices/lib64/libbluetooth_jni.so
```
If the command lists a file named `libbluetooth_qti.so`, unfortuntaely, I won't be able to patch the library.
### Android features
#### Renaming the Airpods
When you rename the Airpods using the app, you'll need to re-pair it with your phone. Currently, user-level apps cannot directly rename a Bluetooth device. After re-pairing, your phone will display the updated name!