diff --git a/ble_spam/protocols/continuity.c b/ble_spam/protocols/continuity.c index 9bed4a5c4..532b9e9ea 100644 --- a/ble_spam/protocols/continuity.c +++ b/ble_spam/protocols/continuity.c @@ -14,6 +14,13 @@ typedef struct { static const ContinuityColor colors_white[] = { {0x00, "White"}, }; +static const ContinuityColor colors_airpods_max[] = { + {0x00, "White"}, + {0x02, "Red"}, + {0x03, "Blue"}, + {0x0F, "Black"}, + {0x11, "Light Green"}, +}; static const ContinuityColor colors_beats_flex[] = { {0x00, "White"}, {0x01, "Black"}, @@ -21,10 +28,42 @@ static const ContinuityColor colors_beats_flex[] = { static const ContinuityColor colors_beats_solo_3[] = { {0x00, "White"}, {0x01, "Black"}, + {0x6, "Gray"}, + {0x7, "Gold/White"}, + {0x8, "Rose Gold"}, + {0x09, "Black"}, + {0xE, "Violet/White"}, + {0xF, "Bright Red"}, + {0x12, "Dark Red"}, + {0x13, "Swamp Green"}, + {0x14, "Dark Gray"}, + {0x15, "Dark Blue"}, + {0x1D, "Rose Gold 2"}, + {0x20, "Blue/Green"}, + {0x21, "Purple/Orange"}, + {0x22, "Deep Blue/ Light blue"}, + {0x23, "Magenta/Light Fuchsia"}, + {0x25, "Black/Red"}, + {0x2A, "Gray / Disney LTD"}, + {0x2E, "Pinkish white"}, + {0x3D, "Red/Blue"}, + {0x3E, "Yellow/Blue"}, + {0x3F, "White/Red"}, + {0x40, "Purple/White"}, + {0x5B, "Gold"}, + {0x5C, "Silver"}, }; static const ContinuityColor colors_powerbeats_3[] = { {0x00, "White"}, {0x01, "Black"}, + {0x0B, "Gray/Blue"}, + {0x0C, "Gray/Red"}, + {0x0D, "Gray/Green"}, + {0x12, "Red"}, + {0x13, "Swamp Green"}, + {0x14, "Gray"}, + {0x15, "Deep Blue"}, + {0x17, "Dark with Gold Logo"}, }; static const ContinuityColor colors_powerbeats_pro[] = { {0x00, "White"}, @@ -43,10 +82,18 @@ static const ContinuityColor colors_beats_solo_pro[] = { static const ContinuityColor colors_beats_studio_buds[] = { {0x00, "White"}, {0x01, "Black"}, + {0x02, "Red"}, + {0x03, "Blue"}, + {0x04, "Pink"}, + {0x06, "Silver"}, }; static const ContinuityColor colors_beats_x[] = { {0x00, "White"}, {0x01, "Black"}, + {0x02, "Blue"}, + {0x05, "Gray"}, + {0x1D, "Pink"}, + {0x25, "Dark/Red"}, }; static const ContinuityColor colors_beats_studio_3[] = { {0x00, "White"}, @@ -58,7 +105,8 @@ static const ContinuityColor colors_beats_studio_3[] = { {0x25, "Black / Red"}, {0x26, "Midnight Black"}, {0x27, "Desert Sand 2"}, - {0x28, "Clear blue/ gold"}, + {0x28, "Gray"}, + {0x29, "Clear blue/ gold"}, {0x42, "Green Forest camo"}, {0x43, "White Camo"}, }; @@ -69,10 +117,21 @@ static const ContinuityColor colors_beats_studio_pro[] = { static const ContinuityColor colors_beats_fit_pro[] = { {0x00, "White"}, {0x01, "Black"}, + {0x02, "Pink"}, + {0x03, "Grey/White"}, + {0x04, "Full Pink"}, + {0x05, "Neon Green"}, + {0x06, "Night Blue"}, + {0x07, "Light Pink"}, + {0x08, "Brown"}, + {0x09, "Dark Brown"}, }; static const ContinuityColor colors_beats_studio_buds_[] = { - {0x00, "White"}, - {0x01, "Black"}, + {0x00, "Black"}, + {0x01, "White"}, + {0x02, "Transparent"}, + {0x03, "Silver"}, + {0x04, "Pink"}, }; static const struct { @@ -82,7 +141,7 @@ static const struct { const uint8_t colors_count; } pp_models[] = { {0x0E20, "AirPods Pro", colors_white, COUNT_OF(colors_white)}, - {0x0A20, "AirPods Max", colors_white, COUNT_OF(colors_white)}, + {0x0A20, "AirPods Max", colors_airpods_max, COUNT_OF(colors_airpods_max)}, {0x0055, "Airtag", colors_white, COUNT_OF(colors_white)}, {0x0030, "Hermes Airtag", colors_white, COUNT_OF(colors_white)}, {0x0220, "AirPods", colors_white, COUNT_OF(colors_white)},