LCOV - code coverage report
Current view: top level - zephyr/bluetooth - assigned_numbers.h Coverage Total Hit
Test: new.info Lines: 100.0 % 454 454
Test Date: 2025-09-25 19:22:35

            Line data    Source code
       1            1 : /** @file
       2              :  *  @brief Bluetooth Assigned Numbers, codes and identifiers.
       3              :  */
       4              : 
       5              : /*
       6              :  * Copyright (c) 2015-2025 Intel Corporation
       7              :  * Copyright (c) 2017-2025 Nordic Semiconductor ASA
       8              :  *
       9              :  * SPDX-License-Identifier: Apache-2.0
      10              :  */
      11              : 
      12              : #ifndef ZEPHYR_INCLUDE_BLUETOOTH_ASSIGNED_NUMBERS_H_
      13              : #define ZEPHYR_INCLUDE_BLUETOOTH_ASSIGNED_NUMBERS_H_
      14              : 
      15              : /**
      16              :  * @brief Bluetooth Assigned Numbers, codes and identifiers.
      17              :  * @defgroup bt_assigned_numbers Assigned Numbers.
      18              :  * @since 1.0
      19              :  * @version 1.0.0
      20              :  * @ingroup bluetooth
      21              :  * @{
      22              :  */
      23              : 
      24              : #include <zephyr/sys/util_macro.h>
      25              : 
      26              : #ifdef __cplusplus
      27              : extern "C" {
      28              : #endif
      29              : 
      30              : /**
      31              :  * @brief Core Specification Assigned Numbers
      32              :  * @defgroup bt_assigned_numbers_core Core Specification Assigned Numbers
      33              :  * @ingroup bt_assigned_numbers
      34              :  * @{
      35              :  */
      36              : 
      37              : /**
      38              :  * @name Appearance Numbers
      39              :  *
      40              :  * Last Modified on 2023-01-05
      41              :  * @{
      42              :  */
      43              : 
      44              : /** Generic Unknown */
      45            1 : #define BT_APPEARANCE_UNKNOWN                               0x0000
      46              : /** Generic Phone */
      47            1 : #define BT_APPEARANCE_GENERIC_PHONE                         0x0040
      48              : /** Generic Computer */
      49            1 : #define BT_APPEARANCE_GENERIC_COMPUTER                      0x0080
      50              : /** Desktop Workstation */
      51            1 : #define BT_APPEARANCE_COMPUTER_DESKTOP_WORKSTATION          0x0081
      52              : /** Server-class Computer */
      53            1 : #define BT_APPEARANCE_COMPUTER_SERVER_CLASS                 0x0082
      54              : /** Laptop */
      55            1 : #define BT_APPEARANCE_COMPUTER_LAPTOP                       0x0083
      56              : /** Handheld PC/PDA (clamshell) */
      57            1 : #define BT_APPEARANCE_COMPUTER_HANDHELD_PCPDA               0x0084
      58              : /** PalmĀ­size PC/PDA */
      59            1 : #define BT_APPEARANCE_COMPUTER_PALMSIZE_PCPDA               0x0085
      60              : /** Wearable computer (watch size) */
      61            1 : #define BT_APPEARANCE_COMPUTER_WEARABLE_COMPUTER            0x0086
      62              : /** Tablet */
      63            1 : #define BT_APPEARANCE_COMPUTER_TABLET                       0x0087
      64              : /** Docking Station */
      65            1 : #define BT_APPEARANCE_COMPUTER_DOCKING_STATION              0x0088
      66              : /** All in One */
      67            1 : #define BT_APPEARANCE_COMPUTER_ALL_IN_ONE                   0x0089
      68              : /** Blade Server */
      69            1 : #define BT_APPEARANCE_COMPUTER_BLADE_SERVER                 0x008A
      70              : /** Convertible */
      71            1 : #define BT_APPEARANCE_COMPUTER_CONVERTIBLE                  0x008B
      72              : /** Detachable */
      73            1 : #define BT_APPEARANCE_COMPUTER_DETACHABLE                   0x008C
      74              : /** IoT Gateway */
      75            1 : #define BT_APPEARANCE_COMPUTER_IOT_GATEWAY                  0x008D
      76              : /** Mini PC */
      77            1 : #define BT_APPEARANCE_COMPUTER_MINI_PC                      0x008E
      78              : /** Stick PC */
      79            1 : #define BT_APPEARANCE_COMPUTER_STICK_PC                     0x008F
      80              : /** Generic Watch */
      81            1 : #define BT_APPEARANCE_GENERIC_WATCH                         0x00C0
      82              : /** Sports Watch */
      83            1 : #define BT_APPEARANCE_SPORTS_WATCH                          0x00C1
      84              : /** Smartwatch */
      85            1 : #define BT_APPEARANCE_SMARTWATCH                            0x00C2
      86              : /** Generic Clock */
      87            1 : #define BT_APPEARANCE_GENERIC_CLOCK                         0x0100
      88              : /** Generic Display */
      89            1 : #define BT_APPEARANCE_GENERIC_DISPLAY                       0x0140
      90              : /** Generic Remote Control */
      91            1 : #define BT_APPEARANCE_GENERIC_REMOTE                        0x0180
      92              : /** Generic Eye-glasses */
      93            1 : #define BT_APPEARANCE_GENERIC_EYEGLASSES                    0x01C0
      94              : /** Generic Tag */
      95            1 : #define BT_APPEARANCE_GENERIC_TAG                           0x0200
      96              : /** Generic Keyring */
      97            1 : #define BT_APPEARANCE_GENERIC_KEYRING                       0x0240
      98              : /** Generic Media Player */
      99            1 : #define BT_APPEARANCE_GENERIC_MEDIA_PLAYER                  0x0280
     100              : /** Generic Barcode Scanner */
     101            1 : #define BT_APPEARANCE_GENERIC_BARCODE_SCANNER               0x02C0
     102              : /** Generic Thermometer */
     103            1 : #define BT_APPEARANCE_GENERIC_THERMOMETER                   0x0300
     104              : /** Ear Thermometer */
     105            1 : #define BT_APPEARANCE_THERMOMETER_EAR                       0x0301
     106              : /** Generic Heart Rate Sensor */
     107            1 : #define BT_APPEARANCE_GENERIC_HEART_RATE                    0x0340
     108              : /** Heart Rate Belt */
     109            1 : #define BT_APPEARANCE_HEART_RATE_BELT                       0x0341
     110              : /** Generic Blood Pressure */
     111            1 : #define BT_APPEARANCE_GENERIC_BLOOD_PRESSURE                0x0380
     112              : /** Arm Blood Pressure */
     113            1 : #define BT_APPEARANCE_BLOOD_PRESSURE_ARM                    0x0381
     114              : /** Wrist Blood Pressure */
     115            1 : #define BT_APPEARANCE_BLOOD_PRESSURE_WRIST                  0x0382
     116              : /** Generic Human Interface Device */
     117            1 : #define BT_APPEARANCE_GENERIC_HID                           0x03C0
     118              : /** Keyboard */
     119            1 : #define BT_APPEARANCE_HID_KEYBOARD                          0x03C1
     120              : /** Mouse */
     121            1 : #define BT_APPEARANCE_HID_MOUSE                             0x03C2
     122              : /** Joystick */
     123            1 : #define BT_APPEARANCE_HID_JOYSTICK                          0x03C3
     124              : /** Gamepad */
     125            1 : #define BT_APPEARANCE_HID_GAMEPAD                           0x03C4
     126              : /** Digitizer Tablet */
     127            1 : #define BT_APPEARANCE_HID_DIGITIZER_TABLET                  0x03C5
     128              : /** Card Reader */
     129            1 : #define BT_APPEARANCE_HID_CARD_READER                       0x03C6
     130              : /** Digital Pen */
     131            1 : #define BT_APPEARANCE_HID_DIGITAL_PEN                       0x03C7
     132              : /** Barcode Scanner */
     133            1 : #define BT_APPEARANCE_HID_BARCODE_SCANNER                   0x03C8
     134              : /** Touchpad */
     135            1 : #define BT_APPEARANCE_HID_TOUCHPAD                          0x03C9
     136              : /** Presentation Remote */
     137            1 : #define BT_APPEARANCE_HID_PRESENTATION_REMOTE               0x03CA
     138              : /** Generic Glucose Meter */
     139            1 : #define BT_APPEARANCE_GENERIC_GLUCOSE                       0x0400
     140              : /** Generic Running Walking Sensor */
     141            1 : #define BT_APPEARANCE_GENERIC_WALKING                       0x0440
     142              : /** In-Shoe Running Walking Sensor */
     143            1 : #define BT_APPEARANCE_WALKING_IN_SHOE                       0x0441
     144              : /** On-Shoe Running Walking Sensor */
     145            1 : #define BT_APPEARANCE_WALKING_ON_SHOE                       0x0442
     146              : /** On-Hip Running Walking Sensor */
     147            1 : #define BT_APPEARANCE_WALKING_ON_HIP                        0x0443
     148              : /** Generic Cycling */
     149            1 : #define BT_APPEARANCE_GENERIC_CYCLING                       0x0480
     150              : /** Cycling Computer */
     151            1 : #define BT_APPEARANCE_CYCLING_COMPUTER                      0x0481
     152              : /** Speed Sensor */
     153            1 : #define BT_APPEARANCE_CYCLING_SPEED                         0x0482
     154              : /** Cadence Sensor */
     155            1 : #define BT_APPEARANCE_CYCLING_CADENCE                       0x0483
     156              : /** Power Sensor */
     157            1 : #define BT_APPEARANCE_CYCLING_POWER                         0x0484
     158              : /** Speed and Cadence Sensor */
     159            1 : #define BT_APPEARANCE_CYCLING_SPEED_CADENCE                 0x0485
     160              : /** Generic Control Device */
     161            1 : #define BT_APPEARANCE_GENERIC_CONTROL_DEVICE                0x04C0
     162              : /** Switch */
     163            1 : #define BT_APPEARANCE_CONTROL_SWITCH                        0x04C1
     164              : /** Multi-switch */
     165            1 : #define BT_APPEARANCE_CONTROL_MULTI_SWITCH                  0x04C2
     166              : /** Button */
     167            1 : #define BT_APPEARANCE_CONTROL_BUTTON                        0x04C3
     168              : /** Slider */
     169            1 : #define BT_APPEARANCE_CONTROL_SLIDER                        0x04C4
     170              : /** Rotary Switch */
     171            1 : #define BT_APPEARANCE_CONTROL_ROTARY_SWITCH                 0x04C5
     172              : /** Touch Panel */
     173            1 : #define BT_APPEARANCE_CONTROL_TOUCH_PANEL                   0x04C6
     174              : /** Single Switch */
     175            1 : #define BT_APPEARANCE_CONTROL_SINGLE_SWITCH                 0x04C7
     176              : /** Double Switch */
     177            1 : #define BT_APPEARANCE_CONTROL_DOUBLE_SWITCH                 0x04C8
     178              : /** Triple Switch */
     179            1 : #define BT_APPEARANCE_CONTROL_TRIPLE_SWITCH                 0x04C9
     180              : /** Battery Switch */
     181            1 : #define BT_APPEARANCE_CONTROL_BATTERY_SWITCH                0x04CA
     182              : /** Energy Harvesting Switch */
     183            1 : #define BT_APPEARANCE_CONTROL_ENERGY_HARVESTING_SWITCH      0x04CB
     184              : /** Push Button */
     185            1 : #define BT_APPEARANCE_CONTROL_PUSH_BUTTON                   0x04CC
     186              : /** Generic Network Device */
     187            1 : #define BT_APPEARANCE_GENERIC_NETWORK_DEVICE                0x0500
     188              : /** Access Point */
     189            1 : #define BT_APPEARANCE_NETWORK_ACCESS_POINT                  0x0501
     190              : /** Mesh Device */
     191            1 : #define BT_APPEARANCE_NETWORK_MESH_DEVICE                   0x0502
     192              : /** Mesh Network Proxy */
     193            1 : #define BT_APPEARANCE_NETWORK_MESH_PROXY                    0x0503
     194              : /** Generic Sensor */
     195            1 : #define BT_APPEARANCE_GENERIC_SENSOR                        0x0540
     196              : /** Motion Sensor */
     197            1 : #define BT_APPEARANCE_SENSOR_MOTION                         0x0541
     198              : /** Air quality Sensor */
     199            1 : #define BT_APPEARANCE_SENSOR_AIR_QUALITY                    0x0542
     200              : /** Temperature Sensor */
     201            1 : #define BT_APPEARANCE_SENSOR_TEMPERATURE                    0x0543
     202              : /** Humidity Sensor */
     203            1 : #define BT_APPEARANCE_SENSOR_HUMIDITY                       0x0544
     204              : /** Leak Sensor */
     205            1 : #define BT_APPEARANCE_SENSOR_LEAK                           0x0545
     206              : /** Smoke Sensor */
     207            1 : #define BT_APPEARANCE_SENSOR_SMOKE                          0x0546
     208              : /** Occupancy Sensor */
     209            1 : #define BT_APPEARANCE_SENSOR_OCCUPANCY                      0x0547
     210              : /** Contact Sensor */
     211            1 : #define BT_APPEARANCE_SENSOR_CONTACT                        0x0548
     212              : /** Carbon Monoxide Sensor */
     213            1 : #define BT_APPEARANCE_SENSOR_CARBON_MONOXIDE                0x0549
     214              : /** Carbon Dioxide Sensor */
     215            1 : #define BT_APPEARANCE_SENSOR_CARBON_DIOXIDE                 0x054A
     216              : /** Ambient Light Sensor */
     217            1 : #define BT_APPEARANCE_SENSOR_AMBIENT_LIGHT                  0x054B
     218              : /** Energy Sensor */
     219            1 : #define BT_APPEARANCE_SENSOR_ENERGY                         0x054C
     220              : /** Color Light Sensor */
     221            1 : #define BT_APPEARANCE_SENSOR_COLOR_LIGHT                    0x054D
     222              : /** Rain Sensor */
     223            1 : #define BT_APPEARANCE_SENSOR_RAIN                           0x054E
     224              : /** Fire Sensor */
     225            1 : #define BT_APPEARANCE_SENSOR_FIRE                           0x054F
     226              : /** Wind Sensor */
     227            1 : #define BT_APPEARANCE_SENSOR_WIND                           0x0550
     228              : /** Proximity Sensor */
     229            1 : #define BT_APPEARANCE_SENSOR_PROXIMITY                      0x0551
     230              : /** Multi-Sensor */
     231            1 : #define BT_APPEARANCE_SENSOR_MULTI                          0x0552
     232              : /** Flush Mounted Sensor */
     233            1 : #define BT_APPEARANCE_SENSOR_FLUSH_MOUNTED                  0x0553
     234              : /** Ceiling Mounted Sensor */
     235            1 : #define BT_APPEARANCE_SENSOR_CEILING_MOUNTED                0x0554
     236              : /** Wall Mounted Sensor */
     237            1 : #define BT_APPEARANCE_SENSOR_WALL_MOUNTED                   0x0555
     238              : /** Multisensor */
     239            1 : #define BT_APPEARANCE_MULTISENSOR                           0x0556
     240              : /** Energy Meter */
     241            1 : #define BT_APPEARANCE_SENSOR_ENERGY_METER                   0x0557
     242              : /** Flame Detector */
     243            1 : #define BT_APPEARANCE_SENSOR_FLAME_DETECTOR                 0x0558
     244              : /** Vehicle Tire Pressure Sensor */
     245            1 : #define BT_APPEARANCE_SENSOR_VEHICLE_TIRE_PRESSURE          0x0559
     246              : /** Generic Light Fixtures */
     247            1 : #define BT_APPEARANCE_GENERIC_LIGHT_FIXTURES                0x0580
     248              : /** Wall Light */
     249            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_WALL                   0x0581
     250              : /** Ceiling Light */
     251            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_CEILING                0x0582
     252              : /** Floor Light */
     253            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_FLOOR                  0x0583
     254              : /** Cabinet Light */
     255            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_CABINET                0x0584
     256              : /** Desk Light */
     257            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_DESK                   0x0585
     258              : /** Troffer Light */
     259            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_TROFFER                0x0586
     260              : /** Pendant Light */
     261            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_PENDANT                0x0587
     262              : /** In-ground Light */
     263            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_IN_GROUND              0x0588
     264              : /** Flood Light */
     265            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_FLOOD                  0x0589
     266              : /** Underwater Light */
     267            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_UNDERWATER             0x058A
     268              : /** Bollard with Light */
     269            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_BOLLARD_WITH           0x058B
     270              : /** Pathway Light */
     271            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_PATHWAY                0x058C
     272              : /** Garden Light */
     273            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_GARDEN                 0x058D
     274              : /** Pole-top Light */
     275            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_POLE_TOP               0x058E
     276              : /** Spotlight */
     277            1 : #define BT_APPEARANCE_SPOT_LIGHT                            0x058F
     278              : /** Linear Light */
     279            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_LINEAR                 0x0590
     280              : /** Street Light */
     281            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_STREET                 0x0591
     282              : /** Shelves Light */
     283            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_SHELVES                0x0592
     284              : /** Bay Light */
     285            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_BAY                    0x0593
     286              : /** Emergency Exit Light */
     287            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_EMERGENCY_EXIT         0x0594
     288              : /** Light Controller */
     289            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_CONTROLLER             0x0595
     290              : /** Light Driver */
     291            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_DRIVER                 0x0596
     292              : /** Bulb */
     293            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_BULB                   0x0597
     294              : /** Low-bay Light */
     295            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_LOW_BAY                0x0598
     296              : /** High-bay Light */
     297            1 : #define BT_APPEARANCE_LIGHT_FIXTURES_HIGH_BAY               0x0599
     298              : /** Generic Fan */
     299            1 : #define BT_APPEARANCE_GENERIC_FAN                           0x05C0
     300              : /** Ceiling Fan */
     301            1 : #define BT_APPEARANCE_FAN_CEILING                           0x05C1
     302              : /** Axial Fan */
     303            1 : #define BT_APPEARANCE_FAN_AXIAL                             0x05C2
     304              : /** Exhaust Fan */
     305            1 : #define BT_APPEARANCE_FAN_EXHAUST                           0x05C3
     306              : /** Pedestal Fan */
     307            1 : #define BT_APPEARANCE_FAN_PEDESTAL                          0x05C4
     308              : /** Desk Fan */
     309            1 : #define BT_APPEARANCE_FAN_DESK                              0x05C5
     310              : /** Wall Fan */
     311            1 : #define BT_APPEARANCE_FAN_WALL                              0x05C6
     312              : /** Generic HVAC */
     313            1 : #define BT_APPEARANCE_GENERIC_HVAC                          0x0600
     314              : /** Thermostat */
     315            1 : #define BT_APPEARANCE_HVAC_THERMOSTAT                       0x0601
     316              : /** Humidifier */
     317            1 : #define BT_APPEARANCE_HVAC_HUMIDIFIER                       0x0602
     318              : /** De-humidifier */
     319            1 : #define BT_APPEARANCE_HVAC_DEHUMIDIFIER                     0x0603
     320              : /** Heater */
     321            1 : #define BT_APPEARANCE_HVAC_HEATER                           0x0604
     322              : /** Radiator */
     323            1 : #define BT_APPEARANCE_HVAC_RADIATOR                         0x0605
     324              : /** Boiler */
     325            1 : #define BT_APPEARANCE_HVAC_BOILER                           0x0606
     326              : /** Heat Pump */
     327            1 : #define BT_APPEARANCE_HVAC_HEAT_PUMP                        0x0607
     328              : /** Infrared Heater */
     329            1 : #define BT_APPEARANCE_HVAC_INFRARED_HEATER                  0x0608
     330              : /** Radiant Panel Heater */
     331            1 : #define BT_APPEARANCE_HVAC_RADIANT_PANEL_HEATER             0x0609
     332              : /** Fan Heater */
     333            1 : #define BT_APPEARANCE_HVAC_FAN_HEATER                       0x060A
     334              : /** Air Curtain */
     335            1 : #define BT_APPEARANCE_HVAC_AIR_CURTAIN                      0x060B
     336              : /** Generic Air Conditioning */
     337            1 : #define BT_APPEARANCE_GENERIC_AIR_CONDITIONING              0x0640
     338              : /** Generic Humidifier */
     339            1 : #define BT_APPEARANCE_GENERIC_HUMIDIFIER                    0x0680
     340              : /** Generic Heating */
     341            1 : #define BT_APPEARANCE_GENERIC_HEATING                       0x06C0
     342              : /** Radiator */
     343            1 : #define BT_APPEARANCE_HEATING_RADIATOR                      0x06C1
     344              : /** Boiler */
     345            1 : #define BT_APPEARANCE_HEATING_BOILER                        0x06C2
     346              : /** Heat Pump */
     347            1 : #define BT_APPEARANCE_HEATING_HEAT_PUMP                     0x06C3
     348              : /** Infrared Heater */
     349            1 : #define BT_APPEARANCE_HEATING_INFRARED_HEATER               0x06C4
     350              : /** Radiant Panel Heater */
     351            1 : #define BT_APPEARANCE_HEATING_RADIANT_PANEL_HEATER          0x06C5
     352              : /** Fan Heater */
     353            1 : #define BT_APPEARANCE_HEATING_FAN_HEATER                    0x06C6
     354              : /** Air Curtain */
     355            1 : #define BT_APPEARANCE_HEATING_AIR_CURTAIN                   0x06C7
     356              : /** Generic Access Control */
     357            1 : #define BT_APPEARANCE_GENERIC_ACCESS_CONTROL                0x0700
     358              : /** Access Door */
     359            1 : #define BT_APPEARANCE_CONTROL_ACCESS_DOOR                   0x0701
     360              : /** Garage Door */
     361            1 : #define BT_APPEARANCE_CONTROL_GARAGE_DOOR                   0x0702
     362              : /** Emergency Exit Door */
     363            1 : #define BT_APPEARANCE_CONTROL_EMERGENCY_EXIT_DOOR           0x0703
     364              : /** Access Lock */
     365            1 : #define BT_APPEARANCE_CONTROL_ACCESS_LOCK                   0x0704
     366              : /** Elevator */
     367            1 : #define BT_APPEARANCE_CONTROL_ELEVATOR                      0x0705
     368              : /** Window */
     369            1 : #define BT_APPEARANCE_CONTROL_WINDOW                        0x0706
     370              : /** Entrance Gate */
     371            1 : #define BT_APPEARANCE_CONTROL_ENTRANCE_GATE                 0x0707
     372              : /** Door Lock */
     373            1 : #define BT_APPEARANCE_CONTROL_DOOR_LOCK                     0x0708
     374              : /** Locker */
     375            1 : #define BT_APPEARANCE_CONTROL_LOCKER                        0x0709
     376              : /** Generic Motorized Device */
     377            1 : #define BT_APPEARANCE_GENERIC_MOTORIZED_DEVICE              0x0740
     378              : /** Motorized Gate */
     379            1 : #define BT_APPEARANCE_MOTORIZED_GATE                        0x0741
     380              : /** Awning */
     381            1 : #define BT_APPEARANCE_MOTORIZED_AWNING                      0x0742
     382              : /** Blinds or Shades */
     383            1 : #define BT_APPEARANCE_MOTORIZED_BLINDS_OR_SHADES            0x0743
     384              : /** Curtains */
     385            1 : #define BT_APPEARANCE_MOTORIZED_CURTAINS                    0x0744
     386              : /** Screen */
     387            1 : #define BT_APPEARANCE_MOTORIZED_SCREEN                      0x0745
     388              : /** Generic Power Device */
     389            1 : #define BT_APPEARANCE_GENERIC_POWER_DEVICE                  0x0780
     390              : /** Power Outlet */
     391            1 : #define BT_APPEARANCE_POWER_OUTLET                          0x0781
     392              : /** Power Strip */
     393            1 : #define BT_APPEARANCE_POWER_STRIP                           0x0782
     394              : /** Plug */
     395            1 : #define BT_APPEARANCE_POWER_PLUG                            0x0783
     396              : /** Power Supply */
     397            1 : #define BT_APPEARANCE_POWER_SUPPLY                          0x0784
     398              : /** LED Driver */
     399            1 : #define BT_APPEARANCE_POWER_LED_DRIVER                      0x0785
     400              : /** Fluorescent Lamp Gear */
     401            1 : #define BT_APPEARANCE_POWER_FLUORESCENT_LAMP_GEAR           0x0786
     402              : /** HID Lamp Gear */
     403            1 : #define BT_APPEARANCE_POWER_HID_LAMP_GEAR                   0x0787
     404              : /** Charge Case */
     405            1 : #define BT_APPEARANCE_POWER_CHARGE_CASE                     0x0788
     406              : /** Power Bank */
     407            1 : #define BT_APPEARANCE_POWER_POWER_BANK                      0x0789
     408              : /** Generic Light Source */
     409            1 : #define BT_APPEARANCE_GENERIC_LIGHT_SOURCE                  0x07C0
     410              : /** Incandescent Light Bulb */
     411            1 : #define BT_APPEARANCE_LIGHT_SOURCE_INCANDESCENT_BULB        0x07C1
     412              : /** LED Lamp */
     413            1 : #define BT_APPEARANCE_LIGHT_SOURCE_LED_LAMP                 0x07C2
     414              : /** HID Lamp */
     415            1 : #define BT_APPEARANCE_LIGHT_SOURCE_HID_LAMP                 0x07C3
     416              : /** Fluorescent Lamp */
     417            1 : #define BT_APPEARANCE_LIGHT_SOURCE_FLUORESCENT_LAMP         0x07C4
     418              : /** LED Array */
     419            1 : #define BT_APPEARANCE_LIGHT_SOURCE_LED_ARRAY                0x07C5
     420              : /** Multi-Color LED Array */
     421            1 : #define BT_APPEARANCE_LIGHT_SOURCE_MULTICOLOR_LED_ARRAY     0x07C6
     422              : /** Low voltage halogen */
     423            1 : #define BT_APPEARANCE_LIGHT_SOURCE_LOW_VOLTAGE_HALOGEN      0x07C7
     424              : /** Organic light emitting diode */
     425            1 : #define BT_APPEARANCE_LIGHT_SOURCE_OLED                     0x07C8
     426              : /** Generic Window Covering */
     427            1 : #define BT_APPEARANCE_GENERIC_WINDOW_COVERING               0x0800
     428              : /** Window Shades */
     429            1 : #define BT_APPEARANCE_WINDOW_SHADES                         0x0801
     430              : /** Window Blinds */
     431            1 : #define BT_APPEARANCE_WINDOW_BLINDS                         0x0802
     432              : /** Window Awning */
     433            1 : #define BT_APPEARANCE_WINDOW_AWNING                         0x0803
     434              : /** Window Curtain */
     435            1 : #define BT_APPEARANCE_WINDOW_CURTAIN                        0x0804
     436              : /** Exterior Shutter */
     437            1 : #define BT_APPEARANCE_WINDOW_EXTERIOR_SHUTTER               0x0805
     438              : /** Exterior Screen */
     439            1 : #define BT_APPEARANCE_WINDOW_EXTERIOR_SCREEN                0x0806
     440              : /** Generic Audio Sink */
     441            1 : #define BT_APPEARANCE_GENERIC_AUDIO_SINK                    0x0840
     442              : /** Standalone Speaker */
     443            1 : #define BT_APPEARANCE_AUDIO_SINK_STANDALONE_SPEAKER         0x0841
     444              : /** Soundbar */
     445            1 : #define BT_APPEARANCE_AUDIO_SINK_SOUNDBAR                   0x0842
     446              : /** Bookshelf Speaker */
     447            1 : #define BT_APPEARANCE_AUDIO_SINK_BOOKSHELF_SPEAKER          0x0843
     448              : /** Standmounted Speaker */
     449            1 : #define BT_APPEARANCE_AUDIO_SINK_STANDMOUNTED_SPEAKER       0x0844
     450              : /** Speakerphone */
     451            1 : #define BT_APPEARANCE_AUDIO_SINK_SPEAKERPHONE               0x0845
     452              : /** Generic Audio Source */
     453            1 : #define BT_APPEARANCE_GENERIC_AUDIO_SOURCE                  0x0880
     454              : /** Microphone */
     455            1 : #define BT_APPEARANCE_AUDIO_SOURCE_MICROPHONE               0x0881
     456              : /** Alarm */
     457            1 : #define BT_APPEARANCE_AUDIO_SOURCE_ALARM                    0x0882
     458              : /** Bell */
     459            1 : #define BT_APPEARANCE_AUDIO_SOURCE_BELL                     0x0883
     460              : /** Horn */
     461            1 : #define BT_APPEARANCE_AUDIO_SOURCE_HORN                     0x0884
     462              : /** Broadcasting Device */
     463            1 : #define BT_APPEARANCE_AUDIO_SOURCE_BROADCASTING_DEVICE      0x0885
     464              : /** Service Desk */
     465            1 : #define BT_APPEARANCE_AUDIO_SOURCE_SERVICE_DESK             0x0886
     466              : /** Kiosk */
     467            1 : #define BT_APPEARANCE_AUDIO_SOURCE_KIOSK                    0x0887
     468              : /** Broadcasting Room */
     469            1 : #define BT_APPEARANCE_AUDIO_SOURCE_BROADCASTING_ROOM        0x0888
     470              : /** Auditorium */
     471            1 : #define BT_APPEARANCE_AUDIO_SOURCE_AUDITORIUM               0x0889
     472              : /** Generic Motorized Vehicle */
     473            1 : #define BT_APPEARANCE_GENERIC_MOTORIZED_VEHICLE             0x08C0
     474              : /** Car */
     475            1 : #define BT_APPEARANCE_VEHICLE_CAR                           0x08C1
     476              : /** Large Goods Vehicle */
     477            1 : #define BT_APPEARANCE_VEHICLE_LARGE_GOODS                   0x08C2
     478              : /** 2-Wheeled Vehicle */
     479            1 : #define BT_APPEARANCE_VEHICLE_TWO_WHEELED                   0x08C3
     480              : /** Motorbike */
     481            1 : #define BT_APPEARANCE_VEHICLE_MOTORBIKE                     0x08C4
     482              : /** Scooter */
     483            1 : #define BT_APPEARANCE_VEHICLE_SCOOTER                       0x08C5
     484              : /** Moped */
     485            1 : #define BT_APPEARANCE_VEHICLE_MOPED                         0x08C6
     486              : /** 3-Wheeled Vehicle */
     487            1 : #define BT_APPEARANCE_VEHICLE_THREE_WHEELED                 0x08C7
     488              : /** Light Vehicle */
     489            1 : #define BT_APPEARANCE_VEHICLE_LIGHT                         0x08C8
     490              : /** Quad Bike */
     491            1 : #define BT_APPEARANCE_VEHICLE_QUAD_BIKE                     0x08C9
     492              : /** Minibus */
     493            1 : #define BT_APPEARANCE_VEHICLE_MINIBUS                       0x08CA
     494              : /** Bus */
     495            1 : #define BT_APPEARANCE_VEHICLE_BUS                           0x08CB
     496              : /** Trolley */
     497            1 : #define BT_APPEARANCE_VEHICLE_TROLLEY                       0x08CC
     498              : /** Agricultural Vehicle */
     499            1 : #define BT_APPEARANCE_VEHICLE_AGRICULTURAL                  0x08CD
     500              : /** Camper/Caravan */
     501            1 : #define BT_APPEARANCE_VEHICLE_CAMPER_OR_CARAVAN             0x08CE
     502              : /** Recreational Vehicle/Motor Home */
     503            1 : #define BT_APPEARANCE_VEHICLE_RECREATIONAL                  0x08CF
     504              : /** Generic Domestic Appliance */
     505            1 : #define BT_APPEARANCE_GENERIC_DOMESTIC_APPLIANCE            0x0900
     506              : /** Refrigerator */
     507            1 : #define BT_APPEARANCE_APPLIANCE_REFRIGERATOR                0x0901
     508              : /** Freezer */
     509            1 : #define BT_APPEARANCE_APPLIANCE_FREEZER                     0x0902
     510              : /** Oven */
     511            1 : #define BT_APPEARANCE_APPLIANCE_OVEN                        0x0903
     512              : /** Microwave */
     513            1 : #define BT_APPEARANCE_APPLIANCE_MICROWAVE                   0x0904
     514              : /** Toaster */
     515            1 : #define BT_APPEARANCE_APPLIANCE_TOASTER                     0x0905
     516              : /** Washing Machine */
     517            1 : #define BT_APPEARANCE_APPLIANCE_WASHING_MACHINE             0x0906
     518              : /** Dryer */
     519            1 : #define BT_APPEARANCE_APPLIANCE_DRYER                       0x0907
     520              : /** Coffee maker */
     521            1 : #define BT_APPEARANCE_APPLIANCE_COFFEE_MAKER                0x0908
     522              : /** Clothes iron */
     523            1 : #define BT_APPEARANCE_APPLIANCE_CLOTHES_IRON                0x0909
     524              : /** Curling iron */
     525            1 : #define BT_APPEARANCE_APPLIANCE_CURLING_IRON                0x090A
     526              : /** Hair dryer */
     527            1 : #define BT_APPEARANCE_APPLIANCE_HAIR_DRYER                  0x090B
     528              : /** Vacuum cleaner */
     529            1 : #define BT_APPEARANCE_APPLIANCE_VACUUM_CLEANER              0x090C
     530              : /** Robotic vacuum cleaner */
     531            1 : #define BT_APPEARANCE_APPLIANCE_ROBOTIC_VACUUM_CLEANER      0x090D
     532              : /** Rice cooker */
     533            1 : #define BT_APPEARANCE_APPLIANCE_RICE_COOKER                 0x090E
     534              : /** Clothes steamer */
     535            1 : #define BT_APPEARANCE_APPLIANCE_CLOTHES_STEAMER             0x090F
     536              : /** Generic Wearable Audio Device */
     537            1 : #define BT_APPEARANCE_GENERIC_WEARABLE_AUDIO_DEVICE         0x0940
     538              : /** Earbud */
     539            1 : #define BT_APPEARANCE_WEARABLE_AUDIO_DEVICE_EARBUD          0x0941
     540              : /** Headset */
     541            1 : #define BT_APPEARANCE_WEARABLE_AUDIO_DEVICE_HEADSET         0x0942
     542              : /** Headphones */
     543            1 : #define BT_APPEARANCE_WEARABLE_AUDIO_DEVICE_HEADPHONES      0x0943
     544              : /** Neck Band */
     545            1 : #define BT_APPEARANCE_WEARABLE_AUDIO_DEVICE_NECK_BAND       0x0944
     546              : /** Generic Aircraft */
     547            1 : #define BT_APPEARANCE_GENERIC_AIRCRAFT                      0x0980
     548              : /** Light Aircraft */
     549            1 : #define BT_APPEARANCE_AIRCRAFT_LIGHT                        0x0981
     550              : /** Microlight */
     551            1 : #define BT_APPEARANCE_AIRCRAFT_MICROLIGHT                   0x0982
     552              : /** Paraglider */
     553            1 : #define BT_APPEARANCE_AIRCRAFT_PARAGLIDER                   0x0983
     554              : /** Large Passenger Aircraft */
     555            1 : #define BT_APPEARANCE_AIRCRAFT_LARGE_PASSENGER              0x0984
     556              : /** Generic AV Equipment */
     557            1 : #define BT_APPEARANCE_GENERIC_AV_EQUIPMENT                  0x09C0
     558              : /** Amplifier */
     559            1 : #define BT_APPEARANCE_AV_EQUIPMENT_AMPLIFIER                0x09C1
     560              : /** Receiver */
     561            1 : #define BT_APPEARANCE_AV_EQUIPMENT_RECEIVER                 0x09C2
     562              : /** Radio */
     563            1 : #define BT_APPEARANCE_AV_EQUIPMENT_RADIO                    0x09C3
     564              : /** Tuner */
     565            1 : #define BT_APPEARANCE_AV_EQUIPMENT_TUNER                    0x09C4
     566              : /** Turntable */
     567            1 : #define BT_APPEARANCE_AV_EQUIPMENT_TURNTABLE                0x09C5
     568              : /** CD Player */
     569            1 : #define BT_APPEARANCE_AV_EQUIPMENT_CD_PLAYER                0x09C6
     570              : /** DVD Player */
     571            1 : #define BT_APPEARANCE_AV_EQUIPMENT_DVD_PLAYER               0x09C7
     572              : /** Bluray Player */
     573            1 : #define BT_APPEARANCE_AV_EQUIPMENT_BLURAY_PLAYER            0x09C8
     574              : /** Optical Disc Player */
     575            1 : #define BT_APPEARANCE_AV_EQUIPMENT_OPTICAL_DISC_PLAYER      0x09C9
     576              : /** Set-Top Box */
     577            1 : #define BT_APPEARANCE_AV_EQUIPMENT_SET_TOP_BOX              0x09CA
     578              : /** Generic Display Equipment */
     579            1 : #define BT_APPEARANCE_GENERIC_DISPLAY_EQUIPMENT             0x0A00
     580              : /** Television */
     581            1 : #define BT_APPEARANCE_DISPLAY_EQUIPMENT_TELEVISION          0x0A01
     582              : /** Monitor */
     583            1 : #define BT_APPEARANCE_DISPLAY_EQUIPMENT_MONITOR             0x0A02
     584              : /** Projector */
     585            1 : #define BT_APPEARANCE_DISPLAY_EQUIPMENT_PROJECTOR           0x0A03
     586              : /** Generic Hearing aid */
     587            1 : #define BT_APPEARANCE_GENERIC_HEARING_AID                   0x0A40
     588              : /** In-ear hearing aid */
     589            1 : #define BT_APPEARANCE_HEARING_AID_IN_EAR                    0x0A41
     590              : /** Behind-ear hearing aid */
     591            1 : #define BT_APPEARANCE_HEARING_AID_BEHIND_EAR                0x0A42
     592              : /** Cochlear Implant */
     593            1 : #define BT_APPEARANCE_HEARING_AID_COCHLEAR_IMPLANT          0x0A43
     594              : /** Generic Gaming */
     595            1 : #define BT_APPEARANCE_GENERIC_GAMING                        0x0A80
     596              : /** Home Video Game Console */
     597            1 : #define BT_APPEARANCE_HOME_VIDEO_GAME_CONSOLE               0x0A81
     598              : /** Portable handheld console */
     599            1 : #define BT_APPEARANCE_PORTABLE_HANDHELD_CONSOLE             0x0A82
     600              : /** Generic Signage */
     601            1 : #define BT_APPEARANCE_GENERIC_SIGNAGE                       0x0AC0
     602              : /** Digital Signage */
     603            1 : #define BT_APPEARANCE_SIGNAGE_DIGITAL                       0x0AC1
     604              : /** Electronic Label */
     605            1 : #define BT_APPEARANCE_SIGNAGE_ELECTRONIC_LABEL              0x0AC2
     606              : /** Generic Pulse Oximeter */
     607            1 : #define BT_APPEARANCE_GENERIC_PULSE_OXIMETER                0x0C40
     608              : /** Fingertip Pulse Oximeter */
     609            1 : #define BT_APPEARANCE_PULSE_OXIMETER_FINGERTIP              0x0C41
     610              : /** Wrist Worn Pulse Oximeter */
     611            1 : #define BT_APPEARANCE_PULSE_OXIMETER_WRIST                  0x0C42
     612              : /** Generic Weight Scale */
     613            1 : #define BT_APPEARANCE_GENERIC_WEIGHT_SCALE                  0x0C80
     614              : /** Generic Personal Mobility Device */
     615            1 : #define BT_APPEARANCE_GENERIC_PERSONAL_MOBILITY_DEVICE      0x0CC0
     616              : /** Powered Wheelchair */
     617            1 : #define BT_APPEARANCE_MOBILITY_POWERED_WHEELCHAIR           0x0CC1
     618              : /** Mobility Scooter */
     619            1 : #define BT_APPEARANCE_MOBILITY_SCOOTER                      0x0CC2
     620              : /** Continuous Glucose Monitor */
     621            1 : #define BT_APPEARANCE_CONTINUOUS_GLUCOSE_MONITOR            0x0D00
     622              : /** Generic Insulin Pump */
     623            1 : #define BT_APPEARANCE_GENERIC_INSULIN_PUMP                  0x0D40
     624              : /** Insulin Pump, durable pump */
     625            1 : #define BT_APPEARANCE_INSULIN_PUMP_DURABLE                  0x0D41
     626              : /** Insulin Pump, patch pump */
     627            1 : #define BT_APPEARANCE_INSULIN_PUMP_PATCH                    0x0D44
     628              : /** Insulin Pen */
     629            1 : #define BT_APPEARANCE_INSULIN_PEN                           0x0D48
     630              : /** Generic Medication Delivery */
     631            1 : #define BT_APPEARANCE_GENERIC_MEDICATION_DELIVERY           0x0D80
     632              : /** Generic Spirometer */
     633            1 : #define BT_APPEARANCE_GENERIC_SPIROMETER                    0x0DC0
     634              : /** Handheld Spirometer */
     635            1 : #define BT_APPEARANCE_SPIROMETER_HANDHELD                   0x0DC1
     636              : /** Generic Outdoor Sports Activity */
     637            1 : #define BT_APPEARANCE_GENERIC_OUTDOOR_SPORTS                0x1440
     638              : /** Location Display */
     639            1 : #define BT_APPEARANCE_OUTDOOR_SPORTS_LOCATION               0x1441
     640              : /** Location and Navigation Display */
     641            1 : #define BT_APPEARANCE_OUTDOOR_SPORTS_LOCATION_AND_NAV       0x1442
     642              : /** Location Pod */
     643            1 : #define BT_APPEARANCE_OUTDOOR_SPORTS_LOCATION_POD           0x1443
     644              : /** Location and Navigation Pod */
     645            1 : #define BT_APPEARANCE_OUTDOOR_SPORTS_LOCATION_POD_AND_NAV   0x1444
     646              : 
     647              : /** @} */ /* end of @name Appearance Numbers */
     648              : 
     649              : /**
     650              :  * @name Common Data Types
     651              :  * @{
     652              :  */
     653            1 : #define BT_DATA_FLAGS                    0x01 /**< AD flags */
     654            1 : #define BT_DATA_UUID16_SOME              0x02 /**< 16-bit UUID, more available */
     655            1 : #define BT_DATA_UUID16_ALL               0x03 /**< 16-bit UUID, all listed */
     656            1 : #define BT_DATA_UUID32_SOME              0x04 /**< 32-bit UUID, more available */
     657            1 : #define BT_DATA_UUID32_ALL               0x05 /**< 32-bit UUID, all listed */
     658            1 : #define BT_DATA_UUID128_SOME             0x06 /**< 128-bit UUID, more available */
     659            1 : #define BT_DATA_UUID128_ALL              0x07 /**< 128-bit UUID, all listed */
     660            1 : #define BT_DATA_NAME_SHORTENED           0x08 /**< Shortened name */
     661            1 : #define BT_DATA_NAME_COMPLETE            0x09 /**< Complete name */
     662            1 : #define BT_DATA_TX_POWER                 0x0a /**< Tx Power */
     663            1 : #define BT_DATA_DEVICE_CLASS             0x0d /**< Class of Device */
     664            1 : #define BT_DATA_SIMPLE_PAIRING_HASH_C192 0x0e /**< Simple Pairing Hash C-192 */
     665            1 : #define BT_DATA_SIMPLE_PAIRING_RAND_C192 0x0f /**< Simple Pairing Randomizer R-192 */
     666            1 : #define BT_DATA_DEVICE_ID                0x10 /**< Device ID (Profile) */
     667            1 : #define BT_DATA_SM_TK_VALUE              0x10 /**< Security Manager TK Value */
     668            1 : #define BT_DATA_SM_OOB_FLAGS             0x11 /**< Security Manager OOB Flags */
     669            1 : #define BT_DATA_PERIPHERAL_INT_RANGE     0x12 /**< Peripheral Connection Interval Range */
     670            1 : #define BT_DATA_SOLICIT16                0x14 /**< Solicit UUIDs, 16-bit */
     671            1 : #define BT_DATA_SOLICIT128               0x15 /**< Solicit UUIDs, 128-bit */
     672            1 : #define BT_DATA_SVC_DATA16               0x16 /**< Service data, 16-bit UUID */
     673            1 : #define BT_DATA_PUB_TARGET_ADDR          0x17 /**< Public Target Address */
     674            1 : #define BT_DATA_RAND_TARGET_ADDR         0x18 /**< Random Target Address */
     675            1 : #define BT_DATA_GAP_APPEARANCE           0x19 /**< GAP appearance */
     676            1 : #define BT_DATA_ADV_INT                  0x1a /**< Advertising Interval */
     677            1 : #define BT_DATA_LE_BT_DEVICE_ADDRESS     0x1b /**< LE Bluetooth Device Address */
     678            1 : #define BT_DATA_LE_ROLE                  0x1c /**< LE Role */
     679            1 : #define BT_DATA_SIMPLE_PAIRING_HASH      0x1d /**< Simple Pairing Hash C256 */
     680            1 : #define BT_DATA_SIMPLE_PAIRING_RAND      0x1e /**< Simple Pairing Randomizer R256 */
     681            1 : #define BT_DATA_SOLICIT32                0x1f /**< Solicit UUIDs, 32-bit */
     682            1 : #define BT_DATA_SVC_DATA32               0x20 /**< Service data, 32-bit UUID */
     683            1 : #define BT_DATA_SVC_DATA128              0x21 /**< Service data, 128-bit UUID */
     684            1 : #define BT_DATA_LE_SC_CONFIRM_VALUE      0x22 /**< LE SC Confirmation Value */
     685            1 : #define BT_DATA_LE_SC_RANDOM_VALUE       0x23 /**< LE SC Random Value */
     686            1 : #define BT_DATA_URI                      0x24 /**< URI */
     687            1 : #define BT_DATA_INDOOR_POS               0x25 /**< Indoor Positioning */
     688            1 : #define BT_DATA_TRANS_DISCOVER_DATA      0x26 /**< Transport Discovery Data */
     689            1 : #define BT_DATA_LE_SUPPORTED_FEATURES    0x27 /**< LE Supported Features */
     690            1 : #define BT_DATA_CHANNEL_MAP_UPDATE_IND   0x28 /**< Channel Map Update Indication */
     691            1 : #define BT_DATA_MESH_PROV                0x29 /**< Mesh Provisioning PDU */
     692            1 : #define BT_DATA_MESH_MESSAGE             0x2a /**< Mesh Networking PDU */
     693            1 : #define BT_DATA_MESH_BEACON              0x2b /**< Mesh Beacon */
     694            1 : #define BT_DATA_BIG_INFO                 0x2c /**< BIGInfo */
     695            1 : #define BT_DATA_BROADCAST_CODE           0x2d /**< Broadcast Code */
     696            1 : #define BT_DATA_CSIS_RSI                 0x2e /**< CSIS Random Set ID type */
     697            1 : #define BT_DATA_ADV_INT_LONG             0x2f /**< Advertising Interval long */
     698            1 : #define BT_DATA_BROADCAST_NAME           0x30 /**< Broadcast Name */
     699            1 : #define BT_DATA_ENCRYPTED_AD_DATA        0x31 /**< Encrypted Advertising Data */
     700            1 : #define BT_DATA_PAWR_TIMING_INFO         0x32 /**< Periodic Advertising Response Timing Info */
     701            1 : #define BT_DATA_ESL                      0x34 /**< Electronic Shelf Label Profile */
     702            1 : #define BT_DATA_3D_INFO                  0x3D /**< 3D Information Data */
     703              : 
     704            1 : #define BT_DATA_MANUFACTURER_DATA        0xff /**< Manufacturer Specific Data */
     705              : 
     706              : /** @} */ /* end of @name Common Data Types */
     707              : 
     708              : /**
     709              :  * @name Flags data type values
     710              :  * @{
     711              :  */
     712              : 
     713            1 : #define BT_LE_AD_LIMITED                 0x01 /**< Limited Discoverable */
     714            1 : #define BT_LE_AD_GENERAL                 0x02 /**< General Discoverable */
     715            1 : #define BT_LE_AD_NO_BREDR                0x04 /**< BR/EDR not supported */
     716              : 
     717              : /** @} */ /* end of @name Flags data type values */
     718              : /** @} */ /* end of bt_assigned_numbers_core */
     719              : 
     720              : /**
     721              :  * @brief Bluetooth Mesh Assigned Numbers
     722              :  * @defgroup bt_assigned_numbers_mesh Bluetooth Mesh Assigned Numbers
     723              :  * @ingroup bt_assigned_numbers
     724              :  * @{
     725              :  */
     726              : 
     727              : /**
     728              :  * @name Foundation Models
     729              :  * @{
     730              :  */
     731              : /** Configuration Server */
     732            1 : #define BT_MESH_MODEL_ID_CFG_SRV                   0x0000
     733              : /** Configuration Client */
     734            1 : #define BT_MESH_MODEL_ID_CFG_CLI                   0x0001
     735              : /** Health Server */
     736            1 : #define BT_MESH_MODEL_ID_HEALTH_SRV                0x0002
     737              : /** Health Client */
     738            1 : #define BT_MESH_MODEL_ID_HEALTH_CLI                0x0003
     739              : /** Remote Provisioning Server */
     740            1 : #define BT_MESH_MODEL_ID_REMOTE_PROV_SRV           0x0004
     741              : /** Remote Provisioning Client */
     742            1 : #define BT_MESH_MODEL_ID_REMOTE_PROV_CLI           0x0005
     743              : /** Bridge Configuration Sever */
     744            1 : #define BT_MESH_MODEL_ID_BRG_CFG_SRV               0x0008
     745              : /** Bridge Configuration Client */
     746            1 : #define BT_MESH_MODEL_ID_BRG_CFG_CLI               0x0009
     747              : /** Private Beacon Server */
     748            1 : #define BT_MESH_MODEL_ID_PRIV_BEACON_SRV           0x000a
     749              : /** Private Beacon Client */
     750            1 : #define BT_MESH_MODEL_ID_PRIV_BEACON_CLI           0x000b
     751              : /** SAR Configuration Server */
     752            1 : #define BT_MESH_MODEL_ID_SAR_CFG_SRV               0x000e
     753              : /** SAR Configuration Client */
     754            1 : #define BT_MESH_MODEL_ID_SAR_CFG_CLI               0x000f
     755              : /** Opcodes Aggregator Server */
     756            1 : #define BT_MESH_MODEL_ID_OP_AGG_SRV                0x0010
     757              : /** Opcodes Aggregator Client */
     758            1 : #define BT_MESH_MODEL_ID_OP_AGG_CLI                0x0011
     759              : /** Large Composition Data Server */
     760            1 : #define BT_MESH_MODEL_ID_LARGE_COMP_DATA_SRV       0x0012
     761              : /** Large Composition Data Client */
     762            1 : #define BT_MESH_MODEL_ID_LARGE_COMP_DATA_CLI       0x0013
     763              : /** Solicitation PDU RPL Configuration Client */
     764            1 : #define BT_MESH_MODEL_ID_SOL_PDU_RPL_SRV           0x0014
     765              : /** Solicitation PDU RPL Configuration Server */
     766            1 : #define BT_MESH_MODEL_ID_SOL_PDU_RPL_CLI           0x0015
     767              : /** Private Proxy Server */
     768            1 : #define BT_MESH_MODEL_ID_ON_DEMAND_PROXY_SRV       0x000c
     769              : /** Private Proxy Client */
     770            1 : #define BT_MESH_MODEL_ID_ON_DEMAND_PROXY_CLI       0x000d
     771              : /**
     772              :  * @}
     773              :  */
     774              : 
     775              : /**
     776              :  * @name Models from the Mesh Model Specification
     777              :  * @{
     778              :  */
     779              : /** Generic OnOff Server */
     780            1 : #define BT_MESH_MODEL_ID_GEN_ONOFF_SRV             0x1000
     781              : /** Generic OnOff Client */
     782            1 : #define BT_MESH_MODEL_ID_GEN_ONOFF_CLI             0x1001
     783              : /** Generic Level Server */
     784            1 : #define BT_MESH_MODEL_ID_GEN_LEVEL_SRV             0x1002
     785              : /** Generic Level Client */
     786            1 : #define BT_MESH_MODEL_ID_GEN_LEVEL_CLI             0x1003
     787              : /** Generic Default Transition Time Server */
     788            1 : #define BT_MESH_MODEL_ID_GEN_DEF_TRANS_TIME_SRV    0x1004
     789              : /** Generic Default Transition Time Client */
     790            1 : #define BT_MESH_MODEL_ID_GEN_DEF_TRANS_TIME_CLI    0x1005
     791              : /** Generic Power OnOff Server */
     792            1 : #define BT_MESH_MODEL_ID_GEN_POWER_ONOFF_SRV       0x1006
     793              : /** Generic Power OnOff Setup Server */
     794            1 : #define BT_MESH_MODEL_ID_GEN_POWER_ONOFF_SETUP_SRV 0x1007
     795              : /** Generic Power OnOff Client */
     796            1 : #define BT_MESH_MODEL_ID_GEN_POWER_ONOFF_CLI       0x1008
     797              : /** Generic Power Level Server */
     798            1 : #define BT_MESH_MODEL_ID_GEN_POWER_LEVEL_SRV       0x1009
     799              : /** Generic Power Level Setup Server */
     800            1 : #define BT_MESH_MODEL_ID_GEN_POWER_LEVEL_SETUP_SRV 0x100a
     801              : /** Generic Power Level Client */
     802            1 : #define BT_MESH_MODEL_ID_GEN_POWER_LEVEL_CLI       0x100b
     803              : /** Generic Battery Server */
     804            1 : #define BT_MESH_MODEL_ID_GEN_BATTERY_SRV           0x100c
     805              : /** Generic Battery Client */
     806            1 : #define BT_MESH_MODEL_ID_GEN_BATTERY_CLI           0x100d
     807              : /** Generic Location Server */
     808            1 : #define BT_MESH_MODEL_ID_GEN_LOCATION_SRV          0x100e
     809              : /** Generic Location Setup Server */
     810            1 : #define BT_MESH_MODEL_ID_GEN_LOCATION_SETUPSRV     0x100f
     811              : /** Generic Location Client */
     812            1 : #define BT_MESH_MODEL_ID_GEN_LOCATION_CLI          0x1010
     813              : /** Generic Admin Property Server */
     814            1 : #define BT_MESH_MODEL_ID_GEN_ADMIN_PROP_SRV        0x1011
     815              : /** Generic Manufacturer Property Server */
     816            1 : #define BT_MESH_MODEL_ID_GEN_MANUFACTURER_PROP_SRV 0x1012
     817              : /** Generic User Property Server */
     818            1 : #define BT_MESH_MODEL_ID_GEN_USER_PROP_SRV         0x1013
     819              : /** Generic Client Property Server */
     820            1 : #define BT_MESH_MODEL_ID_GEN_CLIENT_PROP_SRV       0x1014
     821              : /** Generic Property Client */
     822            1 : #define BT_MESH_MODEL_ID_GEN_PROP_CLI              0x1015
     823              : /** Sensor Server */
     824            1 : #define BT_MESH_MODEL_ID_SENSOR_SRV                0x1100
     825              : /** Sensor Setup Server */
     826            1 : #define BT_MESH_MODEL_ID_SENSOR_SETUP_SRV          0x1101
     827              : /** Sensor Client */
     828            1 : #define BT_MESH_MODEL_ID_SENSOR_CLI                0x1102
     829              : /** Time Server */
     830            1 : #define BT_MESH_MODEL_ID_TIME_SRV                  0x1200
     831              : /** Time Setup Server */
     832            1 : #define BT_MESH_MODEL_ID_TIME_SETUP_SRV            0x1201
     833              : /** Time Client */
     834            1 : #define BT_MESH_MODEL_ID_TIME_CLI                  0x1202
     835              : /** Scene Server */
     836            1 : #define BT_MESH_MODEL_ID_SCENE_SRV                 0x1203
     837              : /** Scene Setup Server */
     838            1 : #define BT_MESH_MODEL_ID_SCENE_SETUP_SRV           0x1204
     839              : /** Scene Client */
     840            1 : #define BT_MESH_MODEL_ID_SCENE_CLI                 0x1205
     841              : /** Scheduler Server */
     842            1 : #define BT_MESH_MODEL_ID_SCHEDULER_SRV             0x1206
     843              : /** Scheduler Setup Server */
     844            1 : #define BT_MESH_MODEL_ID_SCHEDULER_SETUP_SRV       0x1207
     845              : /** Scheduler Client */
     846            1 : #define BT_MESH_MODEL_ID_SCHEDULER_CLI             0x1208
     847              : /** Light Lightness Server */
     848            1 : #define BT_MESH_MODEL_ID_LIGHT_LIGHTNESS_SRV       0x1300
     849              : /** Light Lightness Setup Server */
     850            1 : #define BT_MESH_MODEL_ID_LIGHT_LIGHTNESS_SETUP_SRV 0x1301
     851              : /** Light Lightness Client */
     852            1 : #define BT_MESH_MODEL_ID_LIGHT_LIGHTNESS_CLI       0x1302
     853              : /** Light CTL Server */
     854            1 : #define BT_MESH_MODEL_ID_LIGHT_CTL_SRV             0x1303
     855              : /** Light CTL Setup Server */
     856            1 : #define BT_MESH_MODEL_ID_LIGHT_CTL_SETUP_SRV       0x1304
     857              : /** Light CTL Client */
     858            1 : #define BT_MESH_MODEL_ID_LIGHT_CTL_CLI             0x1305
     859              : /** Light CTL Temperature Server */
     860            1 : #define BT_MESH_MODEL_ID_LIGHT_CTL_TEMP_SRV        0x1306
     861              : /** Light HSL Server */
     862            1 : #define BT_MESH_MODEL_ID_LIGHT_HSL_SRV             0x1307
     863              : /** Light HSL Setup Server */
     864            1 : #define BT_MESH_MODEL_ID_LIGHT_HSL_SETUP_SRV       0x1308
     865              : /** Light HSL Client */
     866            1 : #define BT_MESH_MODEL_ID_LIGHT_HSL_CLI             0x1309
     867              : /** Light HSL Hue Server */
     868            1 : #define BT_MESH_MODEL_ID_LIGHT_HSL_HUE_SRV         0x130a
     869              : /** Light HSL Saturation Server */
     870            1 : #define BT_MESH_MODEL_ID_LIGHT_HSL_SAT_SRV         0x130b
     871              : /** Light xyL Server */
     872            1 : #define BT_MESH_MODEL_ID_LIGHT_XYL_SRV             0x130c
     873              : /** Light xyL Setup Server */
     874            1 : #define BT_MESH_MODEL_ID_LIGHT_XYL_SETUP_SRV       0x130d
     875              : /** Light xyL Client */
     876            1 : #define BT_MESH_MODEL_ID_LIGHT_XYL_CLI             0x130e
     877              : /** Light LC Server */
     878            1 : #define BT_MESH_MODEL_ID_LIGHT_LC_SRV              0x130f
     879              : /** Light LC Setup Server */
     880            1 : #define BT_MESH_MODEL_ID_LIGHT_LC_SETUPSRV         0x1310
     881              : /** Light LC Client */
     882            1 : #define BT_MESH_MODEL_ID_LIGHT_LC_CLI              0x1311
     883              : /**
     884              :  * @}
     885              :  */
     886              : 
     887              : /**
     888              :  * @name Models from the Mesh Binary Large Object Transfer Model Specification
     889              :  * @{
     890              :  */
     891              : /** BLOB Transfer Server */
     892            1 : #define BT_MESH_MODEL_ID_BLOB_SRV                  0x1400
     893              : /** BLOB Transfer Client */
     894            1 : #define BT_MESH_MODEL_ID_BLOB_CLI                  0x1401
     895              : /**
     896              :  * @}
     897              :  */
     898              : 
     899              : /**
     900              :  *  @name Models from the Mesh Device Firmware Update Model Specification
     901              :  * @{
     902              :  */
     903              : /** Firmware Update Server */
     904            1 : #define BT_MESH_MODEL_ID_DFU_SRV                   0x1402
     905              : /** Firmware Update Client */
     906            1 : #define BT_MESH_MODEL_ID_DFU_CLI                   0x1403
     907              : /** Firmware Distribution Server */
     908            1 : #define BT_MESH_MODEL_ID_DFD_SRV                   0x1404
     909              : /** Firmware Distribution Client */
     910            1 : #define BT_MESH_MODEL_ID_DFD_CLI                   0x1405
     911              : /**
     912              :  * @}
     913              :  */
     914              : 
     915              : /** @} */ /* end of bt_assigned_numbers_mesh */
     916              : 
     917              : /**
     918              :  * @brief Generic Audio Assigned Numbers
     919              :  * @defgroup bt_assigned_numbers_audio Generic Audio Assigned Numbers
     920              :  * @ingroup bt_assigned_numbers
     921              :  * @{
     922              :  */
     923              : 
     924              : /**
     925              :  * @brief Codec capability types
     926              :  *
     927              :  * Used to build and parse codec capabilities as specified in the PAC specification.
     928              :  * Source is assigned numbers for Generic Audio, bluetooth.com.
     929              :  */
     930            1 : enum bt_audio_codec_cap_type {
     931              :         /** Supported sampling frequencies */
     932              :         BT_AUDIO_CODEC_CAP_TYPE_FREQ = 0x01,
     933              : 
     934              :         /** Supported frame durations */
     935              :         BT_AUDIO_CODEC_CAP_TYPE_DURATION = 0x02,
     936              : 
     937              :         /** Supported audio channel counts */
     938              :         BT_AUDIO_CODEC_CAP_TYPE_CHAN_COUNT = 0x03,
     939              : 
     940              :         /** Supported octets per codec frame */
     941              :         BT_AUDIO_CODEC_CAP_TYPE_FRAME_LEN = 0x04,
     942              : 
     943              :         /** Supported maximum codec frames per SDU  */
     944              :         BT_AUDIO_CODEC_CAP_TYPE_FRAME_COUNT = 0x05,
     945              : };
     946              : 
     947              : /** @brief Supported frequencies bitfield */
     948            1 : enum bt_audio_codec_cap_freq {
     949              :         /** 8 Khz sampling frequency */
     950              :         BT_AUDIO_CODEC_CAP_FREQ_8KHZ = BIT(0),
     951              : 
     952              :         /** 11.025 Khz sampling frequency */
     953              :         BT_AUDIO_CODEC_CAP_FREQ_11KHZ = BIT(1),
     954              : 
     955              :         /** 16 Khz sampling frequency */
     956              :         BT_AUDIO_CODEC_CAP_FREQ_16KHZ = BIT(2),
     957              : 
     958              :         /** 22.05 Khz sampling frequency */
     959              :         BT_AUDIO_CODEC_CAP_FREQ_22KHZ = BIT(3),
     960              : 
     961              :         /** 24 Khz sampling frequency */
     962              :         BT_AUDIO_CODEC_CAP_FREQ_24KHZ = BIT(4),
     963              : 
     964              :         /** 32 Khz sampling frequency */
     965              :         BT_AUDIO_CODEC_CAP_FREQ_32KHZ = BIT(5),
     966              : 
     967              :         /** 44.1 Khz sampling frequency */
     968              :         BT_AUDIO_CODEC_CAP_FREQ_44KHZ = BIT(6),
     969              : 
     970              :         /** 48 Khz sampling frequency */
     971              :         BT_AUDIO_CODEC_CAP_FREQ_48KHZ = BIT(7),
     972              : 
     973              :         /** 88.2 Khz sampling frequency */
     974              :         BT_AUDIO_CODEC_CAP_FREQ_88KHZ = BIT(8),
     975              : 
     976              :         /** 96 Khz sampling frequency */
     977              :         BT_AUDIO_CODEC_CAP_FREQ_96KHZ = BIT(9),
     978              : 
     979              :         /** 176.4 Khz sampling frequency */
     980              :         BT_AUDIO_CODEC_CAP_FREQ_176KHZ = BIT(10),
     981              : 
     982              :         /** 192 Khz sampling frequency */
     983              :         BT_AUDIO_CODEC_CAP_FREQ_192KHZ = BIT(11),
     984              : 
     985              :         /** 384 Khz sampling frequency */
     986              :         BT_AUDIO_CODEC_CAP_FREQ_384KHZ = BIT(12),
     987              : 
     988              :         /** Any frequency capability */
     989              :         BT_AUDIO_CODEC_CAP_FREQ_ANY =
     990              :                 (BT_AUDIO_CODEC_CAP_FREQ_8KHZ | BT_AUDIO_CODEC_CAP_FREQ_11KHZ |
     991              :                  BT_AUDIO_CODEC_CAP_FREQ_16KHZ | BT_AUDIO_CODEC_CAP_FREQ_22KHZ |
     992              :                  BT_AUDIO_CODEC_CAP_FREQ_24KHZ | BT_AUDIO_CODEC_CAP_FREQ_32KHZ |
     993              :                  BT_AUDIO_CODEC_CAP_FREQ_44KHZ | BT_AUDIO_CODEC_CAP_FREQ_48KHZ |
     994              :                  BT_AUDIO_CODEC_CAP_FREQ_88KHZ | BT_AUDIO_CODEC_CAP_FREQ_96KHZ |
     995              :                  BT_AUDIO_CODEC_CAP_FREQ_176KHZ | BT_AUDIO_CODEC_CAP_FREQ_192KHZ |
     996              :                  BT_AUDIO_CODEC_CAP_FREQ_384KHZ),
     997              : };
     998              : 
     999              : /** @brief Supported frame durations bitfield */
    1000            1 : enum bt_audio_codec_cap_frame_dur {
    1001              :         /** 7.5 msec frame duration capability */
    1002              :         BT_AUDIO_CODEC_CAP_DURATION_7_5 = BIT(0),
    1003              : 
    1004              :         /** 10 msec frame duration capability */
    1005              :         BT_AUDIO_CODEC_CAP_DURATION_10 = BIT(1),
    1006              : 
    1007              :         /** Any frame duration capability */
    1008              :         BT_AUDIO_CODEC_CAP_DURATION_ANY =
    1009              :                 (BT_AUDIO_CODEC_CAP_DURATION_7_5 | BT_AUDIO_CODEC_CAP_DURATION_10),
    1010              : 
    1011              :         /**
    1012              :          * @brief 7.5 msec preferred frame duration capability.
    1013              :          *
    1014              :          * This shall only be set if @ref BT_AUDIO_CODEC_CAP_DURATION_7_5 is also set, and if @ref
    1015              :          * BT_AUDIO_CODEC_CAP_DURATION_PREFER_10 is not set.
    1016              :          */
    1017              :         BT_AUDIO_CODEC_CAP_DURATION_PREFER_7_5 = BIT(4),
    1018              : 
    1019              :         /**
    1020              :          * @brief 10 msec preferred frame duration capability
    1021              :          *
    1022              :          * This shall only be set if @ref BT_AUDIO_CODEC_CAP_DURATION_10 is also set, and if @ref
    1023              :          * BT_AUDIO_CODEC_CAP_DURATION_PREFER_7_5 is not set.
    1024              :          */
    1025              :         BT_AUDIO_CODEC_CAP_DURATION_PREFER_10 = BIT(5),
    1026              : };
    1027              : 
    1028              : /** Supported audio capabilities channel count bitfield */
    1029            1 : enum bt_audio_codec_cap_chan_count {
    1030              :         /** Supporting 1 channel */
    1031              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_1 = BIT(0),
    1032              : 
    1033              :         /** Supporting 2 channel */
    1034              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_2 = BIT(1),
    1035              : 
    1036              :         /** Supporting 3 channel */
    1037              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_3 = BIT(2),
    1038              : 
    1039              :         /** Supporting 4 channel */
    1040              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_4 = BIT(3),
    1041              : 
    1042              :         /** Supporting 5 channel */
    1043              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_5 = BIT(4),
    1044              : 
    1045              :         /** Supporting 6 channel */
    1046              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_6 = BIT(5),
    1047              : 
    1048              :         /** Supporting 7 channel */
    1049              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_7 = BIT(6),
    1050              : 
    1051              :         /** Supporting 8 channel */
    1052              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_8 = BIT(7),
    1053              : 
    1054              :         /** Supporting all channels */
    1055              :         BT_AUDIO_CODEC_CAP_CHAN_COUNT_ANY =
    1056              :                 (BT_AUDIO_CODEC_CAP_CHAN_COUNT_1 | BT_AUDIO_CODEC_CAP_CHAN_COUNT_2 |
    1057              :                  BT_AUDIO_CODEC_CAP_CHAN_COUNT_3 | BT_AUDIO_CODEC_CAP_CHAN_COUNT_4 |
    1058              :                  BT_AUDIO_CODEC_CAP_CHAN_COUNT_5 | BT_AUDIO_CODEC_CAP_CHAN_COUNT_6 |
    1059              :                  BT_AUDIO_CODEC_CAP_CHAN_COUNT_7 | BT_AUDIO_CODEC_CAP_CHAN_COUNT_8),
    1060              : };
    1061              : 
    1062              : /** Minimum supported channel counts */
    1063            1 : #define BT_AUDIO_CODEC_CAP_CHAN_COUNT_MIN 1
    1064              : /** Maximum supported channel counts */
    1065            1 : #define BT_AUDIO_CODEC_CAP_CHAN_COUNT_MAX 8
    1066              : 
    1067              : /** The minimum size of a Broadcast Name as defined by Bluetooth Assigned Numbers */
    1068            1 : #define BT_AUDIO_BROADCAST_NAME_LEN_MIN          4
    1069              : /** The maximum size of a Broadcast Name as defined by Bluetooth Assigned Numbers */
    1070            1 : #define BT_AUDIO_BROADCAST_NAME_LEN_MAX          128
    1071              : 
    1072              : /**
    1073              :  * @brief Codec configuration types
    1074              :  *
    1075              :  * Used to build and parse codec configurations as specified in the ASCS and BAP specifications.
    1076              :  * Source is assigned numbers for Generic Audio, bluetooth.com.
    1077              :  */
    1078            1 : enum bt_audio_codec_cfg_type {
    1079              :         /** Sampling frequency */
    1080              :         BT_AUDIO_CODEC_CFG_FREQ = 0x01,
    1081              : 
    1082              :         /** Frame duration */
    1083              :         BT_AUDIO_CODEC_CFG_DURATION = 0x02,
    1084              : 
    1085              :         /** Audio channel allocation */
    1086              :         BT_AUDIO_CODEC_CFG_CHAN_ALLOC = 0x03,
    1087              : 
    1088              :         /** Octets per codec frame */
    1089              :         BT_AUDIO_CODEC_CFG_FRAME_LEN = 0x04,
    1090              : 
    1091              :         /** Codec frame blocks per SDU */
    1092              :         BT_AUDIO_CODEC_CFG_FRAME_BLKS_PER_SDU = 0x05,
    1093              : };
    1094              : 
    1095              : /** Codec configuration sampling freqency */
    1096            1 : enum bt_audio_codec_cfg_freq {
    1097              :         /** 8 Khz codec sampling frequency */
    1098              :         BT_AUDIO_CODEC_CFG_FREQ_8KHZ = 0x01,
    1099              : 
    1100              :         /** 11.025 Khz codec sampling frequency */
    1101              :         BT_AUDIO_CODEC_CFG_FREQ_11KHZ = 0x02,
    1102              : 
    1103              :         /** 16 Khz codec sampling frequency */
    1104              :         BT_AUDIO_CODEC_CFG_FREQ_16KHZ = 0x03,
    1105              : 
    1106              :         /** 22.05 Khz codec sampling frequency */
    1107              :         BT_AUDIO_CODEC_CFG_FREQ_22KHZ = 0x04,
    1108              : 
    1109              :         /** 24 Khz codec sampling frequency */
    1110              :         BT_AUDIO_CODEC_CFG_FREQ_24KHZ = 0x05,
    1111              : 
    1112              :         /** 32 Khz codec sampling frequency */
    1113              :         BT_AUDIO_CODEC_CFG_FREQ_32KHZ = 0x06,
    1114              : 
    1115              :         /** 44.1 Khz codec sampling frequency */
    1116              :         BT_AUDIO_CODEC_CFG_FREQ_44KHZ = 0x07,
    1117              : 
    1118              :         /** 48 Khz codec sampling frequency */
    1119              :         BT_AUDIO_CODEC_CFG_FREQ_48KHZ = 0x08,
    1120              : 
    1121              :         /** 88.2 Khz codec sampling frequency */
    1122              :         BT_AUDIO_CODEC_CFG_FREQ_88KHZ = 0x09,
    1123              : 
    1124              :         /** 96 Khz codec sampling frequency */
    1125              :         BT_AUDIO_CODEC_CFG_FREQ_96KHZ = 0x0a,
    1126              : 
    1127              :         /** 176.4 Khz codec sampling frequency */
    1128              :         BT_AUDIO_CODEC_CFG_FREQ_176KHZ = 0x0b,
    1129              : 
    1130              :         /** 192 Khz codec sampling frequency */
    1131              :         BT_AUDIO_CODEC_CFG_FREQ_192KHZ = 0x0c,
    1132              : 
    1133              :         /** 384 Khz codec sampling frequency */
    1134              :         BT_AUDIO_CODEC_CFG_FREQ_384KHZ = 0x0d,
    1135              : };
    1136              : 
    1137              : /** Codec configuration frame duration */
    1138            1 : enum bt_audio_codec_cfg_frame_dur {
    1139              :         /** 7.5 msec Frame Duration configuration */
    1140              :         BT_AUDIO_CODEC_CFG_DURATION_7_5 = 0x00,
    1141              : 
    1142              :         /** 10 msec Frame Duration configuration */
    1143              :         BT_AUDIO_CODEC_CFG_DURATION_10 = 0x01,
    1144              : };
    1145              : 
    1146              : /**
    1147              :  * @brief Audio Context Type for Generic Audio
    1148              :  *
    1149              :  * These values are defined by the Generic Audio Assigned Numbers, bluetooth.com
    1150              :  */
    1151            1 : enum bt_audio_context {
    1152              :         /** No context type */
    1153              :         BT_AUDIO_CONTEXT_TYPE_NONE = 0,
    1154              :         /**
    1155              :          * Identifies audio where the use case context does not match any other defined value,
    1156              :          * or where the context is unknown or cannot be determined.
    1157              :          */
    1158              :         BT_AUDIO_CONTEXT_TYPE_UNSPECIFIED = BIT(0),
    1159              :         /**
    1160              :          * Conversation between humans, for example, in telephony or video calls, including
    1161              :          * traditional cellular as well as VoIP and Push-to-Talk
    1162              :          */
    1163              :         BT_AUDIO_CONTEXT_TYPE_CONVERSATIONAL = BIT(1),
    1164              :         /** Media, for example, music playback, radio, podcast or movie soundtrack, or tv audio */
    1165              :         BT_AUDIO_CONTEXT_TYPE_MEDIA = BIT(2),
    1166              :         /**
    1167              :          * Audio associated with video gaming, for example gaming media; gaming effects; music
    1168              :          * and in-game voice chat between participants; or a mix of all the above
    1169              :          */
    1170              :         BT_AUDIO_CONTEXT_TYPE_GAME = BIT(3),
    1171              :         /** Instructional audio, for example, in navigation, announcements, or user guidance */
    1172              :         BT_AUDIO_CONTEXT_TYPE_INSTRUCTIONAL = BIT(4),
    1173              :         /** Man-machine communication, for example, with voice recognition or virtual assistants */
    1174              :         BT_AUDIO_CONTEXT_TYPE_VOICE_ASSISTANTS = BIT(5),
    1175              :         /**
    1176              :          * Live audio, for example, from a microphone where audio is perceived both through a
    1177              :          * direct acoustic path and through an LE Audio Stream
    1178              :          */
    1179              :         BT_AUDIO_CONTEXT_TYPE_LIVE = BIT(6),
    1180              :         /**
    1181              :          * Sound effects including keyboard and touch feedback; menu and user interface sounds;
    1182              :          * and other system sounds
    1183              :          */
    1184              :         BT_AUDIO_CONTEXT_TYPE_SOUND_EFFECTS = BIT(7),
    1185              :         /**
    1186              :          * Notification and reminder sounds; attention-seeking audio, for example,
    1187              :          * in beeps signaling the arrival of a message
    1188              :          */
    1189              :         BT_AUDIO_CONTEXT_TYPE_NOTIFICATIONS = BIT(8),
    1190              :         /**
    1191              :          * Alerts the user to an incoming call, for example, an incoming telephony or video call,
    1192              :          * including traditional cellular as well as VoIP and Push-to-Talk
    1193              :          */
    1194              :         BT_AUDIO_CONTEXT_TYPE_RINGTONE = BIT(9),
    1195              :         /**
    1196              :          * Alarms and timers; immediate alerts, for example, in a critical battery alarm,
    1197              :          * timer expiry or alarm clock, toaster, cooker, kettle, microwave, etc.
    1198              :          */
    1199              :         BT_AUDIO_CONTEXT_TYPE_ALERTS = BIT(10),
    1200              :         /** Emergency alarm Emergency sounds, for example, fire alarms or other urgent alerts */
    1201              :         BT_AUDIO_CONTEXT_TYPE_EMERGENCY_ALARM = BIT(11),
    1202              : };
    1203              : 
    1204              : /**
    1205              :  * Any known context.
    1206              :  */
    1207            1 : #define BT_AUDIO_CONTEXT_TYPE_ANY        (BT_AUDIO_CONTEXT_TYPE_UNSPECIFIED | \
    1208              :                                           BT_AUDIO_CONTEXT_TYPE_CONVERSATIONAL | \
    1209              :                                           BT_AUDIO_CONTEXT_TYPE_MEDIA | \
    1210              :                                           BT_AUDIO_CONTEXT_TYPE_GAME | \
    1211              :                                           BT_AUDIO_CONTEXT_TYPE_INSTRUCTIONAL | \
    1212              :                                           BT_AUDIO_CONTEXT_TYPE_VOICE_ASSISTANTS | \
    1213              :                                           BT_AUDIO_CONTEXT_TYPE_LIVE | \
    1214              :                                           BT_AUDIO_CONTEXT_TYPE_SOUND_EFFECTS | \
    1215              :                                           BT_AUDIO_CONTEXT_TYPE_NOTIFICATIONS | \
    1216              :                                           BT_AUDIO_CONTEXT_TYPE_RINGTONE | \
    1217              :                                           BT_AUDIO_CONTEXT_TYPE_ALERTS | \
    1218              :                                           BT_AUDIO_CONTEXT_TYPE_EMERGENCY_ALARM)
    1219              : 
    1220              : /**
    1221              :  * @brief Parental rating defined by the Generic Audio assigned numbers (bluetooth.com).
    1222              :  *
    1223              :  * The numbering scheme is aligned with Annex F of EN 300 707 v1.2.1 which
    1224              :  * defined parental rating for viewing.
    1225              :  */
    1226            1 : enum bt_audio_parental_rating {
    1227              :         /** No rating */
    1228              :         BT_AUDIO_PARENTAL_RATING_NO_RATING        = 0x00,
    1229              :         /** For all ages */
    1230              :         BT_AUDIO_PARENTAL_RATING_AGE_ANY          = 0x01,
    1231              :         /** Recommended for listeners of age 5 and above */
    1232              :         BT_AUDIO_PARENTAL_RATING_AGE_5_OR_ABOVE   = 0x02,
    1233              :         /** Recommended for listeners of age 6 and above */
    1234              :         BT_AUDIO_PARENTAL_RATING_AGE_6_OR_ABOVE   = 0x03,
    1235              :         /** Recommended for listeners of age 7 and above */
    1236              :         BT_AUDIO_PARENTAL_RATING_AGE_7_OR_ABOVE   = 0x04,
    1237              :         /** Recommended for listeners of age 8 and above */
    1238              :         BT_AUDIO_PARENTAL_RATING_AGE_8_OR_ABOVE   = 0x05,
    1239              :         /** Recommended for listeners of age 9 and above */
    1240              :         BT_AUDIO_PARENTAL_RATING_AGE_9_OR_ABOVE   = 0x06,
    1241              :         /** Recommended for listeners of age 10 and above */
    1242              :         BT_AUDIO_PARENTAL_RATING_AGE_10_OR_ABOVE  = 0x07,
    1243              :         /** Recommended for listeners of age 11 and above */
    1244              :         BT_AUDIO_PARENTAL_RATING_AGE_11_OR_ABOVE  = 0x08,
    1245              :         /** Recommended for listeners of age 12 and above */
    1246              :         BT_AUDIO_PARENTAL_RATING_AGE_12_OR_ABOVE  = 0x09,
    1247              :         /** Recommended for listeners of age 13 and above */
    1248              :         BT_AUDIO_PARENTAL_RATING_AGE_13_OR_ABOVE  = 0x0A,
    1249              :         /** Recommended for listeners of age 14 and above */
    1250              :         BT_AUDIO_PARENTAL_RATING_AGE_14_OR_ABOVE  = 0x0B,
    1251              :         /** Recommended for listeners of age 15 and above */
    1252              :         BT_AUDIO_PARENTAL_RATING_AGE_15_OR_ABOVE  = 0x0C,
    1253              :         /** Recommended for listeners of age 16 and above */
    1254              :         BT_AUDIO_PARENTAL_RATING_AGE_16_OR_ABOVE  = 0x0D,
    1255              :         /** Recommended for listeners of age 17 and above */
    1256              :         BT_AUDIO_PARENTAL_RATING_AGE_17_OR_ABOVE  = 0x0E,
    1257              :         /** Recommended for listeners of age 18 and above */
    1258              :         BT_AUDIO_PARENTAL_RATING_AGE_18_OR_ABOVE  = 0x0F
    1259              : };
    1260              : 
    1261              : /** @brief Audio Active State defined by the Generic Audio assigned numbers (bluetooth.com). */
    1262            1 : enum bt_audio_active_state {
    1263              :         /** No audio data is being transmitted */
    1264              :         BT_AUDIO_ACTIVE_STATE_DISABLED       = 0x00,
    1265              :         /** Audio data is being transmitted */
    1266              :         BT_AUDIO_ACTIVE_STATE_ENABLED        = 0x01,
    1267              : };
    1268              : 
    1269              : /** Assisted Listening Stream defined by the Generic Audio assigned numbers (bluetooth.com). */
    1270            1 : enum bt_audio_assisted_listening_stream {
    1271              :         /** Unspecified audio enhancement */
    1272              :         BT_AUDIO_ASSISTED_LISTENING_STREAM_UNSPECIFIED = 0x00,
    1273              : };
    1274              : 
    1275              : /**
    1276              :  * @brief Codec metadata type IDs
    1277              :  *
    1278              :  * Metadata types defined by the Generic Audio assigned numbers (bluetooth.com).
    1279              :  */
    1280            1 : enum bt_audio_metadata_type {
    1281              :         /**
    1282              :          * @brief Preferred audio context.
    1283              :          *
    1284              :          * Bitfield of preferred audio contexts.
    1285              :          *
    1286              :          * If 0, the context type is not a preferred use case for this codec
    1287              :          * configuration.
    1288              :          *
    1289              :          * See the BT_AUDIO_CONTEXT_* for valid values.
    1290              :          */
    1291              :         BT_AUDIO_METADATA_TYPE_PREF_CONTEXT = 0x01,
    1292              : 
    1293              :         /**
    1294              :          * @brief Streaming audio context.
    1295              :          *
    1296              :          * Bitfield of streaming audio contexts.
    1297              :          *
    1298              :          * If 0, the context type is not a preferred use case for this codec
    1299              :          * configuration.
    1300              :          *
    1301              :          * See the BT_AUDIO_CONTEXT_* for valid values.
    1302              :          */
    1303              :         BT_AUDIO_METADATA_TYPE_STREAM_CONTEXT = 0x02,
    1304              : 
    1305              :         /** UTF-8 encoded title or summary of stream content */
    1306              :         BT_AUDIO_METADATA_TYPE_PROGRAM_INFO = 0x03,
    1307              : 
    1308              :         /**
    1309              :          * @brief Language
    1310              :          *
    1311              :          * 3 octet lower case language code defined by ISO 639-3
    1312              :          * Possible values can be found at https://iso639-3.sil.org/code_tables/639/data
    1313              :          */
    1314              :         BT_AUDIO_METADATA_TYPE_LANG = 0x04,
    1315              : 
    1316              :         /** Array of 8-bit CCID values */
    1317              :         BT_AUDIO_METADATA_TYPE_CCID_LIST = 0x05,
    1318              : 
    1319              :         /**
    1320              :          * @brief Parental rating
    1321              :          *
    1322              :          * See @ref bt_audio_parental_rating for valid values.
    1323              :          */
    1324              :         BT_AUDIO_METADATA_TYPE_PARENTAL_RATING = 0x06,
    1325              : 
    1326              :         /** UTF-8 encoded URI for additional Program information */
    1327              :         BT_AUDIO_METADATA_TYPE_PROGRAM_INFO_URI = 0x07,
    1328              : 
    1329              :         /**
    1330              :          * @brief Audio active state
    1331              :          *
    1332              :          * See @ref bt_audio_active_state for valid values.
    1333              :          */
    1334              :         BT_AUDIO_METADATA_TYPE_AUDIO_STATE = 0x08,
    1335              : 
    1336              :         /** Broadcast Audio Immediate Rendering flag  */
    1337              :         BT_AUDIO_METADATA_TYPE_BROADCAST_IMMEDIATE = 0x09,
    1338              : 
    1339              :         /**
    1340              :          * @brief Assisted listening stream
    1341              :          *
    1342              :          * See @ref bt_audio_assisted_listening_stream for valid values.
    1343              :          */
    1344              :         BT_AUDIO_METADATA_TYPE_ASSISTED_LISTENING_STREAM = 0x0A,
    1345              : 
    1346              :         /** UTF-8 encoded Broadcast name */
    1347              :         BT_AUDIO_METADATA_TYPE_BROADCAST_NAME = 0x0B,
    1348              : 
    1349              :         /** Extended metadata */
    1350              :         BT_AUDIO_METADATA_TYPE_EXTENDED = 0xFE,
    1351              : 
    1352              :         /** Vendor specific metadata */
    1353              :         BT_AUDIO_METADATA_TYPE_VENDOR = 0xFF,
    1354              : };
    1355              : 
    1356              : /**
    1357              :  * @brief Location values for BT Audio.
    1358              :  *
    1359              :  * These values are defined by the Generic Audio Assigned Numbers, bluetooth.com
    1360              :  */
    1361            1 : enum bt_audio_location {
    1362              :         /** Mono Audio (no specified Audio Location) */
    1363              :         BT_AUDIO_LOCATION_MONO_AUDIO = 0,
    1364              :         /** Front Left */
    1365              :         BT_AUDIO_LOCATION_FRONT_LEFT = BIT(0),
    1366              :         /** Front Right */
    1367              :         BT_AUDIO_LOCATION_FRONT_RIGHT = BIT(1),
    1368              :         /** Front Center */
    1369              :         BT_AUDIO_LOCATION_FRONT_CENTER = BIT(2),
    1370              :         /** Low Frequency Effects 1 */
    1371              :         BT_AUDIO_LOCATION_LOW_FREQ_EFFECTS_1 = BIT(3),
    1372              :         /** Back Left */
    1373              :         BT_AUDIO_LOCATION_BACK_LEFT = BIT(4),
    1374              :         /** Back Right */
    1375              :         BT_AUDIO_LOCATION_BACK_RIGHT = BIT(5),
    1376              :         /** Front Left of Center */
    1377              :         BT_AUDIO_LOCATION_FRONT_LEFT_OF_CENTER = BIT(6),
    1378              :         /** Front Right of Center */
    1379              :         BT_AUDIO_LOCATION_FRONT_RIGHT_OF_CENTER = BIT(7),
    1380              :         /** Back Center */
    1381              :         BT_AUDIO_LOCATION_BACK_CENTER = BIT(8),
    1382              :         /** Low Frequency Effects 2 */
    1383              :         BT_AUDIO_LOCATION_LOW_FREQ_EFFECTS_2 = BIT(9),
    1384              :         /** Side Left */
    1385              :         BT_AUDIO_LOCATION_SIDE_LEFT = BIT(10),
    1386              :         /** Side Right */
    1387              :         BT_AUDIO_LOCATION_SIDE_RIGHT = BIT(11),
    1388              :         /** Top Front Left */
    1389              :         BT_AUDIO_LOCATION_TOP_FRONT_LEFT = BIT(12),
    1390              :         /** Top Front Right */
    1391              :         BT_AUDIO_LOCATION_TOP_FRONT_RIGHT = BIT(13),
    1392              :         /** Top Front Center */
    1393              :         BT_AUDIO_LOCATION_TOP_FRONT_CENTER = BIT(14),
    1394              :         /** Top Center */
    1395              :         BT_AUDIO_LOCATION_TOP_CENTER = BIT(15),
    1396              :         /** Top Back Left */
    1397              :         BT_AUDIO_LOCATION_TOP_BACK_LEFT = BIT(16),
    1398              :         /** Top Back Right */
    1399              :         BT_AUDIO_LOCATION_TOP_BACK_RIGHT = BIT(17),
    1400              :         /** Top Side Left */
    1401              :         BT_AUDIO_LOCATION_TOP_SIDE_LEFT = BIT(18),
    1402              :         /** Top Side Right */
    1403              :         BT_AUDIO_LOCATION_TOP_SIDE_RIGHT = BIT(19),
    1404              :         /** Top Back Center */
    1405              :         BT_AUDIO_LOCATION_TOP_BACK_CENTER = BIT(20),
    1406              :         /** Bottom Front Center */
    1407              :         BT_AUDIO_LOCATION_BOTTOM_FRONT_CENTER = BIT(21),
    1408              :         /** Bottom Front Left */
    1409              :         BT_AUDIO_LOCATION_BOTTOM_FRONT_LEFT = BIT(22),
    1410              :         /** Bottom Front Right */
    1411              :         BT_AUDIO_LOCATION_BOTTOM_FRONT_RIGHT = BIT(23),
    1412              :         /** Front Left Wide */
    1413              :         BT_AUDIO_LOCATION_FRONT_LEFT_WIDE = BIT(24),
    1414              :         /** Front Right Wide */
    1415              :         BT_AUDIO_LOCATION_FRONT_RIGHT_WIDE = BIT(25),
    1416              :         /** Left Surround */
    1417              :         BT_AUDIO_LOCATION_LEFT_SURROUND = BIT(26),
    1418              :         /** Right Surround */
    1419              :         BT_AUDIO_LOCATION_RIGHT_SURROUND = BIT(27),
    1420              : };
    1421              : 
    1422              : /**
    1423              :  * Any known location.
    1424              :  */
    1425            1 : #define BT_AUDIO_LOCATION_ANY (BT_AUDIO_LOCATION_FRONT_LEFT | \
    1426              :                                BT_AUDIO_LOCATION_FRONT_RIGHT | \
    1427              :                                BT_AUDIO_LOCATION_FRONT_CENTER | \
    1428              :                                BT_AUDIO_LOCATION_LOW_FREQ_EFFECTS_1 | \
    1429              :                                BT_AUDIO_LOCATION_BACK_LEFT | \
    1430              :                                BT_AUDIO_LOCATION_BACK_RIGHT | \
    1431              :                                BT_AUDIO_LOCATION_FRONT_LEFT_OF_CENTER | \
    1432              :                                BT_AUDIO_LOCATION_FRONT_RIGHT_OF_CENTER | \
    1433              :                                BT_AUDIO_LOCATION_BACK_CENTER | \
    1434              :                                BT_AUDIO_LOCATION_LOW_FREQ_EFFECTS_2 | \
    1435              :                                BT_AUDIO_LOCATION_SIDE_LEFT | \
    1436              :                                BT_AUDIO_LOCATION_SIDE_RIGHT | \
    1437              :                                BT_AUDIO_LOCATION_TOP_FRONT_LEFT | \
    1438              :                                BT_AUDIO_LOCATION_TOP_FRONT_RIGHT | \
    1439              :                                BT_AUDIO_LOCATION_TOP_FRONT_CENTER | \
    1440              :                                BT_AUDIO_LOCATION_TOP_CENTER | \
    1441              :                                BT_AUDIO_LOCATION_TOP_BACK_LEFT | \
    1442              :                                BT_AUDIO_LOCATION_TOP_BACK_RIGHT | \
    1443              :                                BT_AUDIO_LOCATION_TOP_SIDE_LEFT | \
    1444              :                                BT_AUDIO_LOCATION_TOP_SIDE_RIGHT | \
    1445              :                                BT_AUDIO_LOCATION_TOP_BACK_CENTER | \
    1446              :                                BT_AUDIO_LOCATION_BOTTOM_FRONT_CENTER | \
    1447              :                                BT_AUDIO_LOCATION_BOTTOM_FRONT_LEFT | \
    1448              :                                BT_AUDIO_LOCATION_BOTTOM_FRONT_RIGHT | \
    1449              :                                BT_AUDIO_LOCATION_FRONT_LEFT_WIDE | \
    1450              :                                BT_AUDIO_LOCATION_FRONT_RIGHT_WIDE | \
    1451              :                                BT_AUDIO_LOCATION_LEFT_SURROUND | \
    1452              :                                BT_AUDIO_LOCATION_RIGHT_SURROUND)
    1453              : 
    1454              : /** @} */ /* end of bt_assigned_numbers_audio */
    1455              : 
    1456              : /**
    1457              :  * @name Company Identifiers (see Bluetooth Assigned Numbers)
    1458              :  * @{
    1459              :  */
    1460              : 
    1461            1 : #define BT_COMP_ID_LF           0x05f1 /**< The Linux Foundation */
    1462              : 
    1463              : /** @} */ /* end of @name Company Identifiers */
    1464              : 
    1465              : #ifdef __cplusplus
    1466              : }
    1467              : #endif
    1468              : 
    1469              : /**
    1470              :  * @}
    1471              :  */
    1472              : 
    1473              : #endif /* ZEPHYR_INCLUDE_BLUETOOTH_ASSIGNED_NUMBERS_H_ */
        

Generated by: LCOV version 2.0-1