diff --git a/AirPod-Keys.md b/AirPod-Keys.md
index 6a8de1b..cf4568e 100644
--- a/AirPod-Keys.md
+++ b/AirPod-Keys.md
@@ -1 +1,112 @@
-TODO()
\ No newline at end of file
+# AirPod Keys
+
+Currently, Android doesn't support direct connections to AirPods, which is a [technical limitation](https://github.com/d4rken-org/capod/issues/215). Google might address this issue in future Android versions.
+
+However, AirPods regularly broadcast a status message using Bluetooth Low Energy (BLE), and this message contains valuable information.
+
+Each broadcast includes the **public address** of the AirPods, but to maintain privacy, AirPods frequently rotate this address to prevent tracking. The broadcast message consists of two parts: a **public** and an **encrypted** section.
+
+- **Public part**: This is the part CAPod uses by default, as it contains publicly accessible information like battery status, charging state, etc.
+
+- **Encrypted part**: To access the encrypted data (like more precise battery levels), an **encryption key** is required. This key, along with an **address key**, is exchanged when the AirPods are paired with a new device.
+
+The two key pieces of information that we need are:
+
+1. **Identity Resolving Key (IRK)**: This key links the randomized Bluetooth addresses broadcasted by the AirPods. It allows CAPod to uniquely identify your AirPods, eliminating the need for heuristics or signal strength checks. This makes detection much more reliable, especially when there are multiple AirPods nearby.
+
+2. **Encryption Key**: This key decrypts the private part of the broadcasted message, allowing CAPod to retrieve more accurate battery levels (e.g., 1% steps instead of 10%).
+
+## Retrieving the Keys
+
+At present, there’s no direct method to retrieve the keys on an Android device. However, the **IRK** and **encryption key** remain the same, regardless of the device the AirPods are paired with. This means we can retrieve the keys by pairing the AirPods with a device that supports extracting them.
+
+### macOS
+
+Any MacOS version should work. This example is from a Mac Air (M1) running Sonoma 14.6.1.
+
+1. Pair the AirPods. They should show up in the list of Bluetooth devices.
+
+
+
+
+
+2. Find the Bluetooth address. To do this you can hold the `Option` key and then click the Bluetooth icon in the Macbook statusbar. Find your AirPods and remember their address. Mine start with `9C:FC:...`.
+
+
+
+
+3. Open the MacOS KeyChain app. Here we will look for the keys related to our paired AirPods.
+
+
+
+
+
+4. Find the entry related to your paired Airpods. It should be called `MobileBluetooth`, and is usually under the `iCloud` tab. There may be multiple `MobileBluetooth` entries. You are looking for the entry that contains the Bluetooth address from step 2 as "Account" name.
+
+
+
+
+
+5. Open that entry. At the bottom is an unticked checkbox called `Show password`. Click that. You will be prompted 3 times (yes actually 3 times, "Just MacOS Things :tm:`) to enter your password. If all done correctly, the text field next to the checkbox should show `
+
+
+
+
+
+
+6. Copy the text from the text field in step 5. We are interested in the values of `MagicAccEncKey` (encryption key) and `MagicAccIRK` (address key). The full copied text should look similar to this:
+
+```xml
+
+
+
+
+ LinkKey
+ AA-D4-58-F6-53-45-61-BC-CA-BD-41-C1-EA-AA-63-A5
+ LinkKeyType
+ UnAuthenticated
+ LocalAddress
+ AA:A6:F6:FF:FA:17
+ MagicAccEncKey
+ 3A-9C-81-57-E6-44-7F-F2-FB-8E-07-63-6C-99-E1-29
+ MagicAccHint
+ 8A-6A-FE-91-62-46-AE-31-AB-C6-F6-FC-A5-D9-DC-96
+ MagicAccIRK
+ 71-44-65-1E-E2-CA-D1-26-F2-4E-20-EE-3E-CC-DE-77
+ MagicAccKey
+ F1-E6-7F-23-B5-21-22-CE-81-19-72-EB-66-37-D0-BE
+ MagicAccRachet
+ 00-00-00-01-02
+
+
+```
+
+7. Open CAPod (v2.17.0-rc0 or later) and go to Settings>Settings. Enter the value of `MagicAccIRK` in the "Identity key" setting. Enter the value of and the value of `MagicAccEncKey` into the `Encryption Key` setting
+
+
+
+
+
+
+
+
+
+
+
+8. If all done correctly, your Airpods should show a little key icon in the dashboard.
+
+
+
+
+
+
+
+
+### Linux
+
+You can retrieve the keys on Linux using the [Home Assistant Private BLE Device Integration](https://www.home-assistant.io/integrations/private_ble_device/). This integration allows you to extract the necessary information from the AirPods.
+
+### Windows
+
+Similarly, you can retrieve the keys on Windows using the [Home Assistant Private BLE Device Integration](https://www.home-assistant.io/integrations/private_ble_device/).