ADK Sink Configuration PS Key Bit Fields
Transcription
ADK Sink Configuration PS Key Bit Fields
BlueCore® ADK Sink Application Configuration PS Key Bit Fields Application Note Issue 2 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 1 of 104 CS-236873-ANP2 www.csr.com Document History Revision Date History 1 04 FEB 13 Original publication of this document 2 17 APR 13 Section 2.27 added plus other minor updates General information Information on this product Customer support for this product More detail on compliance and standards Help with this document www.csr.com sales@csr.com www.csrsupport.com product.compliance@csr.com comments@csr.com Trademarks, Patents and Licences Unless otherwise stated, words and logos marked with ™ or ® are trademarks registered or owned by CSR plc and/or its affiliates. Bluetooth® and the Bluetooth logos are trademarks owned by Bluetooth SIG, Inc. and licensed to CSR. Other products, services and names used in this document may have been trademarked by their respective owners. The publication of this information does not imply that any licence is granted under any patent or other rights owned by CSR plc or its affiliates. CSR reserves the right to make technical changes to its products as part of its development programme. While every care has been taken to ensure the accuracy of the contents of this document, CSR cannot accept responsibility for any errors. Life Support Policy and Use in Safety-critical Compliance CSR‟s products are not authorised for use in life-support or safety-critical applications. Use in such applications is done at the sole discretion of the customer. CSR will not warrant the use of its devices in such applications. Performance and Conformance Refer to www.csrsupport.com for compliance and conformance to standards information. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 2 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Contacts Contents © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 3 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Document History.................................................................................................................................................... 2 Contacts .................................................................................................................................................................. 2 Trademarks, Patents and Licences ......................................................................................................................... 2 Life Support Policy and Use in Safety-critical Compliance ...................................................................................... 2 Performance and Conformance .............................................................................................................................. 2 Contents .................................................................................................................................................................. 3 1. Introduction ...................................................................................................................................................... 4 2. Description of PS Keys .................................................................................................................................... 5 2.1. Battery and Charger Configuration ........................................................................................................... 7 2.2. Button Configuration ............................................................................................................................... 16 2.3. Button Sequence Configuration .............................................................................................................. 17 2.4. PIO Input/Output and Microphone Control .............................................................................................. 18 2.5. HFP 1.5 Feature Configuration ............................................................................................................... 23 2.6. Sink Timeouts ......................................................................................................................................... 24 2.7. Tri Colour LED Information ..................................................................................................................... 27 2.8. Device ID/Software Version Number ...................................................................................................... 28 2.9. Lengths ................................................................................................................................................... 29 2.10. Button Translation ............................................................................................................................... 30 2.11. Radio Configuration............................................................................................................................. 31 2.12. SSR Configuration............................................................................................................................... 32 2.13. Feature Configuration.......................................................................................................................... 32 2.14. Speaker Gain Mapping........................................................................................................................ 47 2.15. HFP Initialisation Configuration ........................................................................................................... 51 2.16. LED Filter Configuration ...................................................................................................................... 53 2.17. User Defined Tones Configuration ...................................................................................................... 58 2.18. LED State Configuration...................................................................................................................... 59 2.19. LED Event Configuration ..................................................................................................................... 62 2.20. Event Configuration ............................................................................................................................. 66 2.21. Tone Configuration .............................................................................................................................. 69 2.22. Power Table Setting ............................................................................................................................ 69 2.23. RSSI Pairing ........................................................................................................................................ 73 2.24. USB Configuration............................................................................................................................... 74 2.25. FM Receiver Configuration .................................................................................................................. 79 2.26. BLE Remote Control Configuration ..................................................................................................... 80 2.27. Session Data ....................................................................................................................................... 81 Appendix A System Events ................................................................................................................................. 83 Appendix B Tones............................................................................................................................................... 97 Appendix C Sink States .................................................................................................................................... 102 Document References ........................................................................................................................................ 103 Terms and Definitions ......................................................................................................................................... 103 1. Introduction The Sink application included in the ADK provides a basis for developing Bluetooth enabled Headsets, Soundbars and speakers. This document describes the bit field structure of the PS Keys used to configure the application. Note: There are specific Configuration Tools for specific BlueCore Sink devices and it is important to use the correct version for the device being configured. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 4 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Use of the Sink Configuration Tool, which simplifies configuration of Sink application and available on www.csrsupport.com, is described in the Sink Configuration Tool User Guide. 2. Description of PS Keys Table 2.1 describes the Persistent Store Keys dedicated to the configuration in the Audio Sink applications. Description Units Valid Range Default Value Notes USR0 Power Configuration Structure - - See section 2.1. USR1 Button Configuration Structure - - See section 2.2. USR2 Button Sequence Configuration Structure - - See section 2.3. USR3 Custom AT Commands n/a - - See document Sending Custom AT Commands Including Battery Status Notifications USR4 PIO Input configuration uint16 - - See section 2.4. USR5 HFP 1.5 Features Enabled Structure - - See sections 2.15 and 2.5. USR6 Timers/Counters Structure - - See section 2.6. USR7 Tri colour LED information Structure - - See section 2.7. USR8 Device ID 4x uint16 Or 8x uint 16 n/a - See section 2.8. USR9 Contains length information for various other PS Keys 7x uint16 - - See section 2.9. USR10 Button Translation Structure - - See section 2.10. USR11 TTS Config Structure - - USR12 Session data Structure - - This key is written by the application when various options are set so they persist to the next time the application is run. See section 2.27 USR13 Radio Configuration Structure - - See section 2.11. USR14 SSR Parameters Structure - - See section 2.13. USR15 Feature Configuration Structure - - See section 2.13. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 5 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note PS Key Description Units Valid Range Default Value Notes USR16 Speaker Gain Mapping Structure - - See section 2.14. USR17 HFP Configuration Structure - - See section 2.15. USR18 LED Filter Definition Structure - - See section 2.16. USR19 User Defined Tones - - See section 2.17. USR20 LED State Definition - - See section 2.18. USR21 Contains the indexes and addresses of the voice prompts audio samples contained within the EEPROM USR22 LED Event Definitions Structure - - See section 2.19. USR23 System Event Configuration A Structure - - Defines configuration of up to 20 System Events. See section 2.20. USR24 System Event Configuration B Structure - - Defines configuration of up to another 20 System Events. See section 2.20. USR25 System Event Configuration C Structure - - Defines configuration of up to another 20 System Events. See section 2.21. USR26 Event Tone configuration Structure - - See section 2.21. USR27 RSSI Pairing Structure - - See section 2.233. USR28 USB Configuration - - See section 2.244. USR29 FM receiver configuration Structure - - See section 2.245. USR30 Unused n/a - - n/a USR31 Configuration ID Integer - - Holds the ID of the required default configuration stored in constant space. USR32 FM Frequency store Structure - - See section 2.245.1. USR33 BLE Remote configuration Structure - - See section 2.246. HFP_POWER_TABLE Power Table Settings Structure - - See section 2.22. Structure - © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 6 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note PS Key Table 2.1: Persistent Store Keys 2.1. Battery and Charger Configuration PSKEY_USR0 holds data defining the battery monitoring and charging parameters. The parameters are held in the following bit fields. Note: Vref Configuration (power_vref_config) Words 1-2: Label ADC Source Read Period When Charging Read Period When Not Charging Type uint8 uint8 uint16 Range 0-8 0-255 0-65535 Default Value Vref (4) 20 (seconds) 20 (seconds) Vbat Configuration (power_vbat_config) Words 3-4: Label ADC Source Read Period When Charging Read Period When Not Charging Type uint8 uint8 uint16 Range 0-8 0-255 0-65535 Default Value Vref (5) 20 (seconds) 20 (seconds) Notify Interval 1 Threshold 1 Notify Interval 2 Threshold 2 uint8 uint8 uint8 uint8 0-255 0-255 0-255 0-255 1 (minutes) 135 (*20 mV) 5 (minutes) 145 (*20 mV) Words 5-6: Words 7-8: Notify Interval 3 Threshold 3 Notify Interval 4 Threshold 4 uint8 uint8 uint8 uint8 0-255 0-255 0-255 0-255 0 (minutes) 155 (*20 mV) 0 (minutes) 165 (*20 mV) © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 7 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note The parameter name is followed by the Audio Sink configuration tool label in brackets: Words 9-10: Threshold 5 Interval 6 Threshold 6 uint8 uint8 uint8 uint8 0-255 0-255 0-255 0-255 0 (minutes) 175 (*20mV) 0 (minutes) 255 (*20mV) Thermistor Configuration (power_vthm_config) Words 11-12: Label ADC Source Read Period When Charging Read Period When Not Charging Type uint8 uint8 uint16 Range 0-8 0-255 0-65535 Default Value AIO0 (0) 20 (seconds) 20 (seconds) Word 13: Label Thermistor Drive Delay Unused Use Raw Limits Drive Thermistor PIO Enable Drive Thermistor PIO Type D[15:12] D[11:7] D[6] D[5] D[4:0] Range 0-15 N/A 0-1 0-1 0-31 Default Value 0 (ms) N/A 1 (Yes) 1 (Yes) 3 (PIO3) Words 14-20: Limit Threshold 1 Limit Threshold 2 Limit Threshold 3 Limit Threshold 4 Limit Threshold 5 Limit Threshold 6 Limit Threshold 7 uint16 uint16 uint16 uint16 uint16 uint16 uint16 0-65535 0-65535 0-65535 0-65535 0-65535 0-65535 0-65535 317 729 65535 (-1) 0 0 0 0 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 8 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Notify Interval 5 power_vchg_config (Charger Configuration) Words 21-23: vchg.adc.source vchg.adc.period_chg vchg.adc.period_no_chg vchg.limit Type uint8 uint8 uint16 uint16 Range 0-8 0-255 0-65535 0-65535 Default Value Vchg (6) 20 (seconds) 20 (seconds) 4250 (mV) sink_battery_setting (Vbat Configuration) Words 24-26: Label Unused Trigger Source 1 Event 1 Unused Trigger Source 2 Event 2 Trigger Source 3 Event 3 Type D[8:3] D[2:0] uint8 D[8:3] D[2:0] uint8 D[2:0] uint8 Range N/A Bitmask 0-255 N/A Bitmask 0-255 Bitmask 0-255 (0xad) Critical Warning N/A 7 7 (0x1a) Low Battery 3 (0x41) Gas Gauge 0 N/A Default Value Words 27-29: Unused Trigger Source 4 Event 4 Unused Trigger Source 5 Event 5 Unused Trigger Source 6 Event 6 D[8:3] D[2:0] uint8 D[8:3] D[2:0] uint8 D[8:3] D[2:0] uint8 N/A Bitmask 0-255 N/A Bitmask 0-255 N/A Bitmask 0-255 (0x42) Gas Gauge 1 N/A 3 (0x43) Gas Gauge 2 N/A 3 3 (0x44) Gas Gauge 3 N/A Charger Control Configuration sink_charge_setting (Charger Settings) sink_charge_current 1 Word 30: Label charge 1 boost 1 vsel 1 power_off 1 disable_leds 1 unused 1 current 1 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 9 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Label charge 1 boost 1 vsel 1 power_off 1 disable_leds 1 unused 1 current 1 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 Word 31: Label sink_vterm 1 trim 1 voltage 1 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Word 32: sink_charge_current 2 Label charge 2 boost 2 vsel 2 power_off 2 disable_leds 2 unused 2 current 2 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 Word 33: sink_charge_termination 2 Label sink_vterm 2 trim 2 voltage 2 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Word 34: sink_charge_current 3 Label charge 3 boost 3 vsel 3 power_off 3 disable_leds 3 unused 3 current 3 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 10 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note sink_charge_termination 1 Word 35: sink_charge_termination 3 sink_vterm 3 trim 3 voltage 3 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Word 36: sink_charge_current 4 Label charge 4 boost 4 vsel 4 power_off 4 disable_leds 4 unused 4 current 4 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 Word 37: sink_charge_termination 4 Label sink_vterm 4 trim 4 voltage 4 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Word 38: sink_charge_current 5 Label charge 5 boost 5 vsel 5 power_off 5 disable_leds 5 unused 5 current 5 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 11 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Word 39: sink_charge_termination 5 sink_vterm 5 trim 5 voltage 5 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Word 40: sink_charge_current 6 Label charge 6 boost 6 vsel 6 power_off 6 disable_leds 6 unused 6 current 6 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 Word 41: sink_charge_termination 6 Label sink_vterm 6 trim 6 voltage 6 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Word 42: sink_charge_current 7 Label charge 7 boost 7 vsel 7 power_off 7 disable_leds 7 unused 7 current 7 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 12 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Word 43:sink_charge_termination 7 sink_vterm 7 trim 7 voltage 7 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Word 44: sink_charge_current 8 Label charge 8 boost 8 vsel 8 power_off 8 disable_leds 8 unused 1 current 8 Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:D0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 (Off) 0 (Off) 0 (CHG) 0 (No) 0 (No) 0 0 Word 45: sink_charge_termination 8 Label sink_vterm 8 trim 8 voltage 8 Type D[15:12] D[11:8] uint8 Range 0-1 0-2 0-1 Default Value 0 0 (Off) 0 (CHG) Table 2.2: PSKEY_USR0 – Battery and Charger Configuration Bit Fields © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 13 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label 2.1.1. Detailed Descriptions of Parameters 2.1.1.1. Vref Reference Voltage Configuration Vref Configuration - ADC Source (vref.adc.source): The Vref input can be configured to use any of the available input sources, these being: 0 = AIO 0 1 = AIO 1 2 = AIO 2 3 = AIO 3 4 = VREF 5 = VBAT 6 = VCHG 7 = VDD_SENSE 8 = VREG_ENABLE Note: Not all inputs are available on all devices. Vref Configuration - Read Period When Charging (vref.adc.period_chg ): This configures the time interval between Vref updates in seconds while charging, 0 to disable. Vref Configuration - Read Period When Not Charging (vref.adc.period_no_chg): This configures the timer interval between Vref updates in seconds while not charging, 0 to disable. 2.1.1.2. Vbat Battery Voltage Monitoring Vbat Configuration - ADC Source (vbat.adc.source): The Vbat input can be configured to use any of the available input sources. See vref.adc.source for the list of sources. Vbat Configuration - Read Period When Charging (vbat.adc.period_chg): This configures the time interval between Vbat updates in seconds while charging, 0 to disable. Vbat Configuration - Read Period When Not Charging (vbat.adc.period_no_chg): This configures the timer interval between Vbat updates in seconds while not charging, 0 to disable. Vbat Configuration - Notify Interval 1 to 6 (vbat.limits[0-5].notify_period): This is an array of repeat timer intervals used to re-send events generated by the voltage threshold array, a value of 0 results in a single event being generated when the threshold is initially crossed. The interval time is specified in minutes, which is different to other intervals that are all specified in seconds. Vbat Configuration - Threshold 1 to 6 (vbat.limits[0-5].limit): Array of voltage thresholds that can be configured to generate events when the threshold of Vbat is reached. The scaling of the threshold is (value *20) in mV. 2.1.1.3. Vthm Thermistor Configuration Thermistor Configuration – ADC Source (vthm.adc.source): The Vthm input can be configured to use any of the available input sources. See vref.adc.source for the list of sources. Thermistor Configuration – Read Period When Charging (vthm.adc.period_chg): This configures the time interval between Vthm updates in seconds while charging, 0 to disable. Thermistor Configuration – Read Period When Not Charging (vthm.adc.period_no_chg): This configures the timer interval between Vthm updates in seconds while not charging, 0 to disable. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 14 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Thermistor Drive Delay (vthm.delay): Delay in milliseconds between activating the thermistor PIO and taking the ADC reading. This allows the voltage level to settle before the data is sampled. Use Raw Limits (vthm.raw_limits): When set, the limit thresholds need to be entered as raw ADC counts. When clear they need to be in mV. Drive Thermistor PIO tick box (vthm.drive_pio): When set, a PIO is used to provide drive to the thermistor circuit. Limit Threshold (limits[0-6]): Up to seven limit thresholds may be configured to provide up to eight regions of temperature based charging control. The list is ordered in ascending voltage order. The values are in units of ADC counts or millivolts depending on the setting of vthm.raw_limits. If fewer than seven limits are specified, the terminating value is 65535 (-1). 2.1.1.4. Vchg Charger Configuration Charger Settings – ADC Source (vchg.adc.source): The Vchg input can be configured to use any of the available input sources. Charger Settings – Read Period When Charging (vthm.adc.period_chg): This configures the time interval between Vchg updates in seconds while charging, 0 to disable. Charger Settings – Read Period When Not Charging (vthm.adc.period_no_chg): This configures the timer interval between Vchg updates in seconds while not charging, 0 to disable. Vchg Threshold (vchg.limit): Sets the USB VBUS voltage threshold. The charge current can be limited at VBUS voltages below this level. 2.1.1.5. Battery Notifications Configuration Events (bat_events.event): The battery notification event array, bat_events, is an array of 6 events which are sent (if configured) when the battery voltage level crosses the thresholds configured in the Vbat configuration power_vbat_config. If the battery voltage level falls below vbat.limits[0] (Threshold 1) then the event configured by Event 1 is generated. If it rises above vbat.limits[0] (Threshold 1), then Event 2 is generated. This behaviour is the same for all of the threshold values 1-5. Threshold 6 should be set to 0xff. Trigger Source (bat_events.sources): The notification events can be configured to be sent during one or several of the following operating modes: 2.1.1.6. Bit[0]: automatic sending of event Bit[1]: event sent on user requested battery level read Bit[2]: event sent on initial battery level reading Charger Configuration The charger configuration consists of an array of eight possible charger configuration entries, each entries contains the following parameters: charger (Charge): Set to use this entry to control the charger © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 15 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Drive Thermistor PIO (vthm.pio): when the Drive Thermistor PIO is set, this parameter sets the PIO required to be driven when a thermistor reading is taken. boost (Boost): Boost charging can be disabled or set to internal or externally controlled boost if the device and firmware revision supports it. 0 = Disabled. Boost mode is disabled. 1 = Internal. Internal boost mode is enabled on supported devices. 2 = External. External boost mode is enabled on supported devices. Note: Vsel (vsel): The voltage source for the IC can be set to CHARGER or Vbat. Power Off (power_off): When checked the Sink will reduce to the minimum power consumption possible. Useful for powering off the device at certain temperatures. Disable Leds (disable_led): When set the LEDs are disabled while charging. Current (current): Charge current specified in mA. Type (sink_vterm): CSR8600 range of devices can use voltage type which allows the user to specify the exact voltage cut off for charging, the BlueCore5 range of ICs use trim type whereby a small trim value may be applied to the present voltage cut off value: 0 = Default 1 = Voltage 2 = Trim Trim (trim): End of charging trim voltage adjustment value for use on BlueCore5 range of devices Voltage (voltage): End of charging cut off voltage value for CSR8600 range of devices. The scaling of the threshold is (value *20) in mV. 2.2. Button Configuration PSKEY_USR1 holds data that configures button press definitions. The parameters are held in the following bit fields: Label Double Press Time Long Press Time Very Long Press Time Repeat Time Very Very Long PressTime Debounce checks Debounce interval Type uint16 uint16 uint16 uint16 uint16 uint8 uint8 Range 100-1000 (ms) 500-8000 (ms) 1000-12000 (ms) 100-5000 (ms) 100012000 (ms) 0-255 0-255 (ms) Default Value 500 (0x01f4) 1000 (0x03e8) 2500 (0x09c4) 800 (0x0320) 5000 (0x1388) 0 (0x00) 0 (0x00) Table 2.3: PSKEY_USR1 – Button Configuration Bit Fields Note: Default values quoted are for four button configuration. Double Press (double_press_time): The time given to detect a second press before reporting the button press as a single press. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 16 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note External circuitry is required to control the boost charge current. Long Press (long_press_time): The time a button has to be pressed for in order to generate a long timer message. Very Long Press (very_long_press_time): The time a button has to be pressed for in order to generate a very long timer message. Repeate Rate (repeat_time): The time between repeat messages being generated if a button is held down. No of Debounce Checks (debounce_number): The number of debounce checks performed. Time Between Debounce Checks (debounce_period_ms): The interval between each debounce check in ms. Note: If either debounce_number or debounce_period_ms are set to zero then 4 debounce checks are made at 15 ms intervals. 2.3. Button Sequence Configuration PSKEY_USR2 allows four sequences of up to six button presses to be defined and used to generate a system event. Every time a PIO is pressed the code checks for a match to the defined pattern. If the sequence of button presses matches the sequence in the key then the specified event is sent to the main message loop. Note: There is no limit to the time between button presses and no distinction is made between short or long button presses. The key contains up to four event sequences in the form: PIO Sequence to Match Label Event Key 1 Key 2 Key 3 Key 4 Key 5 Key 6 uint32 uint32 uint32 uint32 uint32 n/a n/a Type uint16 uint32 Range 0x6001 - 0x60c8 Set bit pattern for required button press sequence Default Value n/a n/a n/a n/a n/a Table 2.4: PSKEY_USR2 Button Sequence Configuration Bit Fields Button Patterns - Event (EventToSend): This is the event that is generated after a successful sequence match. Button Patterns - PIO Sequence to Match (ButtonToMatch[0-5])): This is a sequence of six 32-bit patterns representing the PIOs that are to be matched. If a pattern sequence less than six buttons is required the last PIO Keys can be set to 0. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 17 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Very Very Long Press (very_very_long_press_time): The time a button has to be pressed for in order to generate a very very long timer message. Example To configure the generation of the event EventEnterDUTmode (0x6015) as a result of 6 presses of PIO[0] and the event EventResetPairedDeviceList (0x6014) as a result of 4 presses of PIO[1] the key would hold the hex value: 6015 0000 0001 0000 0001 0000 0001 0000 0001 0000 0001 0000 0001 6014 0000 0002 0000 0002 0000 0002 0000 0002 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 The third and fourth sequences are not used in this example and are initialised to 0. Note: Normal system events should be configured using PSKEY_USR23 24 and 25. See section 2.19. 2.4. PIO Input/Output and Microphone Control PSKEY_USR4 configures the PIOs and controls the microphone/line input and mic bias pins. Words 1-2: Input PIOs Label unused Wired Input PIO Charger Input PIO DUT Mode PIO Type uint16[D15:8] [D7:0] uint16[D15:8] [D7:0] Range n/a 0-31 0-11 0-11 Default Value 0xff 0xff (not used) 0xff (not used) 0xff (not used) Words 3-6: Output PIOs Label Call Active Incoming Outgoing Sink Active Type uint16[D15:8] [D7:0] uint16[D15:8] [D7:0] Range 0-31 0-31 0-31 0-31 Default Value 0xff (not used) 0xff (not used) 0xff (not used) 0xff (not used) Label Power On Unused LED Enable Unused Type uint16[D15:8] [D7:0] uint16[D15:8] [D7:0] Range 0-31 n/a 0-31 n/a Default Value 0xff (not used) 0xff 0xff (not used) 0xff © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 18 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 Words 7-8: PIO Invert Mask PIO Invert Mask Bits Type uint32 Range 0-0xffffffff Default Value 0x00000000 Common Microphone Parameters - audio_mic_params Word 9: Mic A Parameters Label MicA Digital MicA Preamp MicA Drive PIO/Bias MicA PIO/Bias MicA Bias MicA Unused MicA Gain Type uint16 [D15] [D14] [D13] [D12:8] [D7] [D6:5] [D4:0] Range 0-1 0-1 0-1 0-31 0-1 0-1 0-31 Default Value 0x0 0x1 0x1 0x00 0x1 0x0 0x5 Word 10: Mic B Parameters Label MicB Digital MicB Preamp MicB Drive PIO/Bias MicB PIO/Bias MicB Bias MicB Unused MicB Gain Type uint16 [D15] [D14] [D13] [D12:8] [D7] [D6:5] [D4:0] Range 0-1 0-1 0-1 0-31 0-1 0-1 0-31 Default Value 0x0 0x1 0x1 0x00 0x1 0x0 0x5 LineA Bias LineA Unused LineA Gain Word 11: Line A Parameters Label LineA Digital LineA Preamp LineA Drive PIO LineA PIO Type uint16 [D15] [D14] [D13] [D12:8] [D7] [D6:5] [D4:0] Range 0-1 0-1 0-1 0-31 0-1 0-1 0-31 Default Value 0x0 0x0 0x0 0x00 0x0 0x0 0x00 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 19 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Word 12: Line B Parameters LineB Digital LineB Preamp LineB Drive PIO LineB PIO LineB Bias LineB Unused LineB Gain Type uint16 [D15] [D14] [D13] [D12:8] [D7] [D6:5] [D4:0] Range 0-1 0-1 0-1 0-31 0-1 0-1 0-31 Default Value 0x0 0x0 0x0 0x00 0x0 0x0 0x00 Words 13-14 PIO Mapping Assignments Label PIO Mapping Bitmask Type uint32 Range 0-ffffffff Default Value 0x00000000 Table 2.5: PSKEY_USR4 – PIO Configuration Bit Fields Note: Default values quoted are for four-button configuration. Description of Bit Fields Wired Input PIO (wired_input): This configures a PIO to detect when wired audio is being used e.g. when a connector is plugged in. Charger Input PIO (charger_input): This setting has no effect. DUT Mode PIO (dut_pio): This configures a PIO to enable the device to switch into DUT mode on power on. Example To configure PIO[0] as the Wired Audio Input PIO and PIO[11] as the DUT Mode, Words 1 and 2 of PSKEY_USR4 would hold the hex value: 0xff00ff0b © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 20 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Output PIOs (pio_outputs): It is possible to configure PIOs to be driven by some Sink features or actions. Depending on the PIO chosen it may be necessary to also set the MAP bit mask to allow the PIO to be used as a general IO pin. Call Active (CallActivePIO): Configures the PIO to drive when a call is active. Incoming (IncomingRingPIO): Configures the PIO to drive when an incoming call is ringing. Outgoing (OutgoingRingPIO): Configures the PIO to drive when an outgoing call is ringing. Device Audio Active (DeviceAudioActivePIO): Configures the PIO to drive when an HFP audio connection is made. i.e. The PIO will not be driven high when there is an active call, but the microphone and speakers are being used on the phone. Power On (PowerOnPIO): Configures the PIO to drive when the device powers up. LED Enable (LedEnablePIO): Configures the PIO to drive when the LEDs are used. PIO Invert (pio_invert): It is possible to invert the logic of one or many PIO inputs using a 32 bit bitmask corresponding to PIOs 31 to 0, this allows use with different hardware/button configurations. Common Microphone Parameters (audio_mic_params): The Microphone A, B and Line A and B inputs can be configured separately to use digital or analogue hardware and the mic bias control is fully configurable. The Mic A and B settings are used by default and the Line A and B settings are used when wired audio mode is selected. Mic X Digital (mic_x.digital): Selects the digital microphone inputs when set. Mic X Preamp (mic_x.pre_amp): Enables the microphone preamplifier when set. This bit only has an effect when the “No DSP” Audio plugin is used. CVC audio plugins automatically adjust the input gain of the device. Drive PIO/BIAS when using Mic X - tickbox (mic_x.drive_pio): Enables the MIC bias or PIO when using the mic. The MIC bias or PIO is selected with mic_x.bias. Bit = 1: Enable the bias/PIO. Bit = 0: Disable the bias/PIO. Drive PIO/BIAS when using Mic X – dropdown menu (mic_x.pio): Selects which MIC Bias pin or PIO is used. The Mic Bias or PIO is selected with mic_x.bias. The output is enabled with mic_x.drive_pio. mic_x.drive_pio mic_x.bias = 0 mic_x.bias = 1 0 PIO 0 Mic Bias 0 1 PIO 1 Mic Bias 1 2-31 PIO2 – 31 Invalid 32-41 (CSR8670 only) CAP SENSE 0 -7 Invalid mic_x .bias (Mic X Bias): This bit chooses between using the MIC bias output or a PIO to drive the MIC. Bit = 1: Use the MIC bias output Note: The mic_x.drive_pio needs to be enabled before the bias is turned on). Bit = 0: Do not use the MIC bias output. mic_x.gain (Mic X Gain): Sets the gain of the analogue input path. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 21 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Line X Digital (line_x.digital): This parameter has no effect. Line X Preamp (line_x.pre_amp ): Enables the preamplifier when set. Drive PIO/BIAS when using Line X - tickbox (line_x.drive_pio): This setting enables the LINE bias pin if line_x.bias is set, or a PIO if it is clear. mic_x.drive_pio mic_x.bias = 0 mic_x.bias = 1 0 PIO 0 Mic Bias 0 1 PIO 1 Mic Bias 1 2-31 PIO2 – 31 Invalid 32-41 (CSR8670 only) CAP SENSE 0 -7 Invalid Line X Bias (line_x .bias): This bit chooses between using the MIC bias output or a PIO when the line is being used. Bit = 1: Use the MIC bias output. Note: mic_x.drive_pio needs to be enabled before the bias is turned on. Bit = 0: Do not use the MIC bias output. Line X Gain (line_x.gain): Sets the gain of the analogue input path. Pio Set Map Pins Mask (pio_map): In order to use certain PIOs that are shared with other hardware it is necessary to set the map pin bit for that PIO, if not set the PIO is not available for general input/output use. PIO 0 to PIO 12 are automatically mapped for general input/output access, it is not necessary to set the map pins for PIO 0 to PIO 12. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 22 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Drive PIO/BIAS when using Line X – dropdown menu (line_x.pio): Selects which MIC Bias pin or PIO is used. The Mic Bias or PIO is selected with line_x.bias. The output is enabled with line_x.drive_pio. 2.5. HFP 1.5 Feature Configuration PSKEY_USR5 must be set when developing a device that will support version 1.5 of the Handsfree Profile (HFP v1.5). The feature configuration data is held in the following bit fields: Type uint16 [D15] Values 0x1 enabled 0x0 disabled Reserved Additional Params Used Audio Sync Packet Types Bandwidth Max Latency Voice Settings Retransmission Effort [D14:1] [D0] uint16 uint32 uint16 uint16 uint16 - See Audio Packet Types Bitmask - - - - n/a Table 2.6: PSKEY_USR5 – HFP v1.5 Feature Configuration Bit Fields Audio Packet Types Bitmask This bitmask is used for SCO/eSCO negotiation. The Sink automatically negotiates the best audio package type that can be achieved from the activated package types. Bit Packet Type Mask Value D[15] D[14] D[13] D[12] D[11] D[10] D[9] D[8] reserved Reserved reserved reserved Reserved reserved sync_3ev 5 sync_2ev 5 n/a n/a n/a n/a n/a n/a 0x0200 0x0100 D[7] D[6] D[5] D[4] D[3] D[2] D[1] D[0] sync_3ev3 sync_2ev3 sync_ev5 sync_ev4 sync_ev3 sync_hv3 sync_hv2 sync_hv1 0x0080 0x0040 0x0020 0x0010 0x0008 0x0004 0x0002 0x0001 Table 2.7: PSKEY_USR5 – Audio Packet Type Bitmask Bit = 1: The packet type will be included in audio negotiation. Note: eSCO packet types are only available if HFP 1.5 support is enabled see below. Bit = 0: The packet type will not be included in audio negotiation. Important Note: The enable bits are inverted for D[6], D[7], D[8], and D[9] i.e: 0 = included in audio negotiation 1 = not included in audio negotiation © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 23 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label HFP 1.5 Enable 2.6. Sink Timeouts DisablePowerOffAfterPowerOnTime_s PairModeTimeout_s MuteRemindTime_s uint16 uint16 Range 0-600 (secs) 0-60 (secs) 0-3600 (secs) 0-60 (secs) 0-65536 (secs) 0-60 (secs) Default Value 300 (0x012c) 30 (0x001e) 10 (0x000a) 3 (0x0003) 600 (0x0258) 10 (0x000a) InquiryTimeout_s ReconnectionAttempts ConnectableTimeout_s Label SecondAGConnectDelayTime_s NetworkServiceIndicatorRepeatTime_s uint16 Encryption RefreshTimeout_m AutoPowerOnTimeout_s uint16 PairModeTimeoutIfPDL_s uint16 Label uint16 Type Type uint16 uint16 uint16 uint16 uint16 uint16 Range 0-65535 (secs) 0-65535 (secs) 0-65535 0-65535 (min) 0-65535 (secs) 0-65535 (ms) Default Value 60 (0x003c) 0 (0x0000) 0 (0x0000) 15 (0x000f) 120 (0x0078) 100 (0x0064) © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 24 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note AutoSwitchOffTime_s PSKEY_USR6 configures the Timers and Counters used in the application. SpeechRecRepeatTime_ms LanguageConfirmTime_s A2DPLinkLossReconnectionTime_s MissedCallIndicateRepeatTime_s MissedCallIndicatePeriod_s Label uint16 uint16 uint16 uint16 uint16 Range 0-65535 (ms) 0-65535 (ms) 0-65535 (ms) 0-65535 (ms) 0-65535 (ms) Default Value 5 (0x0005) 5 (0x0005) 60 (0x003c) 5 (0x0003) 7000 (0x1b58) Table 2.8: PSKEY_USR6 –Timers and Counters 2.6.1. Description of Timers and Counters Automatic Switch Off Time (AutoSwitchOffTime_s): The time in seconds after which the Sink switches off if not connected. If set to 0 then the Sink remains on indefinitely. Auto Power On Timeout (AutoPowerOnTimeout_s): The value in seconds that the Sink waits in the limbo state for a power on event before powering off. The limbo state is entered when the device is powered or receives a power off event. Network Service Indicator Interval (NetworkServiceIndicatorRepeatTime_s): The time in seconds after which the network service indication is replayed if there is no network present in the connected AG. Disable Power Off After Power On Time (DisablePowerOffAfterPowerOnTime_s): The time after Power On for which the Power Off event has no effect. This is used for example, if the UI specifies that a long press on Power On enters pairing mode but a long press at any other time (including in the connectable state) should Power Off the Sink. Paring Timeout (PairModeTimeout_s): The time in seconds that the Sink remains in the connectable / discoverable state (pairing mode). Setting this to 0 results in the Sink entering and immediately exiting discoverable mode, with the result that the device cannot be discovered. If the Sink is to always be discoverable while not connected, then the feature bit Automatic Pairing Mode Enable (see PSKEY_USR15, section 2.13) should be used in conjunction with this timeout. Mute Reminder Interval (MuteRemindTime_s): The time between mute reminder updates. This is used for LED and Tone reminders to indicate that the Sink is muted. Connectable Timeout (ConnectableTimeout_s): Specifies the amount of time the Sink remains connectable following a successful connection when using multipoint operational modes before not being connectable any more. Pairing Mode Timeout if PDL is Empty (PairModeTimeoutIfPDL_s): Zero to disable, if set to a non zero value this is the pairing mode timeout value if the PDL is completely empty, if the PDL is not empty the PairModeTimeout value is used instead. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 25 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Type Max Number of Reconnection Attempts (ReconnectionAttempts): This specifies the number of reconnection attempts following an establish SLC event, or automatic reconnection event, if set to 0 and the reconnection action is set to „LIST‟ the PDL will be traversed once only, if this value is set to 100 for example the PDL will be traversed for 100 connection attempts. Note: The encryption is only refreshed when no SCO link is open, i.e. there are no active calls. If the timer expirers when there is an active call, no action is taken and the timer is rescheduled for another timeout period. Inquiry Timeout Period (InquiryTimeout_s): This is the timeout value for RSSI initiated pairing. Role Switch After Connection Delay (CheckRoleDelayTime_s): Unused in the ADK. Second AG Connection Delay Time (SecondAGConnectDelayTime_s): This value determines the delay time, in ms, between the connection of AG1 and the start of connection to AG2 when using multipoint mode of operation. This value may be changed from its default value if interoperability issues are seen with certain AGs. Missed Call Indicator Interval (MissedCallIndicateTime_s): The Sink applications include a Missed Call feature. This sends an EventMissedCall event when the Sink has seen an incoming call that did not get answered before being terminated at the remote end, this event is repeatedly sent if the MissedCallIndicateTime timer value is set to a non-zero value and repeats at the interval set by this parameter. Missed Call Indicator Attempts (MissedCallIndicateAttemps): This parameter specifies the number of times the missed call indication will be played at the Indicator interval time. A2DP Link Loss Reconnection Period (A2dpLinkLossReconnectionTime_s): This feature is only present in the A2DP platform. It is used to specify the period, in seconds, over which to attempt reconnection following a link loss. Time Before Confirming VP Language (LanguageConfirmTime_s): when changing voice prompt languages, it is possible to have the language change automatically confirmed and stored. If set to a non-zero value the change will be committed to ps after the configured time in seconds. Speech Recognition Repeat Interval (SpeechRecRepeatTime_ms): it is possible to tune the time, in ms, at which the speech recognition voice prompt is repeated. This may be necessary depending upon the length of voice prompt instruction chosen. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 26 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Encryption Refresh Timeout (EncryptionRefreshTimeout_m): This timer value causes the link encryption key to change when the timer expires, e.g. if set at 15 minutes the key used to encrypt the Bluetooth link is changed every 15 minutes, this improves the security of the Sink. 2.7. Tri Colour LED Information PSKEY_USR7 is used to define the PIO or LED attached to any tricolour LEDs. Once defined, tricolour LEDs can then be passed into LED Filter Configuration (PSKEY_USR18), LED Configuration (PSKEY_USR20) or LED Event Configuration (PSKEY_USR22) to achieve different colours e.g. Red + Blue to give Purple. A bitmask is used to specify the PIO/LED attached to the Tricolour connection pins: D[15] D[14] D[13] D[12] D[11] D[10] D[9] Mask value LED_1 LED_0 TriCol_a + TriCol_c TriCol_b + TriCol_c TriCol_a + TriCol_b PIO_10 PIO_9 D[8] D[7] D[6] D[5] D[4] D[3] D[2] D[1] D[0] PIO_8 PIO_7 PIO_6 PIO_5 PIO_4 PIO_3 PIO_2 PIO_1 PIO_0 Table 2.9: Bitmask Definition for Assigning PIO_x/LED_x PSKEY_USR7 The effect of setting PSKEY_USR7 is best described by considering an example: Label TriCol_a TriCol_b TriCol_c Unused Type uint16 [D15:12] [D10:8] [D7:4] [D3:0] Description Define PIO_x/LED_x (to specify the PIO or LED pin connected to TriCol_a LED pins) Define PIO_x/LED_x (to specify the PIO or LED pin connected to TriCol_b LED pins) Define PIO_x/LED_x (to specify the PIO or LED pin connected to TriCol_c LED pins) n/a Example: to define a Red, Green and Blue connected to PIO[2], LED_0 and LED_1 respectively. (See table for further explanation) 0x2 0xe 0xf 0x0 Binary 0010 1110 1111 0000 Following the example configuration above specifying the LED entries in LED Filter Configuration (PSKEY_USR18), LED Configuration (PSKEY_USR20) or LED Event Configuration (PSKEY_USR22) will have the results shown in Table 2.10 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 27 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Bit LED Entry Used Resulting LED Colour Red LED only 14 Green LED only 15 Blue LED only 11 Red and Green LEDs 12 Green and Blue LEDs 13 Red and Blue LEDs Table 2.10: Example LED Configuration Results 2.8. Device ID/Software Version Number PSKEY_USR8 contains the current application software version number. On entry into service mode, the Sink becomes discoverable and changes its local name to the Bluetooth address + the contents of PSKEY_USR8. Label Software Version Type 4 x uint16 [D63:0] Example 0x0000000000000000 The device ID profile is also supported when DEVICE_ID_PSKEY is defined. The data in the first four words of PSKEY_USR8 is used for generating the Device ID SDP record and Device ID extended inquiry response record. The PS Key is made up of eight uint16 words which are read into the device_id_data structure. The parameters are held in the following bit fields: Label Vendor ID Source Vendor ID Product ID BCD Version Software Version Type uint16 [D15:0] uint16 [D15:0] uint16 [D15:0] uint16 [D15:0] 4 x uint16 [D63:0] Example 0x0001 0x1234 0x0000 0xABCD 0x0000000000000000 Vendor ID Source (vendor_id_source): 0x0001 = Vendor ID has been assigned by the Bluetooth Special Interest Group 0x0002 = Vendor ID has been assigned by the USB Implementers Forum Vendor ID (vendor_id): Should be set as assigned by the Vendor ID source. Product ID (product_id): Should be set as appropriate for the product. BCD Version (bcd_version): Should be set as appropriate for the product version where: 0xABCD = vAB.C.D. Software Version (sw_version): Should be set to the appropriate software version for the product. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 28 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 2 2.9. Lengths PSKEY_USR9 contains the lengths information for various other PS Keys including LEDs and tones. Word 2 Word 3 Word 4 Word 5 Word 6 Desc. Number of text to speech events configured Bit mask of languages supported by TTS Number of LED filters configured Number of LED states configured Number of LED events configured Number of tones configured Default Value 0x0000 0x0001 0x0009 0x000b 0x0005 0x0026 Word 7 Word 8 Word 9 Word 10 Bit[15:8] Bit[7:0] Desc. Number of voice prompts configured Number of user defined tones configured Size of Custom AT Commands PS Defrag Key Size PS Defrag Key Minimum Default Value 0x0000 0x0000 0x000c 0x0f 0x0f 2.9.1. Description of Words Word 1 (no_tts): The number of text to speech events configured. Word 2 (no_tts_languages): The number of languages supported by the text to speech engine if included in the build. Word 3 (no_led_filter): The number of LED filters configured in PSKEY_USR18. Word 4 (no_led_states): The number of LED states configured in PSKEY_USR20. Word 5 (no_led_events): The number of LED events configured in PSKEY_USR22. Word 6 (no_tones): The number of tones configured in PSKEY_USR26. Word 7 (no_vp): The number of voice prompts configured if the build supports voice prompts. Word 8 (userTonesLength): The number of user defined tones configured in PSKEY_USR19. Word 9 (size_at_commands): The size of the custom AT commands configured in PSKEY_USR3, size is the character count of AT commands. Word 10 (defrag_config ): Forces a PS defrag when the number of available PS Keys of Key Size (key_size), Bit[15:8], are less than the minimum value (key_minimum) set in Bit[7:0] © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 29 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Word 1 2.10. Button Translation PSKEY_USR10 contains the button translation table. This maps logical inputs onto physical inputs such as PIOs or Capacitive touch sensors. Input A number Input A Input B number Input B Input C number Input C Input D number Input D Type D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] Range 0-255 0-255 0-255 0-255 0-255 0-255 0-255 0-255 Default Value 0x00 0x13 0x01 0x15 0x02 0x14 0x03 0x12 Label Input E number Input E Input F number Input F Input G number Input G Input H number Input H Type D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] Range 0-255 0-255 0-255 0-255 0-255 0-255 0-255 0-255 Default Value 0x00 0x13 0x00 0x13 0x00 0x13 0x00 0x13 Label Input I number Input I Input J number Input J Input K number Input K Input L number Input L Type D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] Range 0-255 0-255 0-255 0-255 0-255 0-255 0-255 0-255 Default Value 0x00 0x13 0x00 0x13 0x00 0x13 0x00 0x13 Label Input M number Input M Input N number Input N Input O number Input O Input P number Input P Type D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] D[15:8] D[7:0] Range 0-255 0-255 0-255 0-255 0-255 0-255 0-255 0-255 Default Value 0x00 0x13 0x00 0x13 0x00 0x13 0x00 0x13 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 30 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Input Q number Input Q Input R number Input R Type D[15:8] D[7:0] D[15:8] D[7:0] Range 0-255 0-255 0-255 0-255 Default Value 0x18 0x18 0x19 0x19 Table 2.11: PSKEY_USR10 - Button Translation Configuration The Sink has 18 logical inputs that can be assigned physical inputs. The Sink inputs are configured as input 0 to 15, VREG(16) and CHG(17). Input Number (button_no): The input number to be assigned. Input: The input is split into input_source D[7:6] and input_number D[5:0] input_source: The type of input source: 0 = PIO 1 = CAP SENSE (for CSR8670) 2 = RESERVED 3 = RESERVED To map input 0 to a button attached to PIO 19 a configuration word of 0x0013 is used where 00 is the input being configured and 13 is the PIO chosen for this input. To map input 0 to cap sense input 1 a configuration word of 0x0041 is used where 00 is the input being configured and 41 is the cap sense chosen for this input. While it is possible to use up to PIO31 for a button input it may be necessary to configure the chosen PIO to be useable as a general purpose I/O line which can be done through the set map pins configuration word in PSKEY_USER4. PIO pins 0 to 12 do not need mapping for general I/O use, some additional higher number PIO pins also do not need mapping, see the device datasheet for details of which pins are multiplexed with other functions. 2.11. Radio Configuration PSKEY_USR13 determines the radio Inquiry and Page scan characteristics: Label Page Scan Interval (slots) Page Scan Window (slots) Inquiry Scan Interval (slots) Inquiry Scan Window (slots) Type uint16 uint16 uint16 uint16 Range 18-4096 (0x0012 – 0x1000) 18-4096 (0x0012 – 0x1000) 18-4096 (0x0012 – 0x1000) 18-4096 (0x0012 – 0x1000) Default Value 2048 (0x0800) 18 (0x0012) 2048 (0x0800) 18 (0x0012) Table 2.12: PSKEY_USR13 – Radio Configuration Bit Fields © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 31 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Note: Default values quoted are for four-button configuration. The Audio Sink Configuration Tool does not provide an interface to this PS Key. The default values have been selected to give the best performance characteristics and it is not recommended that these are changed in most circumstances. SSR Configuration PSKEY_USR14 holds SSR Configuration parameters. It is used to set up preferred subrating parameters to be used when the device enters sniff mode for SLC and SCO connections. Word 1 Word 2 Description Default Value Word 3 Word 4 Word 5 SLC Word 6 SCO Max. remote latency Min. remote timeout Min. Local Timeout Max. remote latency Min. remote timeout Min. Local Timeout 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 Max. Remote Latency: The maximum time the remote device need not be present when subrating. Min. Remote Timeout: The minimum time the remote device should stay in sniff before entering subrating mode. Min. Local Timeout: The minimum time the local device should stay in sniff before entering subrating mode. Note: All values are in 0.625 ms units. 2.13. Feature Configuration PSKEY_USR15 holds six words used to configure the features described in this section. The description contains the Audio Sink Configuration Tool label followed by the ADK parameter name in brackets. Note: The default values quoted are for the config_csr_stereo configuration defined in the ADK. 2.13.1. PSKEY_USR15 Word 1 Bit Feature Default 0x9332 D[15] ReconnectOnPanic 1 D[14] OverideFilterPermanentlyOn 0 D[13] MuteSpeakerAndMic 0 D[12] PlayTonesAtFixedVolume 1 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 32 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 2.12. Feature Default 0x9332 D[11] PowerOffAfterPDLResest 0 D[10] RemainDiscoverableAtAllTimes 0 D[9] DisablePowerOffAfterPowerOn 1 D[8] AutoAnswerOnConnect 1 D[7] EnterPairingModeOnFailureToConnect 0 D[6] unused 0 D[5] unused 0 D[4] AdjustVolumeWhilstMuted 1 D[3] VolumeChangeCausesUnMute 0 D[2] PowerOffOnlyIfVRegEnLow 00 D[1] LimitRssiSuboowferPairing 1 D[0] pair_mode_en 0 Table 2.13: Word One – Feature Configuration Bit Fields Description of Bit Fields Reconnect on Panic (ReconnectOnPanic): Bit = 1: The Sink silently reboots and reconnects to the AG in the event of a panic. Bit = 0: The Sink powers off and does not turn back on without user intervention in the event of a panic. Override Filter LED is Permanently On (OverideFilterPermanentlyOn): Bit = 1: When displaying an override filter LED indication there will be no breaks in a solid colour display. Normal mode/event indications are suppressed for the LED chosen for the override LED filter. Bit = 0: The LED override filter functions as normal. Mute Speaker as well as Microphone (MuteSpeakerAndMic): Bit = 1: Mute mutes both the Speaker and the Microphone of the Sink. Bit = 0: Only the Microphone will be muted. Play all Feedback Tones at Fixed Volume (PlayTonesAtFixedVolume): Bit = 1: Tones are played at a nominal fixed volume regardless of the current Profile Volume level. The fixed volume level is set by the FixedToneVolumeLevel parameter. Bit = 0: Tones are played at the current Profile Volume level. Reboot on Reset (RebootAfterReset): Bit = 1: The Sink powers off after user event EventResetPairedDeviceList has been issued. The chip will reboot if ResetAfterPowerOffComplete is set. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 33 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Bit Bit = 0: The Sink does not power off after the event has been issued. Note: Reset Clears the Default and Last user together with the list of Paired devices. Remain Discoverable at All Times (RemainDiscoverableAtAllTimes): Bit = 1: The Sink remains discoverable at all times. This is useful for Multipoint operation. Bit = 0: The Sink remains discoverable until connected. Disable Power Off after Power On (DisablePowerOffAfterPowerOn): Bit = 1: The Sink ignores the power off button press immediately after power on. DisablePowerOffAfterPowerOnTime_s sets the time the power button is ignored for. Bit = 0: The Sink does not ignore the power off button press after power on. Auto Answer on Connection (AutoAnswerOnConnect): This allows the Sink to send an answer (ATA) AT command if an incoming call is detected on connection. Bit = 1: Sink sends answer (ATA) AT command. Bit = 0: Sink does not respond to an incoming call detected on connection. Note: Some AGs will attempt to auto answer the call on connection. Go Pairable on Failure to Connect (EnterPairingModeOnFailureToConnect): Bit = 1: The Sink goes into pairing mode if it fails to connect with any paired devices. Bit = 0: The Sink goes into connectable mode if it fails to connect with any paired devices. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 34 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Allow Volume Key Presses To Adjust Volume When Muted (AdjustVolumeWhilstMuted): Allows the volume to be adjusted while the Sink has been muted (via the EventMuteToggle or EventMuteOn) Bit = 1: Volume events EventVolumeUp/EventVolumeDown set the volume to the new level while the Sink is muted. Bit = 0: Volume events do not alter the volume level while the Sink is muted. If the Sink is muted (via the EventMuteToggle or EventMuteOn) this bit determines the action to take when an EventVolumeUp/EventVolumeDown or an AG volume indication message occurs: Bit = 1: Volume events cause the Sink to unmute and set the volume to the new level. Bit = 0: Volume events do not unmute the Sink and the local Sink volume value is updated according to the AdjustVolumeWhilstMuted feature. PowerOffOnlyIfVRegEnLow When set this feature prevents the Sink from powering off if the VREG enable pin is not low. Limit Subwoofer Pairing with RSSI (LimitRssiSuboowferPairing): When set this enables subwoofer RSSI pairing that ensures signal strength is higher than the configured threshold. Enter Discoverable Mode on Power On (pair_mode_en): This automatically enables the connectable/discoverable mode after a power up. Bit = 1: Enabled. After power up, the Sink automatically moves from the deviceConnectable to the deviceConnDiscoverable state. Bit = 0: Feature Disabled. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 35 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Allow Volume Key Presses to Un Mute (VolumeChangeCausesUnMute): 2.13.2. PSKEY_USR15 Word 2 Feature Default 0x8C01 D[15] GoConnectableButtonPress 1 D[14] DisableTTSTerminate 0 D[13] AutoReconnectPowerOn 0 D[12] speech_rec_enabled 0 D[11] SeparateLNRButtons 1 D[10] SeparateVDButtons 1 D[9:8] gatt_enabled 00 D[7:6] PowerDownOnDiscoTimeout 00 D[5:4] ActionOnCallTransfer 00 D[3:2] LedTimeMultiplier 00 D[1:0] ActionOnPowerOn 01 Table 2.14: PSKEY_USR15 Word Two - Reconnection Policy Bit Fields Description of Bit Fields Go Connectable on Button Press (GoConnectableButtonPress): Makes the Sink connectable on a button press. This is used with multipoint operation in the situation where one Sink is already connected and the user wishes to connect a second Sink and needs to make the Sink connectable to do so. Bit = 1: The Sink becomes connectable on a button press. Bit = 0: The Sink does not become connectable on a button press. Disable TTS Terminate (DisableTTSTerminate): This feature allows a voice prompt configured to indicate an incoming call to play to completion, even if the call is answered immediately or the call terminates. Bit = 1: Voice prompt plays to completion on answering the call or the call terminates. Bit = 0: Voice prompt stops as soon as the call is answered or terminates. Automatically Reconnect on Power on (AutoReconnectPowerOn) Enables Auto Reconnection after a power on event. Bit = 1: Auto Reconnection is enabled after a power on event. ActionOnPowerOn sets the reconnection mode. Bit = 0: Auto reconnection is not enabled after a power on event. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 36 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Bit Enable Speech Recognition (speech_rec_enabled): Bit = 1: Enables the speech recognition in the Sink. Bit = 0: Disables the speech recognition in the Sink. Separate LNR Buttons (SeparateLNRButtons): Bit = 1: Allows the user to assign EventLastNumberRedial_AG2 to a button to redial from AG2. The event EventLastNumberRedial will redial from AG1. Bit = 0: An LNR event will choose the last AG that made an outgoing call to place the call. Separate Voice Dial Buttons (SeparateVDButtons): When using multipoint operation it is possible to use two different events for triggering a voice dial operation on Audio Gateways AG1 or AG2. Bit = 1: Allows the user to assign EventInitateVoiceDial_AG2 to a button to trigger a voice dial operation on AG2. The event EventInitateVoiceDial will initiate AG1. Bit = 0: An LNR event will choose the last AG that made an outgoing call to place the call. Gatt Battery Reporting Enabled (gatt_enabled): Unused Pairing Timeout (PowerDownOnDiscoTimeout): This allows the action taken on a pairing mode timeout to be defined as follows: Value Action 0 (0x00) default Return to connectable mode 1 (0x01) Power off 2 (0x02) Power off if PDL is empty Table 2.15: Action Taken on Pairing Timeout © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 37 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note When using multipoint operation it is possible to use two different events for triggering a last number redial on Audio Gateways AG1 or AG2. After Disconnection With Active Audio (ActionOnCallTransfer): Defines the AG that the device will try to connect to when a call that has been transferred to an AG is transferred back to the Sink (using the Sink). The Call Transfer Reconnect Action is evoked when the Sink is used to transfer a call to the AG then back to the Sink. This only applies to AGs that disconnect the Sink when it transfers a call. Parameter Action 0 (0x00) AR_LastConnected Attempt to Reconnect to the last connected AG AR_List Attempt to connect to all 8 devices in the paired device list. If the Sink has just been cleanly disconnected then the list does not include the device just dropped AR_Rssi Initiate RSSI Inquiry (Proximity Pairing) mode. 1 (0x01) 2 (0x02) Table 2.16: ActionOnCallTransfer Reconnection Actions LED On/Off Time Multiplier (LedTimeMultiplier): Applies a scaling factor to the times used for all LED on and off times. It can be used to lengthen LED on and off times beyond that of the 2.5 second limit: Value LED on/off Times Scaling Factor 0 (0x00) default *1 1 (0x01) *2 2 (0x02) *4 3 (0x03) *8 Table 2.17: LED On/Off Time Multiplier Settings © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 38 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Reconnection Entry After Power On Connect To (ActionOnPowerOn): If the AutoReconnectPowerOn is enabled ActionOnPowerOn defines the AG that the Sink tries to connect to at next Power On. Parameter Action 0 (0x00) AR_LastConnected Attempt to Reconnect to the last connected AG AR_List Attempt to connect to all 8 devices in the paired device list. If the Sink has just been cleanly disconnected then the list does not include the device just dropped AR_Rssi Initiate RSSI Inquiry (Proximity Pairing) mode. 1 (0x01) 2 (0x02) Table 2.18: ActionOnPowerOn Reconnection Actions 2.13.3. PSKEY_USR15 Word 3 Bit Feature Default 0x11e7 D[15:12] DiscoIfPDLLessThan 0001 D[11] DoNotDiscoDuringLinkLoss 0 D[10] ManInTheMiddle 0 D[9] UseDiffConnectedEventAtPowerOn 0 D[8] EncryptOnSLCEstablishment 1 D[7] UseLowPowerAudioCodecs 1 D[6] PlayLocalVolumeTone 1 D[5] SecurePairing 1 D[4] UseI2SOutputCapability 0 D[3] QueueVolumeTones 0 D[2] QueueEventTones 1 D[1] QueueLEDEvents 1 D[0] MuteToneFixedVolume 1 Table 2.19: PSKEY_USR15 Word Three – Extended Features Bit Fields © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 39 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Reconnection Entry Description of Bit Fields Discoverable if PDL Less Than (DiscoIfPDLLessThan): This forces the Sink to Enter Discoverable mode (pairing) if the paired device list is less than the entry. An entry of 2 would mean that if the Sink has previously paired with either 0 or 1 devices, then the Sink enters discoverable mode. Bits = 1 - 7: Feature enabled. Bits = 0: Feature disabled. Do Not Go Discoverable During Link Loss (DoNotDiscoDuringLinkLoss): Bit = 1: The Sink does not enter discoverable mode if a link loss event has occurred. Bit = 0: The Sink enters discoverable mode after the link loss event. BT2.1 Man in the Middle (ADK Only) (ManInTheMiddle): Bit = 1: Bluetooth 2.1 man in the middle enabled. Bit = 0: Feature disabled. Different SLC Connected Event At Power On (UseDiffConnectedEventAtPowerOn): Bit = 1: The event EventSLCConnectedAfterPowerOn is generated when an SLC occurs straight after power on. The event EventSLCConnected is generated on SLC events when the Sink has already been on for some time. Bit = 0: The event EventSLCConnected is generated on all SLC events. Encrypt on SLC Establishment (EncryptOnSLCEstablishment): This forces Encryption on SLC establishment. Some Nokia S40 phones now do not force encryption on the SLC. Setting this bit ensures that encryption is used. Bit = 1: Ensures that encryption is used on SLC Establishment. Bit = 0: Encryption not enforced. UseLowPowerAudioCodecs (UseLowPowerAudioCodecs): Setting this feature bit will result in the Sink using the low power audio codec options to help reduce Sink power consumption. Play Vol Tone on Remote Indication (PlayLocalVolumeTone): Bit = 1: The Sink plays a tone when the volume is changed using the remote device i.e. the AG. Bit = 0: Feature disabled. Secure Pairing Mode Enable (SecurePairing): This bit enables secure pairing mode. If set, then the Sink only accepts pin code requests when in pairing mode (connectable/discoverable state). This prevents a remote user from pairing with the Sink without the Sink being specifically placed into pairing mode. This is over-ridden if the Sink initiates the connection. i.e. if a Sink attempts to connect to a remote AG without the correct link key (or has the bdaddr but not the link key) then the Sink will accept a pin code request. Bit = 1: Enables Secure Pairing. Bit = 0: Feature disabled. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 40 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note I2S Output Mode (UseI2SOutputCapability): Enables I2S output from DSP applications to drive external I2S DAC/amp Queue Volume Tones (QueueVolumeTones): This allows volume tones to be queued in the Sink: Bit = 1: Up to four volume tones can be queued and then played in sequence. Bit = 0: Any request to play a tone while another is playing, will be ignored. Queue Tone (QueueEventTones): This allows event tones to be queued in the Sink: Bit = 1: Up to four event tones can be queued and then played in sequence. Bit = 0: Any request to play a tone while another is playing, will be ignored. Queue LED Event Indications (QueueLEDEvents): This allows LED indicator patterns to be queued in the Sink. Bit = 1: Up to four LED patterns can be queued and displayed in sequence. Bit = 0: Any request to display an LED sequence while another is active will be ignored. Mute Reminder uses Default Volume (MuteToneFixedVolume): Bit = 1: The mute reminder tone is played at a fixed volume set by the default volume level parameter DefaultVolume. Bit = 0: The mute reminder tone is played at a variable volume. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 41 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 2.13.4. PSKEY_USR15 Word 4 Feature Default 0x21a1 D[15] ResetLEDEnableStateAfterReset 0 D[14] ResetAfterPowerOffComplete 0 D[13] AutoPowerOnAfterInitialisation 1 D[12] DisableRoleSwitching 0 D[11] audio_sco 0 D[10:8] audio_plugin 010 (2) D[7:4] DefaultVolume 1010 (10) D[3] IgnoreButtonPressAfterLedEnable 0 D[2] LNRCancelsVoiceDialIfActive 0 D[1] GoConnectableDuringLinkLoss 0 D[0] Stereo 1 Table 2.20: PSKEY_USR15 Word Four Description of Bit Fields LED Disable State Reset After Boot (ResetLEDEnableStateAfterReset): Bit = 1: After a reboot the LED enable/disable state is reset and the LEDs are enabled independently of the led_disable parameter. Bit = 0: The LED enable/disable state is stored over a reboot. The state is stored in the led_disable bit of the PSKEY_USR12. Reset Chip After Power Off is Complete (ResetAfterPowerOffComplete): Bit = 1: The Sink will perform a chip reset after powering off. This may be used if the BlueCore IC is powered permanently with no other form of hardware reset available. Bit = 0: Feature Disabled. Auto Power on After Initialisation Enable (AutoPowerOnAfterInitialisation): This feature allows a faster Sink startup period by removing the need for a power on event to be configured on a button press, Bit = 1: The Sink will automatically power on once the chip has been powered and initialisation is complete. Bit = 0: Feature Disabled. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 42 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Bit Disable Role Switching (DisableRoleSwitching): Bit = 1: The Sink will not send role switch requests to the AG. This feature may be useful if the AG does not support role switching. Bit = 0: The Sink will send role switch requests to the AG when using multipoint. Force Use of SCO for Audio Transfer (audio_sco): Bit = 1: The Sink will request a SCO connection even if the AG supports eSCO connections. Bit = 0: The Sink will request an eSCO connection when transferring audio. Audio Plugin (audio_plugin): Specifies which audio plug in is used for SCO audio connections. Note: The bit values for the Sink SDK platform will be dependent on the DSP projects that are included in the Sink project. Default Volume (DefaultVolume): This is the volume level used after initial power up. The default volume can be set in the range 0 to 15. The sixteen levels can be configured in PSKEY_SPEAKER_GAIN_MAPPING. Ignore Button Event if Enabling LEDs (IgnoreButtonPressAfterLedEnable): This feature causes a button that re-enabled display of LEDs that had previously timed out from being processed. Bit = 1: If a button is pressed that re-enables the LED display the event assigned to the button will not occur. Bit = 0: If a button is pressed that re-enables the LED display the event assigned to the button will occur as normal. LNR cancels VoiceDial if Active (LNRCancelsVoiceDialIfActive): Bit = 1: Cancels a voice dial if a last number redial is initiated. Bit = 0: Continues a voice dial operation if a last number redial is initiated. Go Connectable During Link Loss (GoConnectableDuringLinkLoss): When enabled the Sink is discoverable while attempting to reconnect to a dropped device. Stereo Enable (stereo): Bit = 1: Enables stereo audio using channels A and B. Bit = 0: Uses Mono audio using only channel A. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 43 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note This feature can force the Sink to request a SCO connection when transferring the audio from the AG to the Sink after an EventTransferToggle event has been generated. This feature may be used to cover the case where an AG reports being able to accept eSCO connections during an active call when in reality, it does not. 2.13.5. PSKEY_USR15 Word 5 Feature Default 0x3e40 D[15] ChargerTerminationLEDOveride 0 D[14:10] FixedToneVolumeLevel 15 D[9] EnableAvrcpAudioSwitching 1 D[8] ForceEV3S1ForSco2 0 D[7] VoicePromptPairing 0 D[6] avrcp_enabled 1 D[5:4] PairIfPDLLessThan 0 D[3] EnableSyncMuteMicrophones 0 D[2:1] ActionOnPanicReset 0 D[0] VoicePromptNumbers 0 Range 0-31 0-3 0-2 Table 2.21: PSKEY_USR15 Word Five Description of Bit Fields Charging Complete Override LED Enable (ChargerTerminationLEDOveride): Bit = 1: The charger LED indications stay at trickle charge once reached, i.e. the indications only change when the charger is disconnected and reconnected. Bit = 0: The charger indications toggles between fast and trickle charge indications as appropriate to the current state of the battery charge level. Play all Feedback Tones at a Fixed Volume (FixedToneVolumeLevel): This sets the volume level at which tones are played if the fixed level has been enabled. Fixed tone volume is enabled by setting PlayTonesAtFixedVolume to 1. FixedToneVolumeLevel can be set in the range 0 to 31. AVRCP Audio Switching (EnableAvrcpAudioSwitching): If enabled AVRCP play status is used to speed up audio source switching. Force Second SCO to Use EV3 S1 Settings (ForceEV3S1ForSco2): Determines the behaviour of the second SCO connection in multipoint mode. Bit = 1: The second SCO connection is forced to use EV3 S1 packets for better interoperability with certain AGs. Bit = 0: Any packet type is available for the second AG. Read out PIN code using Voice Prompts (VoicePromptPairing): Bit = 1: PIN/Passkey/Confirmation messages are read out using preconfigured Voice Prompts. Bit = 0: Feature Disabled © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 44 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Bit Avrcp Enable (avrcp_enabled): Bit = 1: Enable AVRCP control. This feature is not supported on some ROM variants. Bit = 0: Feature Disabled RSSI Pairing if PDL Less Than (PairIfPDLLessThan): Enable Mic Mute Synchronisation (EnableSyncMuteMicrophones): Bit = 1: The mute command is sent to both AGs when using multipoint. Bit = 0: The mute command is sent to only the AG in use. Reconnection Action After Panic (ActionOnPanicReset): Sets the reconnection action type if the chip reboots as a result of an application or firmware panic. Reconnection Entry Parameter Action 0 (0x00) AR_LastConnected Attempt to Reconnect to the last connected AG AR_List Attempt to connect to all 8 devices in the paired device list. If the Sink has just been cleanly disconnected then the list does not include the device just dropped AR_Rssi Initiate RSSI Inquiry (Proximity Pairing) mode. 1 (0x01) 2 (0x02) Table 2.22: ActionOnPanicReset Reconnection Actions Enable Phone Number Readout by Prompts (VoicePromptNumbers): Bit = 1: Voice prompts are used to 'speak' an incoming caller number. Bit = 0: Feature Disabled. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 45 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note When set to a non-zero value and the number of devices in the PDL is less than this value, the Sink goes into RSSI Inquiry (Proximity Pairing) mode. 2.13.6. PSKEY_USR15 Word 6 Feature Default 0xa41a Range D[15:12] DefaultA2dpVolLevel 10 0-15 D[11] pbap_enabled 0 D[10] EnableA2dpStreaming 1 D[9:5] A2dpOptionalCodecsEnabled 0 D[4] EnableA2dpMediaOpenOnConnection 1 D[3] AssumeAutoSuspendOnCall 1 D[2:0] ReconnectLastAttempts 2 Table 2.23: PSKEY_USR15 Word Six Description of Bit Fields Default A2DP Volume Level (DefaultA2dpVolLevel): This sets the initial level of the audio heard following a pairing/connection to a new device. Thereafter, the last user selected volume level is stored in persistent store and used for subsequent connections. Enable PBAP (pbap_enabled): Bit = 1: Enables Phone Book Application Profile functionality. Bit = 0: Feature Disabled. Enable A2DP Streaming (EnableA2dpStreaming): Bit = 1: Sink can stream audio using an A2DP link. Bit = 0: A2DP streaming is not enabled A2dpOptionalCodecsEnabled: This bitmask specifies which codecs are available for use: Note: A corresponding DSP codec application must be available if these bits are enabled or the Sink will panic. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 46 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Bit A2DP Open Media On Connect (EnableA2dpMediaOpenOnConnection): Bit = 1: The Sink performs a media open when the A2DP signalling connection has been made and the A2DP stream had previously been suspended. This can happen if the Sink has suspended a stream and the phone has chosen to drop the signalling channel completely. Bit = 0: Feature Disabled Assume AG suspends on Call (AssumeAutoSuspendOnCall): Bit = 1: The Sink assumes that the AG is responsible for suspending the media connection when receiving an incoming call. Bit = 0: The Sink suspends the media connection when receiving an incoming call. Note: Allowing the Sink to manage the suspending of the media connection can have interoperability issue. Reconnect Last Number of Attempts (ReconnectLastAttempts): When using the reconnection type of LAST, this parameter controls the number of times the Sink attempts to connect to the last connected devices, a minimum value of 2 is suggested for this parameter. The range of ReconnectLastAttempts is 0 to 7. 2.14. Speaker Gain Mapping PSKEY_USR16 holds values that configure the Speaker Gain behaviour of the application. PSKEY_USR16 supports Predefined Gains only. Speaker Gain Label Volume Up (IncVol) Volume Down (DecVol) Play Tone (tone) A2DP Gain (A2dpGain) Type uint16 [D15:12] [D11:8] [D7:0] uint16 [D15:8] [D7:0] Range 0 - 15 (0x0 - 0xf) 0 - 15 (0x0 - 0xf) 0 - 255 (0x00 - 0xff) 0 – 22 (0x00 - 0x16) 0 - 22 (0x00 - 0x16) (VolGain) Table 2.24: PSKEY_USR16 – Predefined Audio Gain Mapping Bit Fields (VolMappingTag) © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 47 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note The default values for this key are: For Mono Headset 0x0000, 0x0201, 0x0302, 0x0403, 0x0504, 0x0605, 0x0706, 0x0807, 0x0908, 0x0a09, 0x0b0a, 0x0c0b, 0x0d0c, 0x0e0d, 0x0f0e, 0x100f Example A single volume press configuration entry for Profile Volume Level 7 might be 0x8604 0807 and would equate to: Label Configuration Value Action Volume Up 0x8 Go to Profile Volume level 8 Volume Down 0x6 Go to Profile Volume level 6 Play Tone 0x4 Play Short 3, see Appendix B. A2DP Gain 0x08 Set the Codec Gain for the Speaker to 8 (-21dBr), see below Speaker Gain 0x07 Set the Codec Gain for the Speaker to 7 (-23.5dBr), see below Table 2.25: Volume Press Configuration Example Entries for each of the 16 (0-15) Volume Gain settings appear in sequence in the PS Key. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 48 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 0x1001, 0x2004, 0x3104, 0x4204, 0x5304, 0x6404, 0x7504, 0x8604, 0x9704, 0xa804, 0xb904, 0xca04, 0xdb04, 0xec04, 0xfd04, 0xfe0a, CODEC Gain Settings Speaker and Mic Gain values support the range 0 to 22 (0x00 to 0x16) these values equate to the gain settings: Digital Gain Analogue Gain GAIN (dBr) Value to set Internal Internal Gain achieved at Speaker/Mic 22 7 7 +21.5 21 6 7 +18 20 5 7 +15.5 19 4 7 +12 18 3 7 +9.5 17 2 7 +6 16 1 7 +3.5 15 0 7 0 14 0 6 -3 13 0 5 -6 12 0 4 -9 11 0 3 -12 10 0 2 -15 9 0 1 -18 8 0 0 -21 7 15 0 -23.5 6 14 0 -27 5 13 0 -29.5 4 12 0 -33 3 11 0 -35.5 2 10 0 -39 1 9 0 -41.5 0 8 0 -45 Table 2.26: Codec Predefined Gain Settings © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 49 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note CODEC (Speaker/Mic) Gain (0-22) For simplicity the Configuration Tool allows engineers to set the Speaker or A2DP gains from a drop down list of Gain (dBr) values. Typical Values Table 2.27 shows a typical set of values for the gain settings of a Sink application: Increase Action Decrease Action Tone A2DP Gain Speaker Gain 0 1 0 1 0x00 0x00 1 2 0 4 0x02 0x01 2 3 1 4 0x03 0x02 3 4 2 4 0x04 0x03 4 5 3 4 0x05 0x04 5 6 4 4 0x06 0x05 6 7 5 4 0x07 0x06 7 8 6 4 0x08 0x07 8 9 7 4 0x09 0x08 9 a 8 4 0x0a 0x09 a b 9 4 0x0b 0x0a b c a 4 0x0c 0x0b c d b 4 0x0d 0x0c d e c 4 0x0e 0x0d e f d 4 0x0f 0x0e f f e a 0x10 0x0f BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Profile Volume Table 2.27: CODEC Gain Typical Settings © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 50 of 104 CS-236873-ANP2 www.csr.com 2.15. HFP Initialisation Configuration PSKEY_USR17 holds the HFP configuration settings: Label Supported Profiles Supported Features Supported WBS Codecs 3 Optional Indicators Unused 1 2 Type uint16 uint16 uint16 uint16 [D15:3] [D2] Default 0x03 0xba 0x03 0x40 0x00 0x1 Enable Extended Errors Word Enable Multipoint 5 Link Loss Time (secs) 5 (cont.) Link Loss Interval (mins) CSR Features 6 7 Type [D1] [D0] [D15:8] [D7:0] uint16 Type 0x0 0x1 0x0a 0x0a 0x40 Table 2.28: HFP Configuration Bit Fields (hfp_init_params) Description of Bit Fields Supported Profiles (supported_profile): The Sinkcan be configured to support HFP and HSP profiles: 0 = hfp_no_profile 1 = hfp_headset_profile 2 = hfp_handfree_profile 2 = hfp_handfree_106_profile Supported Features (supported_features): Various HFP features can be enabled or disabled using this parameter configuration: 1 = HFP_NREC_FUNCTION 2 = HFP_THREE_WAY_CALLING 3 = HFP_CLI_PRESENTATION 4 = HFP_VOICE_RECOGNITION 5 = HFP_REMOTE_VOL_CONTROL 6 = HFP_ENHANCED_CALL_STATUS 7 = HFP_ENHANCED_CALL_CONTROL 8 = HFP_CODEC_NEGOTIATION Supported Codecs (supported_wbs_codecs): The bitmask containing the supported WBS codecs Bit 0: (hfp_wbs_codec_mask_cvsd). Indicates CVSD is supported when set. Bit 1: (hfp_wbs_codec_mask_msbc). Indicates MSBC is supported when set. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 51 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Word Label 4 Disable NREC Optional Indicators (optional_indicators): Signal strength reporting, battery level, roaming status can be configured as follows: Indicators can be set to: 0 = Off 1 = On 2 = Ignore Service (service) = [D7:6] Signal Strength (signal_strength) = [D5:4] Roaming Status (roaming_status) = [D3:2] Battery Charge (battery_charge) = [D1:0] Disable NREC (disable_nrec): When set noise reduction and echo cancelling is not advertised. Enable Extended Errors (extended_errors): When set the Sink will send extended error reports. Enable Multipoint (multipoint): When set the Sink will accept two simultaneous HFP connections (multipoint must also be enabled in the Session Data, see section 2.27) Link Loss Time (link_loss_time): The time, in minutes, following a link loss occurrence that the Sink will attempt to reconnect to the dropped AG. Link Loss Interval (link_loss_interval): The time interval at which the headset will make reconnection attempts following a link loss. CSR Features (csr_features): Using a proprietary CSR message it is possible to pass information between a Sinkand an AG using a CSR IC supporting this message: Enables for these features are: Caller Name (caller_name) [D15] Raw Text (raw_text) [D14] SMS (sms) [D13] Battery Level Reporting (batt_level) [D12] Power_Source (pwr_source)[D11] Supported Codecs (codecs) [D10:D8] Codec_Bandwidths (codec_bandwidths) [D7:D6] Unused [D5:D0] © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 52 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 2.16. LED Filter Configuration The Sink application allows each Sink state/event to be associated with a unique LED flashing pattern. See section 2.19 and section 2.19. In addition, the software allows filters to be applied to individual LED patterns to change them in response to some event or change in state. For example, to change the colour and/or frequency of a pattern being displayed when the battery is low. Two PS Keys hold the configuration details for implementing LED filters: USR9 (word 3): Specifies the number of filters (entries) defined in PSKEY_USR18. USR18: Holds the attributes of 1 to n filters. Filter attributes are held in the following format: Label Sink Event Speed Active Unused Speed Action Colour Type uint16 [D15:8] [D7:0] uint16 [D15] [D14] [D13:12] [D11:8] Filter to Cancel LED to Use [D7:4] [D3:0] Override LED Active uint16 [D15] Unused Follower LED Active Follower LED Delay (x50ms) Override LED Disable Unused [D14:13] [D12] [D11:8] [D7] [D6:0] Table 2.29: PSKEY_USR18 - LED Filter Configuration Bit Fields Description of Bit Fields Sink Event: System event associated with the LED filter being defined, see Appendix A. Note: This is specified as an offset of 0x6000 i.e. to specify the Power On Event (0x6001) the value of this field would be 0x01. Speed: The multiplier/divider applied to the frequency pattern. Note: To leave the frequency of the original pattern unchanged this bit field should be set to 0. Active: This bit field enables and disables the filter: Bit = 1: Enabled. Bit = 0: Disabled. Unused: Dummy bit. Speed Action: This field specifies the action to apply to the frequency: Bit value = 01: SPEED_MULTIPLY, multiply the frequency by the value specified in the Speed field. Bit value = 00: SPEED_DIVIDE, divide the frequency by the value specified in the Speed field. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 53 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note When implementing a filter it is normally necessary to create two filters, one to enable the change when the trigger event or state change occurs and one to disable the change when trigger condition ceases. Colour: This field defines the colour filter to apply: Bit value = 0000: Reserved Bit value = 0001: LED_A, force use of LED_A Bit value = 0010: LED_B, force use of LED_B Bit value = 0011: Alternating, force use of alternating LEDs Bit value = 0100: LED_BOTH, force use of both LEDs LED To Use: This field is used to specify an LED, used for either the Override or LED Follower behaviour, if they are activated. Override LED Active: This field is set to activate or deactivate the Override LED field. When activated the LED specified in the Override LED field will be turned ON during the OFF period of the original pattern. Bit = 1: Activate Bit = 0: Deactivate Unused: Dummy bits. LED Follower Active: When this bit is set the LED specified in the Override LED field repeats the original pattern with a time offset as specified in the LED Follower delay field. LED Follower Delay (x50 ms): The value in this field defines the time offset in ms, between the original pattern flashes and follower pattern flashes. Note: The software multiplies the value entered by 50 ms before it is applied. Unused: Dummy bits. Example To configure filters to change all indications from Blue to Red on the BlueCore4-Headset development board when the low battery event is received the PS Key hex values would be: USR9 (word 3) = 0003 (indicating 3 filters in PSKEY_USR18) USR18 = 1a00 8200 0000 1e00 0100 0000 1f00 0010 0000 Note: All State and Event Indications that this filter is to affect need LED_A (blue) and LED_B (red) bit fields set in PSKEY_USR20 (LED State Configuration) and PSKEY_USR22 (LED Event Configuration). Override Disable: If this bit is set then this filter will be used regardless of whether the LEDs have been disabled or not. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 54 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Filter to Cancel: If the filter is set to not active (i.e. is used to cancel another defined filter when an event is generated), then this field contains the index of the filter that is to be cancelled. For example, if the filter is being specified to cancel the second filter defined in PSKEY_USR17 then this field must be set to 0x2. Explanation of USR18 Value The following three filters are defined: EventLowBattery – Enable theFilter: Sink Event Speed Active Unused Speed Action Colour Type uint16 [D15:8] [D7:0] uint16 [D15] [D14] [D13:12] [D11:8] Binary Value 00011010 00000000 1 0 00 0010 Hex Value 0x1a00 Description Event Low Battery not used Description Event Low Battery not used Description Filter to cancel Override LED Override LED Active Unused Follower LED Active Follower LED Delay (x50ms) Unused [D7:4] [D3:0] uint16 [D15] [D14:13] [D12] [D11:8] [D7:0] 0000 0000 0x0 00 0 0000 00000000 not used not used not used not used 8200 0x0000 not used not used not used Table 2.30: Example of Enabling Filter The first entry, which enables the filter becomes: 1a00 8200 0000 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 55 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Event TrickleCharge – Disable Filter Sink Event Speed Active Unused Speed Action Colour Type uint16 [D15:8] [D7:0] uint16 [D15] [D14] [D13:12] [D11:8] Binary Value 00011110 00000000 0 0 00 0000 Hex Value 0x1e00 Description Event Trickle Charge not used Disabled not used not used not used Filter to cancel Override LED Override LED Active Unused Follower LED Active Follower LED Delay (x50ms) Unused [D7:4] [D3:0] uint16 [D15] [D14:13] [D12] [D11:8] [D7:0] 0001 0000 0x0 00 0 0000 00000000 not used not used not used not used 0010 0x0000 1st filter defined in PS Key not used not used Table 2.31: Trickle Charge Event Disable Filter Configuration The second entry to disable the battery low filter when the trickle charge event is generated, becomes: 1e00 0010 0000 EventFastCharge - Disable Filter Label Sink Event Speed Active Unused Speed Action Colour Type uint16 [D15:8] [D7:0] uint16 [D15] [D14] [D13:12] [D11:8] Binary Value 00011111 00000000 0 0 00 0000 Hex Value 0x1f00 Description Event Fast Charge not used not used not used 0010 not used Disabled © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 56 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Follower LED Active Follower LED Delay (x50ms) Unused uint16 [D15] [D14:13] [D12] [D11:8] [D7:0] 0 00 0 0000 00000000 not used not used not used not used Override LED Override LED Active [D7:4] [D3:0] 0001 0000 0x0000 1st filter defined in PS Key not used not used Table 2.32: Fast Charge Event Disable Filter Configuration The third entry to disable the battery low filter when the fast charge event is generated, becomes: 1f00 0010 0000 The full PSKEY_USR18 hex value entry becomes: 1a00 8200 0000 1e00 0010 0000 1f00 0010 0000 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 57 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Unused Filter to Cancel 2.17. User Defined Tones Configuration Up to 8 User Defined Tones can be configured, although the overall size of these tones is limited by the available length of PSKEY_USR19 i.e. approximately 110 words. USR9 (word 8): Specifies the number User Defined Tones defined in PSKEY_USR19. USR19: Holds the User Defined Tones in the format described below. BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Example of PSKEY_USR19 Configuration: uint16 Offset of Tone 1 uint16 Offset of Tone 2 uint16 Offset of Tone 3 uint16 Offset of Tone 4 uint16 Offset of Tone 5 uint16 Offset of Tone 6 uint16 Offset of Tone 7 uint16 Offset of Tone 8 uint16 start of Tone 1 audio data uint16 … uint16 … uint16 … uint16 … uint16 end of Tone 1 audio data uint16 start of Tone 2 audio data uint16 … uint16 … uint16 … uint16 … uint16 end of Tone 2 audio data Example Audio Tone Definition: static const ringtone_note tone_B[] = { RINGTONE_TEMPO(200), RINGTONE_VOLUME(64), RINGTONE_TIMBRE(sine), RINGTONE_NOTE(G5, CROTCHET), RINGTONE_END; }; Note: The definitions of the RINGTONE macros can be found in the audio library interface header file, ringtone_if.h. The tone defined in the example above can also be expressed in raw hex values i.e: 90C8, A040, B000, 2184, 8000; © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 58 of 104 CS-236873-ANP2 www.csr.com 2.18. LED State Configuration Each Sink state can be associated with a unique LED flashing pattern. The necessary configuration is defined in two PS Keys: USR9 (word 4): Specifies the number of LED flashing patterns (entries) defined in PSKEY_USR20. USR20: Holds the attributes of 1 to n entries defined as follows. Word 2 Label Sink State LED On time (x10ms) LED off time (x10ms)e LED repeat time (x50ms) Type uint16 [D15:8] [D7:0] uint16 [D15:8] [D7:0] See Appendix C 0-2550 ms (in 10 ms steps) 0-2550 ms (in 10 ms steps) 0-10000 ms (in 50 ms steps) Range/Description Word 3 LED Dim Time Word 4 Time out uint16 [D15:8] [D7:0] 0-255 ms 0-255 ms Number of flashes LED_A LED_B Override LED disable Colour uint16 [D15:12] [D11:8] [D7:4] [D3] [D2:0] 0-15 see below see below see below see below Table 2.33: PSKEY_USR20 - LED State Configuration Bit Fields © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 59 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Word 1 Description of Bit Fields Sink State: System state associated with the LED pattern being defined, see Appendix B. On time, Off time, Number of flashes and Repeat time values: Dimming LEDs: Dimming LEDs can be enabled by entering a value in the LED Dimming field. This value is the time between ramp steps to use. There are 16 ramping steps used to Dim on or off an LED. It is important to ensure that the (Dim time * 16) is less than the on time /off time for the ramp to complete. For example, for a 1 second on 1 second off pattern, then a good Dim time to use is: 800 ms / 16 = 50 = 0x32 Time out: This field specifies the number of times the sequence, specified by the entry, will repeat (unless superseded by another event) before it times out. When set to 0 the sequence will not time out. LED_A: This field is a bitmask that specifies the PIO that is referred to in the PS Key attributes as LED_A. Bit D[15] D[14] D[13] D[12] D[11] D[10] D[9] Mask Value LED_1 LED_0 Tricol_a LEDs * Tricol_b LEDs * Tricol_c LEDs * PIO_10 PIO_9 D[8] D[7] D[6] D[5] D[4] D[3] D[2] D[1] D[0] PIO_8 PIO_7 PIO_6 PIO_5 PIO_4 PIO_3 PIO_2 PIO_1 PIO_0 Table 2.34: PSKEY_USR20 – LED_A Bitmask © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 60 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Figure 2.1: Figure Title: LED Pattern LED_B: This field is a bitmask that specifies the PIO that is referred to in the PS Key attributes as LED_B. Bit D[15] D[14] D[13] D[12] D[11] D[10] D[9] Mask Value LED_1 LED_0 Tricol_a LEDs * Tricol_b LEDs * Tricol_c LEDs * PIO_10 PIO_9 D[7] D[6] D[5] D[4] D[3] D[2] D[1] D[0] PIO_8 PIO_7 PIO_6 PIO_5 PIO_4 PIO_3 PIO_2 PIO_1 PIO_0 Table 2.35: PSKEY_USR20 – LED_B Bitmask Override LED Disable: If this bit is set then this LED pattern will be shown regardless of whether the LEDs have been disabled or not. Colour: This field defines the LED(s) that the sequence will display when a filter is not applied. The options for this field are defined as: Bit value = 000: Reserved Bit value = 001: LED_A Bit value = 010: LED_B Bit value = 011: Alternate Bit value = 100: LED_BOTH Example A typical example of an LED State configuration is the default LED indication for the Connectable state in headsets: Label Sink State LED On time LED off time LED repeat time Type uint16 [D15:8] [D7:0] uint16 [D15:8] [D7:0] Binary Value 00000001 00001010 00001010 00101000 Hex Value 0x010a Defines Connectable 0x0a28 100ms (1) 100ms © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement (1) 2000ms (2) Page 61 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note D[8] Time out Number of flashes LED_A LED_B Override Colour uint16 [D15:12] [D11:8] uint16 [D15:12] [D11:8] [D7:4] [D3] [D2:0] 00000000 00000000 0010 1111 1110 0 001 0x0000 0x0000 0x2fe1 0 0 2 LED_1 LED_0 FALSE LED_A Table 2.36: PSKEY_USR20 – Example Entry Notes: (1) The software multiplies the value entered in this field by 10 i.e. 10x10 results in 100 ms. (2) The software multiplies the value entered in this field by 50 i.e. 50x40 results in 2000 ms. This equates to an LED sequence hex value entry of: 010a 0a28 0000 2fe1 This results in LED_1 flashing twice for 100ms every 2 seconds while the device is connectable. 2.19. LED Event Configuration Each Sink system event can be associated with a unique LED flashing pattern. This is defined in two PS Keys: USR9 (word 5): Specifies the number of LED flashing patterns (entries) defined in PSKEY_USR22. USR22: Holds the attributes of 1 to n LED flashing patterns. Pattern flashing attributes are held in PSKEY_USR22 in the following format: Word 1 Word 2 Label Sink System Event LED On time (x10ms) LED Off time (x10ms) LED Repeat time (x50ms) Type uint16 [D15:8] [D7:0] uint16 [D15:8] [D7:0] Range/Description See Appendix B 0-2550 ms (in 10 ms steps) 0-2550 ms (in 10 ms steps) 0-10000 ms (in 50 ms steps) Word 3 Word 4 Time out Number of flashes LED_A LED_B Override Led Disable Colour uint16 uint16 [D15:12] [D11:8] [D7:4] [D3] [D2:0] 0-255 ms 0-255 ms 0-15 See below See below See below Table 2.37: PSKEY_USR22 – LED Event Configuration Bit Fields © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 62 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note LED Dim Time Description of Bit Fields Sink System Event: System event associated with the LED pattern being defined, see Appendix A. Note: This is specified as an offset of 0x6000 i.e. to specify the Power On Event (0x6001) the value of this field would be 0x01. Figure 2.2: LED Pattern Time out: This field specifies the number of times the sequence, specified by the entry, will repeat (unless superseded by another event) before it times out. When set to 0 the sequence will not time out. LED_A: This field is a bitmask that specifies the PIO(s) to which LED are connected. Bit D[15] D[14] D[13] D[12] D[11] D[10] D[9] Mask Value LED_1 LED_0 Tricol_a LEDs * Tricol_b LEDs * Tricol_c LEDs * PIO_10 PIO_9 * See Tricolour LED for further information. D[8] D[7] D[6] D[5] D[4] D[3] D[2] D[1] D[0] PIO_8 PIO_7 PIO_6 PIO_5 PIO_4 PIO_3 PIO_2 PIO_1 PIO_0 Table 2.38: LED_A Bitmask Override LED Disable: If this bit is set then this LED pattern will be shown regardless of whether the LEDs have been disabled or not. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 63 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note On time, Off time, Number of flashes and Repeat time Values: Colour: This field defines the LED(s) that the sequence will display when a filter is not applied. The options for this field are defined as: Bit value = 0000: Reserved Bit value = 0001: LED_A Bit value = 0010: LED_B Bit value = 0011: Alternate Bit value = 0100: LED_BOTH. Example A typical example of an LED event configuration is the default LED indication for the Power On event in headsets: Label Sink Event LED On time LED Off time LED Repeat time Type uint16 [D15:8] [D7:0] uint16 [D15:8] [D7:0] Binary Value 00000001 01100100 00000000 00000000 Hex Value 0x0164 Defines EventPowerOn 1000 ms 0 (n/a) 0 (n/a) Time out Number of flashes LED_A LED_B Colour uint16 uint16 [D15:12] [D11:8] [D7:4] [D3:0] 0000000000000000 0001 1111 1110 0001 0x0000 0x1fe1 0 1 LED_1 LED_0 LED_A 0x0000 (1) (1) (2) Table 2.39: PSKEY_USR22 - Example Entry Notes: (1) The software multiplies the value entered in this field by 10 i.e. 10x10 results in 100 ms. (2) The software multiplies the value entered in this field by 50 i.e. 50x40 results in 2000 ms. This results in LED_1 flashing once for 1000 ms (1 second) when the Power On event is generated. Specialist Use of PSKEY_USR22 PSKEY_USR22 can be used to configure two other useful behaviour patterns: Non-repeating patterns To configure a PIO as an output pin for the duration of an event Non-repeating Patterns: Setting the Repeat Time to 0 defines a non-repeating pattern. When a non-repeating pattern has completed the previous state pattern will resume. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 64 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Configuring a PIO as Output Pin: A PIO can be configured as an output pin, set and unset on individual events. Note: This is generally used to indicate an event. To configure a PIO as an output pin: Setting the Number of Flashes to 0. 2. Set a non-zero On time to set the pin to ON (set high) or set a non-zero Off time to set the pin to Off (set low). Note: Two PS Key entries must be configured, one to set the pin high when the event occurs and one to set the pin low when the event is no longer occurring. As with normal Event Configuration the LED_A, LED_B and Colour fields can be used to configure the ON and OFF conditions to influence one or two PIOs. For example to set two pins PIO[11] and PIO[12] to high when an EventChargerConnected event is generated, the hex value entered would be: 22ff 0000 00bc 0100 Label Sink System Event LED On time LED Off time LED Repeat time Hex Value 22 ff 00 00 Defines Charger connected event non-zero zero zero Time out Number of Flashes LED_A LED_B Override Colour 00 00 b c 0 0100 Zero zero PIO[11] PIO[12] FALSE Use both LED_A and LED_B Table 2.40: PSKEY_USR22 – Example Entry © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 65 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 1. 2.20. Event Configuration Each Sink system event is configured to be triggered by a set of system attributes. These include PIO lines, PIO Duration and Sink State. A system event is only be generated when all the specified attribute conditions are satisfied. PSKEY_USR23, PSKEY_USR24 and PSKEY_USR25 are used to configure events. The keys are of fixed length and must be 75 words long. Each key can contain a maximum of 25 Events = 75 Words. If the key contains less than the full 25 events then the remainder of the key must be padded with zeros. Each event is defined in the following format: Label System Event PIO Duration PIO Mask Sink State Mask (Bits [14:15] used as chg and Vreg enable) Type uint16 [D15:8] [D7:0] uint16 uint16 Table 2.41: PSKEY_USR23, 24 and 25 Bit Fields Description of Bit Fields System Events: Event to be triggered, see Appendix A. Note: This is specified as an offset of 0x6000 i.e. to specify the Power On Event (0x6001) the value of this field would be 0x01. PIO Duration: This bit field specifies the duration attribute that must be satisfied to generate the system event. The valid durations and their respective hex values are given below: Label Value Description Invalid 0x00 n/a Short (S) 0x01 Sent immediately on release of the button - sent regardless of whether the short is the first part of a double press Long (L) 0x02 Sent when the long timer has been reached Very Long (V) 0x03 Sent when the very long timer has been reached Double (D) 0x04 Sent when a second identical press is received within the double time timeout Repeat (R) 0x05 Sent every repeat time if the button is held down Rising Edge (E) 0x06 Sent immediately on button press © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 66 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Note: Value Description Falling Edge (F) 0x07 Sent immediately on button release Short SINGLE 0x08 Sent at the double press timeout if a short button press was received, but was not part of a double press. Long Release 0x09 Sent when the button is released if the time is between the long and very long times. Very Long Release 0x0a Sent when the button is released, if the time is after the very long timer. Very Very Long Press 0x0b Sent when the very very long timer has been reached. Very Very Long Release 0x0c Sent when the button is released if the time is after the very very long timer. RESERVED 0x0d - 0x0f n/a Table 2.42: PIO Durations PIO Mask: The PIO mask is used to specify the PIO or PIOs that must be held high (pressed) to generate the event: Bit = 1: PIO must be pressed to generate event. Bit = 0: PIO not involved in generating the event. For Example: To define a simultaneous press of both PIO[0] and PIO[1] to generate the event, the value for the PIO Mask bit field would be 0x0003. Note: The other attributes specified in the Event System key i.e. PIO Duration and Sink State Mask conditions must also be met for the event to be generated. Bit D[15] D[14] D[13] D[12] D[11] D[10] D[9] D[8] Feature PIO[15] PIO[14] PIO[13] PIO[12] PIO[11] PIO[10] PIO[9] PIO[8] Hex Value 0x0003 Binary 0 0 0 0 0 0 0 0 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 67 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label D[7] D[6] D[5] D[4] D[3] D[2] D[1] D[0] PIO[7] PIO[6] PIO[5] PIO[4] PIO[3] PIO[2] PIO[1] PIO[0] 0 0 0 0 0 0 1 1 Note: It is possible to use VREG enable and Charger detect as PIOs, these are configured by using the upper two bits of the Sink state mask word. Sink State Mask: For the system event to be generated, the Sink must be in the specified state. The Sink State Mask bit field specifies the Sink state during which the system event can be generated if the other attribute conditions are met: Bit D[15] D[14] D[13] D[12] D[11] D[10] D[9] D[8] Feature Charger Detect PIO VREG Enable PIO A2DP Streaming Active Call Without SCO Incoming Call On Hold Call Multi Call Three Way Call - Call On Hold Three Way Call - Call Waiting D[7] D[6] D[5] D[4] D[3] D[2] D[1] D[0] Test Mode Active Call with SCO Incoming Call Outgoing Call Connected Connectable/ Discoverable Connectable Powering On Table 2.44: PSKEY_USR23, 24 and 25 – Sink State Bitmask Note: The upper two bits of the State mask are being used as additional PIO mask bits to allow the use of VREG ENABLE and CHARGER DETECT to be configured. Example of an Event Configuration Entry To configure an Answer Call event to be generated when PIO[0] is pressed for a short duration when the Sink is in an Incoming Call state PSKEY_USR24 would include the following hex value entry: 0601 0001 0020 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 68 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Table 2.43: PSKEY_USR23, 24 and 25 – Example Entry 2.21. Tone Configuration Each Sink event can be associated with a tone to be played when the event occurs. Two PS Keys are used to configure tones: USR9 (word 6): This key defines the number of entries in PSKEY_USR26 i.e. 1 – n. USR26: This key defines 1 – n event/tone associations in the form: System Event Tone Type uint8 uint8 Range 0x00 to 0x15 (1) or 0xff (2) 0x00 to 0x38 (3) (1) This is the number of the event as an offset of 0x6000, see Appendix A. The value 0xff is used to associate the tone used as the Sink‟s Out of Band Ring Tone, see example below. (3) This represents the range of currently available tones, see Appendix B. (2) Table 2.45: PSKEY_USR26 – Tone Configuration Bit Fields Example: To define an Out of Band Ring Tone (Valkyries): Event = 0xff, Tone = 0x1d To define tone Short 5 to be played on EventPowerOn: EventPowerOn = 0x6001 = 01, Short 5 = 0x06 Therefore the PS Key hex values required to implement these tones would be: PSKEY_USR25 = 0002 (indicates that there are two entries in PSKEY_USR26) PSKEY_USR26 = ff1d 0106 2.22. Power Table Setting PSKEY_HFP_POWER_TABLE contains the power table used by the HFP library for any connections made. It allows the link policy and the role switching implemented by the HFP library to be configured. The power table supports entries for four modes: Normal connected: Connected with no active SCO or A2DP links. SCO connected: Connected with an active SCO link. A2DP connected: Connected with a signalling channel open. A2DP Streaming: Streaming audio. The first word of the entry defines the number of entries for the Normal and SCO power table with a role for each mode. The bit fields of the first word are defined as: © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 69 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Word 1 Normal Role Normal number of Entries SCO Role SCO Number of Entries Type uint16 [D15:14] [D13:12] [D11:10] [D9:8] Description Role Definitions: 0x00 = Master 0x01 = Slave 0x02 = Passive - Role Definitions: 0x00 = Master 0x01 = Slave 0x02 = Passive - Label A2DP Streaming Role A2DP Streaming Number of Entries Unused Type [D7:6] [D5:4] [D3:0] Description Role Definitions: 0x00 = Master - 0x01 = Slave 0x02 = Passive Subsequent entries define the power table for each mode. Each entry is in the form: Label State min_interval max_interval Attempt Timeout Time Type uint16 uint16 uint16 uint16 uint16 uint16 Description lp_active (0x0000-use active mode) lp_sniff (0x0001-use sniff mode) lp_passive (0x00ff – do not care) Defines the minimum sniff interval Defines the maximum sniff interval Determines how many slots the slave shall listen when not treating the connection as a scatternet link. Determines how many additional slots the slave shall listen when not treating the connection as a scatternet link. The period for which the mode will be entered. See example entry below. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 70 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Example Entry for PS Key HFP_POWER_TABLE This example describes the default settings to describe a typical power table entry: Word 1 Normal Role Normal number of Entries SCO Role SCO Number of Entries Decimal 1 2 1 2 Hex 0x1 0x2 0x1 0x2 Description Role is slave Defines two entries for normal connections Role is slave Defines two entries for SCO connections Label A2DP Streaming Role A2DP Streaming Number of Entries Unused Decimal 1 1 0 Hex 0x1 0x1 0x0 Description Role is slave Defines one entry for A2DP Streaming connections Normal Mode power table: Label State Min Interval Max Interval Attempt Timeout Time Entry lp_passive 0 0 0 0 1 Hex Value 0x00ff 0x0000 0x0000 0x0000 0x0000 0x0001 Entry lp_sniff 800 800 4 1 0 Hex Value 0x0001 0x0320 0x0320 0x0004 0x0001 0x0000 SCO Mode power table: Label State Min Interval Max Interval Attempt Timeout Time Entry lp_passive 0 0 0 0 1 Hex value 0x00ff 0x0000 0x0000 0x0000 0x0000 0x0001 Entry lp_sniff 160 160 4 1 0 Hex value 0x0001 0x00a0 0x00a0 0x0004 0x0001 0x0000 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 71 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label A2DP Mode power table: Label State Min Interval Max Interval Attempt Timeout Time Entry lp_passive 0 0 0 0 0 Hex value 0x00ff 0x0000 0x0000 0x0000 0x0000 0x0000 7750 00ff 0000 0000 0000 0000 0001 0001 0320 0320 0004 0001 0000 00ff 0000 0000 0000 0000 0001 0001 00a0 00a0 0004 0001 0000 00ff 0000 0000 0000 0000 0000 The example defines the following behaviour: Word 1defines the device as slave in both modes and indicates that there are two power table entries for each mode and one entry for A2DP streaming. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 72 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Thus the hexadecimal entry for the PS key would be: 2.23. RSSI Pairing PSKEY_USR27 holds the parameters for RSSI Inquiry (Proximity Pairing). RSSI Inquiry mode is entered by the EventRssiPair event or the RSSI Inquiry if PDL Less Than feature. The key value is set in 9 words: Word 1 Word 2 Word 3 Parameter Inquiry Tx Power (dB) RSSI Threshold (dB) RSSI Difference Threshold (dB) Valid Range -70 to 20 - - Default Value -70 (0xffba) -35 (0xffdd) 5 (0x0005) Word 4 Word 5 Word 6 Word 7 Word 8 Parameter Class Of Device Filter Connection Threshold (dB) Connection Difference Threshold (dB) Maximum responses Bit[15:8] Inquiry Timeout (*1.28S) Bit[7:0] Valid Range - - - 0-255 0-255 Default Value 0 (0x0000 0000) -35 (0xffdd) 5 (0x0005) 16 10 (0xa) (0x10) Word 9 Try all discovered Bit[1] Start RSSI pairing on PDL reset Bit[0] Parameter Resume Timeout Bit[15-7] Number of Results stored Bit[7-4] Connect if in PDL Bit[3] Don not pair if in PDL Bit[2] Valid Range 0-255 0 to 16 0-1 0-1 0-1 0-1 Default Value 0 2 0 0 0 0 Table 2.46: PSKEY_USR27- RSSI Pairing © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 73 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note In RSSI Inquiry mode the Sink attempts to find a device of the specified Class of Device in the vicinity (i.e. within the specified RSSI thresholds) and to pair and connect to it. The Sink inquires until it successfully pairs and connects with a device, or until it timeouts. Description of Parameters Inquiry Tx Power (tx_power): The inquiry transmit power used. See HCI_Write_Inquiry_Transmit_Power_Level command in the Bluetooth Specification v2.1 + EDR. RSSI Threshold (threshold): The peak RSSI value that any discovered device‟s RSSI value must exceed to be considered a suitable in-range device. If two devices are found with RSSI values that do not differ enough, the Sink continues to inquire for other devices until it timeouts. The difference between a discovered device's RSSI value and the RSSI Threshold must exceed this value in order for the Sink to be considered a suitable in-range device. Class of Device (cod_filter): Defines the Class of device that the inquiry looks for. Class of Device Filter values are detailed in the Assigned Number document available on the Bluetooth SIG website. Connection Threshold (conn_threshold): Defines the peak RSSI value that any device's RSSI value must exceed to be connected to automatically, using the RSSI auto connection feature. Connection Difference (conn_diff_threshold): Defines the difference in RSSI values returned by two devices before the stronger device is considered suitable for the auto connection feature. Number of Results (max_responses): Specifies a limit for the number of devices found during an inquiry search, if 0 value there is no limit on the number of devices found. Inquiry Timeout (timeout): Specifies the maximum inquiry time for device searching, in units of 1.28 seconds. Number of Results (num_results): Specifies the number of results from a search that are stored. Connect if in PDL (connect_if_in_pdl): When set this feature will prevent the connection to any device that is not currently in the Sink paired device list. Don’t pair if in PDL (dont_pair_if_in_pdl): When set, this feature prevents the Sink from trying to pair to a device that has been previously paired to the Sink and is currently in the PDL. Try all discovered (try_all_discovered): When set, this feature forces the Sink to attempt to pair/connect to the entire list of devices it found during a search. Start rssi pairing on PDL reset (pair_on_pdl_reset): when set, the Sink will start RSSI pairing automatically if the paired device list is erased. 2.24. USB Configuration PSKEY_USR28 contains the USB Configuration. Word1 Label Class of Device Type D15:0 Range 1-32 Default Value 0x00 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 74 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note RSSI Difference Threshold (diff_threshold): The difference in the RSSI values returned by two discovered devices must exceed this value in order for the Sink to initiate pairing with the stronger device. Word 2 Charger Configuration When USB Disconnected (i_disc) Disconnect Charger Enable Disconnect Boost Enable Disconnect Voltage Select Disconnect Power Off Disconnect Disable LEDs Unused Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 0 (Off) 0 (CHG) 0 0 0 0 Word 3 Charger Configuration When Suspended (i_susp) Label Suspend Charger Enable Suspend Boost Enable Suspend Voltage Select Suspend Power Off Suspend Disable LEDs Unused Suspend Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 0 (Off) 0 (CHG) 0 0 0 0 Word 4 Charger Configuration When Suspended Prior To Enumeration With Dead Battery (i_susp_db) Label Suspend Flat Battery Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Default Value 0 0 (Off) 0 (CHG) 0 0 0 0 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 75 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Word 5 Charger Configuration When Attached But Not Enumerated (i_att) Not Enum Boost Enable Not Enum Voltage Select Not Enum Power Off Not Enum Disable LEDs Unused Not Enum Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Word 6 Charger Configuration When Attached But Not Enumerated And Trickle Charging (i_att_trickle) Label Suspend Flat Battery Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Word 7 Charger Configuration When Connected to a Host/Hub (i_conn) Label Suspend Flat Battery Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Word 8 Charger Configuration When Connected to a Host/Hub And Trickle Charging (i_conn_trickle) Label Suspend Flat Battery Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 76 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Not Enum Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Word 9 Charger Configuration When Connected to Charging Host/Hub (i_chg) Label Suspend Flat Battery Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Word 10 Charger Configuration When Connected to A Dedicated Charger (i_dchg) Label Suspend Flat Battery Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 Word 11 USB Charger Configuration when Vbus Drop is Detected (i_lim) Label Suspend Flat Battery Charger Enable I Disconnect Boost Enable I Disconnect Voltage Select I Disconnect Power Off I Disconnect Disable LEDs Unused I Disconnect Current Type D[15] D[14:13] D[12] D[11] D[10] D[9:8] D[7:0] Range 0-1 0-2 0-1 0-1 0-1 0-1 0-255 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 77 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label Suspend Flat Battery Charger Enable Word 12 unused USB Plugin Type USB Plugin Index Attach Timeout Deconfigure Timeout Type D[15] D[14] D[13:12] D[11:8] D[7:4] D[3:0] Range 0-1 N/A 0-2 0-6 0-1 0-1 See USB Configuration Application Note for further details on USB Configuration. 2.24.1. device_class The USB Class of Device setting are: USB_DEVICE_CLASS_TYPE_AUDIO_MICROPHONE = 0x01 USB_DEVICE_CLASS_TYPE_AUDIO_SPEAKER = 0x02 USB_DEVICE_CLASS_TYPE_BATTERY_CHARGING = 0x04 USB_DEVICE_CLASS_TYPE_MASS_STORAGE = 0x08 USB_DEVICE_CLASS_TYPE_HID_CONSUMER_TRANSPORT_CONTROL = 0x10 USB_DEVICE_CLASS_TYPE_HID_KEYBOARD = 0x20 Due to the interaction between the USB interfaces and the charger control it is necessary to configure the charger to work differently in different USB operating states, therefore there are charger configuration words available for the following USB operating states: Current when USB disconnected but charger connected Current when suspended Current when suspended prior to enumeration with dead battery Current when attached but not enumerated Current when attached but not enumerated and trickle charging Current when connected to host/hub Current when connected to host/hub and trickle charging Current when connected to a charging host/hub Current when connected to a dedicated charger Current when vbus drop is detected The charger configuration word (sink_charge_current) for each of the above operating states has the following configuration items: charge: Specifies whether the charger is enabled in this state boost: Specifies whether boost charging is to be used and what type of boost charging vsel: Selects the voltage source for the chip, can be set to CHARGER or VBAT power_off: When set the Sink reduces power to an absolute minimum disable_leds: When set the LEDs are disabled while charging current: Specifies the maximum charging current in mA © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 78 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Label USB Audio Always Routed In addition to the charger configuration there are some more general USB features, these are: USB Audio Always Routed (audio_always_on): When set the USB audio is routed even when it is not in use. Plugin Type (plugin_type): Sets the number and type of channels being used for audio routing: 0 = usb_plugin_stereo 1 = usb_plugin_mono_nb 2 = usb_plugin_mono_wb (stereo) (narrow band) (wideband) Plugin Index (plugin_index): Specifies the DSP plugin used, e.g. No DSP, CVC 1 MIC etc. Attach Timeout (attach_timeout): If after attaching the USB it does not enumerate within the attach timeout the Sink will set low power boot mode. Deconfigure Timeout (deconfigured_timeout): If the USB becomes deconfigured and no further action is taken within the deconfigured timeout period the Sink sets to low power boot mode. The CSR8600 ROM Charger Config, Power Management and Lithium Polymer Battery Charger Calibration and Operation for CSR8670 application notes have further useful information. 2.25. FM Receiver Configuration PSKEY_USR29 contains the configuration for the FM receiver device on the CSR CNS10010v1 add on board. Word 1 Word 2 Word 3 Word 4 Word 5 Word 6 Description. Seek band bottom Seek Band top Seek frequency spacing Seek tune RSSI Seek tune SNR RSQ low threshold for RSSI interrupt Default Value 0x226a (88.1 Mhz) 0x2a26 (107.9 Mhz) 0x000a 0x0014 0x0003 0x0000 Word 7 Word 8 Word 9 Word 10 Word 11 Desc. RSQ High threshold for RSSI interrupt RSQ low threshold for SNR interrupt. RSQ high threshold for SNR interrupt. Antenna source Hardware PIO for reset line Default Value 0x007f 0x0000 0x007f 0x0001 0x0003 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 79 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note 2.25.1. FM Receiver Frequency Store PSKEY_USR32 contains stored radio frequencies. Word 2 Word 3 Description. Stored station 1 Stored station 2 Stored station 3 Default Value 0x0000 0x0000 0x0000 2.26. BLE Remote Control Configuration PSKEY_USR33 contains configuration for the BLE Remote Control Functionality. This maps HID event s from the remote into Sink application events. Word 1 Word 2 Word 3 High Byte Low Byte High Byte Low Byte Description HID event for Volume Up HID event for Volume Down HID event for Standby/Resume HID event for Source Input Default Value 0xe9ea HID Report Handle 0x3058 Word 4 Word 5 High Byte Low Byte High Byte Low Byte Description HID event for AVRCP Play/pAuse HID event for AVRCP Stop HID event for AVRCP Skip Forward HID event for AVRCP Skip Backwards Default Value 0x2a3a 0x4f50 Word 6 Word 7 High Byte Low Byte High Byte Low Byte Description HID event for AVRCP Next Group HID event for AVRCP Previous Group HID event for AVCRCP Rewind Release HID event for AVRCP Fast Forward Press Release Default Value 0x413e 0x3f40 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 80 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Word 1 2.27. Session Data PSKEY_USR12 holds the Session Data. It is written by the application at the end of a session so that the feature settings stored in it persist the next time the application is run. Note: Word 1 User Configurable Features Bit Feature Description D[15] Volume Orientation 1 = Inverts the operation of the volume controls 0 = Volume control normal orientation D[14] LED Disable 1 = Disables the LEDs 0 = Enables LEDs D[13:10] TTS Language Selected Text To Speech Language Set D[9] Multipoint Enable 1 = Enable Multipoint operation 0 = Disable Multipoint operation D[8] Unused - D[7] LBIPM Enable 1 = Enable Low Battery intelligent Power Management 0 = Disable Low Battery intelligent Power Management D[6:5] Unused - D[4] Text To Speech Enable 1 = Enable Text To Speech 0 = Disable Text To Speech D[3] Speech Recognition Enable 1 = Enable Speech Recognition 0 = Disable Speech Recognition D[2:0] Unused - Word 2: Audio Enhancements Bit Feature Description D[15] Audio Enhancements Enable 1 = Enable 0 = Disable D[14:12] unused - D[11] Sub woofer bypass 1 = Enable 0 = Disable D[10] Speaker Eq Bypass 1 = Enable 0 = Disable © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 81 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Individual feature bits in this PS key can be preconfigured to set default values if it is not intended to allow a user to change the state of a particular feature. Feature Description D[9] Eq Flat 1 = Enable 0 = Disable D[8] User Eq Bypass 1 = Enable 0 = Disable D[7] Bass Boost Bypass 1 = Enable 0 = Disable D[6] Spatial Bypass 1 = Enable 0 = Disable D[5] Compander Bypass 1 = Enable 0 = Disable D[4] Dither Bypass 1 = Enable 0 = Disable D[3] unused Note: D[2:0] Selected Eq Bank 0x7 selects the option to use the last customer defined Equaliser settings. Word 3: FM Rx Configuration Bit Feature Description D[15:0] Stored FM Frequency Frequency stored on last FM Rx use © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 82 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Bit Appendix A System Events Table A.1 lists the Sink system events. Note: System Event Event number Event Type Description EventPowerOn 0x6001 Action Power The Sink On EventPowerOff 0x6002 Action Shutdown the Sink EventEnterPairing 0x6003 Action Make the Sink Connectable / Discoverable EventInitateVoiceDial 0x6004 Action Request a Voice Dial EventLastNumberRedial 0x6005 Action Request a Last Number Redial EventAnswer 0x6006 Action Answer a single Incoming call EventReject 0x6007 Action Reject a single Incoming call EventCancelEnd 0x6008 Action Cancel / End a single active call EventTransferToggle 0x6009 Action Transfer the audio of an active call to or from the AG EventToggleMute 0x600a Action Toggle the Mute state of the Sink EventVolumeUp 0x600b Action Increase the local volume and inform the AG of a volume change EventVolumeDown 0x600c Action Decrease the local volume and inform the AG of a volume change EventToggleVolume 0x600d Action Swap the orientation of the volume buttons (state does not persist in PSKEY_USR10) EventThreeWayReleaseAllHeld 0x600e Action Release all held calls EventThreeWayAcceptWaitingReleaseActive 0x600f Action Accept a held or waiting call and release the active call EventThreeWayAcceptWaitingHoldActive 0x6010 Action Accept a held or waiting call and place the active call on hold © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 83 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note In the majority of situations, System Events are referenced in PS Keys as an offset of their base 0x6000. i.e. EventPowerOn (0x6001) is identified using 0x01. However, in some cases the full Event number is required. Event number Event Type Description EventThreeWayAddHeldTo3Way 0x6011 Action Create a Multi Party call by adding any held calls to the conversation EventThreeWayConnect2Disconnect 0x6012 Action Connect Multi-party calls and remove yourself from the conversation EventEnableDisableLeds 0x6013 Action - EventResetPairedDeviceList 0x6014 Action Reset the Paired Device List and the Last/Default User EventEnterDutMode 0x6015 Action Enter Device Under Test mode EventPairingFail 0x6016 Indication A Pairing Attempt has failed EventPairingSuccessful 0x6017 Indication A Pairing attempt has succeeded EventSCOLinkOpen 0x6018 Indication An Audio Link has been Opened (also indicates Tone Playback complete) EventSCOLinkClose 0x6019 Indication An Audio link has been Closed EventLowBattery 0x601a Indication The Battery Voltage is below the minimum threshold EventEndOfCall 0x601b Action End Of Call Detected EventEstablishSLC 0x601c Indication Establish a Service Level Connection as per the Reconnection policy EventLEDEventComplete 0x601d Indication A LED Event indication has finished EventChargeComplete 0x601e Indication The Battery Charger has completed charging EventAutoSwitchOff 0x601f Internal The Automatic Switch off timer has elapsed EventChargeInProgress 0x6020 Indication The Battery is currently charging EventOkBattery 0x6021 Indication The Battery Voltage is above the minimum threshold EventChargerConnected 0x6022 Action The Charger has been connected © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 84 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventChargerDisconnected 0x6023 Action The Charger has been removed EventSLCDisconnected 0x6024 Indication A Service Level Connection has been removed EventBatteryLevelRequest 0x6025 Action Take a battery voltage measurement EventLinkLoss 0x6026 Indication An abnormal SLC disconnect has been detected EventLimboTimeout 0x6027 Internal Complete the UnMute Action EventMuteOn 0x6028 Action Activate Mute EventMuteOff 0x6029 Action De-Activate Mute EventMuteReminder 0x602a Internal Sink is Muted EventResetComplete 0x602b Internal A Paired Device Reset is now complete EventEnterTXContTestMode 0x602c Action Enter TX Continuous Test Mode EventEnterDUTState 0x602d Action Enter the Device Under Test State EventVolumeOrientationNormal 0x602e Action Restore the default orientation of the Volume buttons EventVolumeOrientationInvert 0x602f Action Invert the Action of the Volume Buttons EventNetworkOrServiceNotPresent 0x6030 Indication An AG has reported that there is no GSM Network Present EventNetworkOrServicePresent 0x6031 Indication An AG has reported that there is a GSM Network Present EventEnableLEDS 0x6032 Action - EventDisableLEDS 0x6033 Action - EventSLCConnected 0x6034 Indication An SLC has been Established EventError 0x6035 Indication An AT command Error has been received EventLongTimer 0x6036 Indication A button has been held down for the Long Press Duration © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 85 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventVLongTimer 0x6037 Indication A button has been held down for the Very Long Press Duration EventEnablePowerOff 0x6038 Internal Allow Power Off Events to occur EventBassBoostEnableDisableToggle 0x6039 Action Toggles the Bass Boost feature EventPlaceIncomingCallOnHold 0x603a Action Place an incoming call on hold EventAcceptHeldIncomingCall 0x603b Action Accept the held incoming call EventRejectHeldIncomingCall 0x603c Action Reject the held incoming call EventCancelLedIndication 0x603d Action Reset the LED subsystem EventCallAnswered 0x603e Indication An incoming call has been answered either locally or at the remote end EventEnterPairingEmptyPDL 0x603f Indication When the PDL is empty, auto enter pairing mode EventReconnectFailed 0x6040 Indication Indicates Sink failed to reconnect following abnormal disconnect EventGasGauge0 0x6041 Indication The battery voltage is above gas gauge level 0 EventGasGauge1 0x6042 Indication The battery voltage is above gas gauge level 1 EventGasGauge2 0x6043 Indication The battery voltage is above gas gauge level 2 EventGasGauge3 0x6044 Indication The battery voltage is above gas gauge level 3 EventCheckForAudioTransfer, 0x6045 Internal Establish an audio link if one is not already open. EventEnterDFUMode 0x6046 - - EventGaiaAlertLEDs 0x6047 Internal Used by GAIA to indicate led events EventEnterServiceMode 0x6048 Internal - EventServiceModeEntered 0x6049 Indication - EventAudioMessage1 0x604a Internal - © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 86 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventAudioMessage2 0x604b Internal - EventAudioMessage3 0x604c Internal - EventAudioMessage4 0x604d Internal - EventEnableVoicePrompts 0x604e Action Enables the voice prompts reporting EventDialStoredNumber 0x604f Action Dials the one touch number stored in PS EventDisableVoicePrompts 0x6050 Action Disables the voice prompts reporting EventChargerDisabled 0x6051 Indication Set when battery temperature is out of range and not charging EventRestoreDefaults 0x6052 Action Resets some parts of the configuration to factory settings EventChargerGasGauge0 0x6053 Indication The battery voltage while charging is above gas gauge level 0 EventChargerGasGauge1 0x6054 Indication The battery voltage while charging is above gas gauge level 1 EventChargerGasGauge2 0x6055 Indication The battery voltage while charging is above gas gauge level 2 EventChargerGasGauge3 0x6056 Indication The battery voltage while charging is above gas gauge level 3 EventContinueSlcConnectRequest 0x6057 Indication Multipoint – attempts are being made to connect further AGs. EventConnectableTimeout 0x6058 Indication The Sink is now no longer connectable EventLastNumberRedial_AG2 0x6059 Action Last number redial for AG 2 when using multipoint EventInitateVoiceDial_AG2 0x605a Action Voice dial for AG 2 when using multipoint © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 87 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventConfirmationAccept 0x605b Action Accept a 2.1 confirmation request EventConfirmationReject 0x605c Action Reject a 2.1 confirmation request EventToggleDebugKeys 0x605d Action Turn on/off debug keys Indication An which does nothing but can be used to generate a tone on a button press (or led indication) with no action associated with it EventTone1 0x605e EventTone2 0x605f Indication An which does nothing but can be used to generate a tone on a button press (or LED indication) with no action associated with it EventSelectTTSLanguageMode 0x6060 Action Select the required language of Text to Speech EventConfirmTTSLanguage 0x6061 Action Confirm the chosen Text to Speech Language EventEnableMultipoint 0x6062 Action Enable Multipoint operation EventDisableMultipoint 0x6063 Action Disable Multipoint operation EventStreamEstablish 0x6064 Indication This event is generated when an a2dp media stream is established EventSLCConnectedAfterPowerOn 0x6065 Indication Used in conjunction with different SLC connected event after power on, event is generated for first SLC connected following a power on if feature bit is enabled EventResetLEDTimeout 0x6066 Indication Internal indication that the LEDs which had timed out have been re-enabled EventStartPagingInConnState 0x6067 Indication Internal indication that paging has started in connectable state EventStopPagingInConnState 0x6068 Indication Internal indication that paging has stopped in connectable state EventMultipointCallWaiting 0x6069 Indication Internal indication that a second incoming call is present in multipoint operation © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 88 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventRefreshEncryption 0x606a Indication Internal indication that the encryption refresh timeout has triggered EventSwitchAudioMode 0x606b Action Switch to next audio EQ mode EventButtonLockingOn 0x606c Action Turn on Button Lock feature EventButtonLockingOff 0x606d Action Turn off Button Lock feature EventToggleButtonLocking 0x606e Action Toggle Button Lock feature on/off EventButtonBlockedByLock 0x606f Indication Event is generated if a button press was ignored due to button lock being on EventSpeechRecognitionTuningStart 0x6070 Action Put the speech recognition into tuning mode EventSpeechRecognitionYes 0x6071 Indication Speech recognition returned a YES pattern match EventRssiPair 0x6072 Action Starts the RSSI pairing sequence EventRssiPairReminder 0x6073 Indication Internal indication that RSSI pairing is still in progress EventRssiPairTimeout 0x6074 Indication Internal indication that the RSSI pairing has completed by means of a timeout EventBassBoostOn 0x6075 Action Enables the music manager bass boost function EventCheckRole 0x6076 Indication Internal indication that a check of the current Sink role is being performed EventMissedCall 0x6077 Indication An incoming call was not answered EventBassBoostOff 0x6078 Action Disables the music manager bass boost function EventA2dpConnected 0x6079 Indication A2DP is now connected EventA2dpDisconnected 0x607a Indication A2DP has been disconnected © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 89 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description Event3DEnhancementEnableDisableToggle 0x607b Action Toggles the music manager 3D enhancement feature Event3DEnhancementOn 0x607c Action Enables the music manager 3D enhancement feature Event3DEnhancementOff 0x607d Action Disables the music manager 3D enhancement feature EventVolumeMax 0x607e Indication A2DP has reached max volume level EventVolumeMin 0x607f Indication A2DP has reached min volume level EventCheckAudioRouting 0x6080 Action Check audio sources and change if appropriate EventConfirmationRequest 0x6081 Indication Event played on receipt of a confirmation request EventPasskeyDisplay 0x6082 Indication Event played on receipt of a Passkey notification indication EventPinCodeRequest 0x6083 Indication Event played on receipt of a request EventSwitchToNextAudioSource 0x6084 Action Switch to next input audio source EventSelectWiredAudioSource 0x6085 Action Switch to the Wired input source EventPbapDialMch 0x6086 Action Dial the last made number EventPbapDialIch 0x6087 Action Dial the last incoming number EventEstablishPbap 0x6088 Action Connect PBAP EventPbapDialFail 0x6089 Action Dial was not successful EventSetWbsCodecs 0x608a Action WBS test event EventOverrideResponse 0x608b Action WBS test event EventCreateAudioConnection 0x608c Action Can be used to make the Sink open a (e)SCO without having a call present. EventSetWbsCodecsSendBAC 0x608d Action WBS test event © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 90 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventUpdateStoredNumber 0x608e Action Update the number stored on Sink for one touch dial from last incoming number EventEnableIntelligentPowerManagement 0x608f Action Enable the intelligent power management module EventDisableIntelligentPowerManagement 0x6090 Action Disable the Intelligent power management module EventToggleIntelligentPowerManagement 0x6091 Action Toggle intelligent power management enable state EventEnterBootMode2 0x6092 Action Event for entering a different boot mode for testing purposes EventAvrcpPlayPause 0x6093 Action AVRCP Play/Pause command EventAvrcpStop 0x6094 Action AVRCP Stop command EventAvrcpSkipForward 0x6095 Action AVRCP Skip Forward command EventAvrcpSkipBackward 0x6096 Action AVRCP Skip Backward command EventAvrcpFastForwardPress 0x6097 Action AVRCP Fast Forward Press command EventAvrcpFastForwardRelease 0x6098 Action AVRCP Fast Forward Release command EventAvrcpRewindPress 0x6099 Action AVRCP Fast Rewind Press command EventAvrcpRewindRelease 0x609a Action AVRCP Fast Rewind Release command EventPbapSetPhonebook 0x609b Action Set the current PBAP phonebook EventPbapBrowseEntry 0x609c Action Browse entry of phonebook via PBAP EventPbapBrowseList 0x609d Action Browse list of entries via PBAP EventPbapDownloadPhonebook 0x609e Action Download entire phonebook via PBAP EventPbapDownloadPhonebookObject 0x609f Action Select phonebook object EventPbapBrowseComplete 0x60a0 Action Phonebook browsing is complete © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 91 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventSelectUSBAudioSource 0x60a1 Action Select USB audio source EventMapcDisableMns 0x60a2 Action Select AG1 as audio source EventMapcMsgNotification 0x60a3 Indication Incoming Message notification EventMapcMnsSuccess 0x60a4 Indication Message service successful EventMapcMnsFailed 0x60a5 Indication Message service failed EventAvrcpToggleActive 0x60a6 Action Toggle the currently active AVRCP source EventAvrcpNextGroup 0x60a7 Action AVRCP move to next group EventAvrcpPreviousGroup 0x60a8 Action AVRCP move to previous group EventUsbPlayPause 0x60a9 Action USB play or pause toggle EventUsbStop 0x60aa Action USB stop playing EventUsbFwd 0x60ab Action USB fast forward EventUsbBck 0x60ac Action USB fast rewind EventCriticalBattery 0x60ad Indication Battery level is critical EventRssiResume 0x60ae Action Reset inquiry and resume EventSelectAG2AudioSource 0x60af Action Select AG2 as audio source EventPowerOnPanic 0x60b0 Indication Sink powered on as a result of a chip panic EventEstablishSLCOnPanic 0x60b1 Indication Sink is reconnecting to AG following a reconnect on chip panic occurred EventTestDefrag 0x60b2 Action Test event to force a PS defrag to occur EventUsbDeadBatteryTimeout 0x60b3 Indication Timeout on dead battery occurred whilst connected over USB EventUsbMute 0x60b4 Action Perform a mute when using USB audio EventLowPowerMode 0x60b5 Action Enter USB audio low power mode © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 92 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event System Event EventSpeechRecognitionStart Event number 0x60b6 Description Action Start the speech recognition process, this occurs automatically on an incoming call notification EventSpeechRecognitionStop 0x60b7 Action Stops the speech recognition process, handled automatically by Sink call management software EventWiredAudioConnected 0x60b8 Indication Wired audio is now connected EventWiredAudioDisconnected 0x60b9 Indication Wired audio has been disconnected EventPrimaryDeviceConnected 0x60ba Indication Primary AG/Audio Source is now connected EventSecondaryDeviceConnected 0x60bb Indication Secondary AG/Audio Source is now connected EventAudioTestMode 0x60bc Action Enter audio test mode EventToneTestMode 0x60bd Action Enter tone test mode EventKeyTestMode 0x60be Action Enter key test mode EventSpeechRecognitionTuningNo 0x60bf Indication Speech recognition algorithm detected the word NO EventGaiaUser1 0x60c0 Action User configurable events EventGaiaUser2 0x60c1 Action User configurable events EventGaiaUser3 0x60c2 Action User configurable events EventGaiaUser4 0x60c3 Action User configurable events EventGaiaUser5 0x60c4 Action User configurable events EventGaiaUser6 0x60c5 Action User configurable events EventGaiaUser7 0x60c6 Action User configurable events EventGaiaUser8 0x60c7 Action User configurable events EventUpdateAttributes 0x60c8 Action Writes attribute data to PS EventSelectNoAudioSource 0x60c9 Action Select no audio source © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 93 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Event Type Event number Event Type Description EventResetAvrcpMode 0x60ca Action Reset AVRCP EventFmOn 0x60cb Action Enable the FM hardware EventFmOnff 0x60cc Action Disable the FM hardware EventFmRxTuneUp 0x60cd Action Seek FM tune Up EventFmRxTuneDown 0x60ce Action Seek FM tune Down EventFmRxStore 0x60cf Action Store the current tuned station EventFmRxTuneToStore 0x60d0 Action Tunes FM receiver to stored station EventSwapMediaChannel 0x60d1 Action This event can be used to switch between two media sources (A2DP sources) EventCheckAudioAmpDrive 0x60d2 Action This is an internally used event Indication Indicates that an external microphone has been connected, should be configured to be generated when a PIO toggles EventExternalMicConnected 0x60d3 EventExternalMicDisconnected 0x60d4 Indication Indicates that an external microphone has been disconnected, should be configured to be generated when a PIO toggles EventAvrcpPlay 0x60d5 Action AVRCP Play command EventAvrcpPause 0x60d6 Action AVRCP Pause command EventEnableSSR 0c60d7 Action Enable Simple Speech Recognition EventDisableSSR 0c60d8 Action Disable Simple Speech Recognition EventSbcCodec 0c60d9 Indication Indicates SBC codec in use EventMp3Codec 0c60da Indication Indicates MP3 codec in use EventAacCodec 0c60db Indication Indicates AAC codec in use EventAptxCodec 0c60dc Indication Indicates aptX codec in use © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 94 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventAptxLLCodec 0c60dd Indication Indicates aptX Low latency codec in use EventFaststreamCodec 0c60de Indication Indicates Faststream codec in use EventNFCTagDetected 0c60df Action Sent when an NFC tag detected EventPbapGetPhonebookSize 0c60e0 Action Gets the PBAP Phonebook size EventFmRxErase 0c60e1 Action Erase FM Stored station EventSubwooferStartInquiry 0c60e2 Action Begin Subwoofer inquiry EventSubwooferCheckPairing 0c60e3 Action Attempt to connect to Subwoofer if paired EventSubwooferOpenLLMedia 0c60e4 Action Open Low Latency Subwoofer media channel EventSubwooferOpenStdMedia 0c60e5 Action Open standard Subwoofer media channel EventSubwooferCloseMedia 0c60e6 Action Close Subwoofer media channel EventSubwooferStartStreaming 0c60e7 Action Begin Subwoofer audio streaming EventSubwooferSuspendStreaming 0c60e8 Action Suspend Subwoofer audio streaming EventSubwooferDisconnect 0c60e9 Action Disconnect Subwoofer EventSubwooferVolumeDown 0c60ea Action Increase Subwoofer Volume EventSubwooferVolumeUp 0c60eb Action Decrease Subwoofer Volume EventRCVolumeUp 0c60ec Indication Up volume indication from BLE Remote control EventRCVolumeDown 0c60ed Indication Down volume indication from BLE Remote control EventSelectFMAudioSource 0c60ee Action Select FM as audio source EventPeerSessionInquire 0c60ef Action Begin inquiry and pairing EventPeerSessionConnDisc 0c60f0 Action Enter connectable discoverable state © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 95 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Event number Event Type Description EventPeerSessionEnd 0c60f1 Action Disconnect any a2dp connections to any peer devices EventSubwooferDeletePairing 0c60f2 Action Delete only the subwoofer device from the PDL EventAvrcpShuffleOff 0c60f3 Action AVRCP Shuffle Mode off EventAvrcpShuffleAllTrack 0c60f4 Action AVRCP Shuffle Mode all tracks EventAvrcpShuffleGroup 0c60f5 Action AVRCP Shuffle Mode Group EventAvrcpRepeatOff 0c60f6 Action AVRCP Repeat off EventAvrcpRepeatSingleTrack 0c60f7 Action AVRCP Repeat Single Track EventAvrcpRepeatAllTrack 0c60f8 Action AVRCP Repeat All Tracks EventAvrcpRepeatGroup 0c60f9 Action AVRCP Repeat Group Table A.1: Sink System Events © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 96 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note System Event Appendix B Tones Table B.1 lists the Tones available for Sink applications. Value Musical Note Duration No tone 0x00 - - Middle 0 0x01 G5 300 ms Short 1 0x02 C6 100 ms Short 2 0x03 E6 100 ms Short 3 0x04 G6 100 ms Short 4 0x05 AS6 100 ms Short 5 0x06 C7 100 ms Short 6 0x07 D7 100 ms Short 7 0x08 E7 100 ms Short 8 0x09 FS7 100ms Middle 9 0x0a GS7 300 ms 4 Note Rising Scale 0x0b GS4 DS5 GS5 C6 150 150 150 150 4 Note Falling Scale 0x0c C6 GS5 DS5 GS4 150 150 150 150 2 Note Rising Scale 0x0d E6 A6 200 200 2 Note Falling Scale 0x0e A6 E6 300 300 Long High Short Low 0x0f G5 G7 400 100 Short Middle 0x10 GS7 100 Long Middle 0x11 GS7 500 Long Low 0x12 G5 500 Short High 0x13 G6 100 V Long High 0x14 G6 800 Long High 0x15 G6 500 Short Double Low 0x16 G5 Ring Tone G5 100 100 Short Double High 0x17 G6 G6 100 100 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 97 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Tone Name Value Musical Note Duration battery_low_tone 0x18 E6 AS6 E6 AS6 E6 125 125 125 125 125 low_500ms_tone 0x19 G5 500 Long Double Low 0x1a G5 REST G5 500 500 500 ring_twilight 0x1b Ring Tone - ring tone_g_s_t_q 0x1c Ring Tone - ring tone_valkyries 0x1d Ring Tone - ring tone_greensleeves 0x1e Ring Tone - ring_two_beeps 0x1f Ring Tone - ring_fairground 0x20 Ring Tone - ring_counterpoint 0x21 Ring Tone - ring_major_arp 0x22 Ring Tone - ring_major_scale 0x23 Ring Tone - ring_minor_arp 0x24 Ring Tone - ring_harmonic_minor_scale 0x25 Ring Tone - ring_more_than_a_feeling 0x26 Ring Tone - ring_eight_beeps 0x27 Ring Tone - ring_four_beeps 0x28 Ring Tone - ring_bumble_bee 0x29 Ring Tone - ring_aug_scale 0x2a Ring Tone - ring_dim_scale 0x2b Ring Tone - CustomRingTone 0x2c Ring Tone - 4 Note Low to High 0x2d G5 D6 G6 B5 37.5 37.5 37.5 37.5 4 Note High to Low 0x2e B5 G6 D6 G5 37.5 37.5 37.5 37.5 Short High to Low 0x2f G6 G5 25 25 5 Rapid High Tones 0x30 B6 B6 B6 B6 B6 94 94 94 94 94 Short Low to High 0x31 DS7 G7 100 100 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 98 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Tone Name Value Musical Note Duration Short High to Low 0x32 G7 DS7 100 100 Short V High 0x33 DS8 50 12 High/Higher beeps 0x34 B6 G8 B6 G8 B6 G8 B6 G8 B6 G8 B6 G8 50 50 50 50 50 50 50 50 50 50 50 50 Short Middle 0x35 DS8 50 5 high beeps 0x36 A6 rest A6 rest A6 rest A6 rest A6 rest 50 50 50 50 50 50 50 50 50 50 Short Low to High 0x37 B6 rest DS8 50 50 50 Short High to Low 0x38 DS8 rest B6 50 50 50 Short Middle Tone 0x39 D6 100 4 Low to High Long at Top 0x3a G5 D6 G6 B6 100 100 100 300 4 High to Low Long at Bottom 0x3b B6 G6 D6 G5 100 100 100 300 3 Note Descending 0x3c G6 D6 G5 300 300 300 5th Down Medium-Long 0x3d D6 G5 300 500 5th Down Short-Short 0x3e D6 G5 100 100 5th Up Short-Short 0x3f G5 D6 100 100 2 Half Second Low Tones 0x40 G5 rest G5 500 500 500 Short High Tone 0x41 G7 100 Long Low Tone 0x42 G5 400 Double Low Tones 0x43 G5 rest G5 200 200 200 G Major Arp Up 0x44 G6 B6 D7 G7 125 125 125 125 G Major Arp Down 0x45 G7 D7 B6 G6 125 125 125 125 Fairly Short High Tone 0x46 G7 150 Fairly Short Low Tone 0x47 G5 150 Medium Length Low Tone 0x48 G5 200 Short Low-High 0x49 G5 G7 80 80 Double Octave Toggle Ring Tone 0x4a G7 G5 G7 G5 G7 G5 50 50 50 50 50 50 250 © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 99 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Tone Name Value Musical Note Duration Low Low High 0x4b G5 G5 G7 100 100 100 Double Low Tones (long) 0x4c G5 G5 48 48 48 Connected Tone 0x4d C6 D6 A6 48 48 48 Disconnect Tone 0x4e A6 D6 C6 48 48 48 Confirmation Tone 0x4f C5 E5 68 68 Error Tone (Ver 2) 0x50 A5 REST A5 68 68 68 Low Battery Tone (Ver 2) 0x51 E6 F5 68 68 Mute Off Tone (Ver 2) 0x52 A5 A4 48 48 Mute On Tone (Ver 2) 0x53 A4 A5 48 48 Single Tone 0x54 A5 48 Shut Down Tone 0x55 A5 A4 408 136 Old Phone Style Ring Tone 0x56 C6 E6 C6 E6 C6 E6 C6 E6 C6 E6 C6 REST C6 E6 C6 E6 C6 E6 C6 E6 C6 E6 C6 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 48 Power up tone 0x57 C5 REST E5 REST G5 REST B5 REST C6 83 ms 10 ms 83 ms 10 ms 83 ms 10 ms 124 ms 98 ms 372 ms Vol level 7 0x58 A5 REST A5 68 ms 68 ms 68 ms Vol level 6 0x59 DS6 68 ms Vol level 5 0x5a D6 68 ms Vol level 4 0x5b CS6 68 ms Vol level 3 0x5c C6 68 ms Vol level 2 0x5d B5 68 ms Vol level 1 0x5e AS5 68 ms User configurable tone 1 0x5f - - User configurable tone 2 0x60 - - User configurable tone 3 0x61 - - User configurable tone 4 0x62 - - © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 100 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Tone Name Value Musical Note Duration User configurable tone 5 0x63 - - User configurable tone 6 0x64 - - User configurable tone 7 0x65 - - User configurable tone 8 0x66 - - BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Tone Name Table B.1: Sink Tones © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 101 of 104 CS-236873-ANP2 www.csr.com Appendix C Sink States Table C.1 lists the Sink states currently used Sink applications: Value Description deviceLimbo 0x00 The Sink is physically but not logically on (i.e. the Sink application has not received a Power On event) - this state is used for NiMH charging deviceConnectable 0x01 The Sink is Connectable but not Discoverable deviceConnDiscoverable 0x02 The Sink is both Connectable and Discoverable deviceConnected 0x03 The Sink is Connected to an AG - No Longer Connectable or Discoverable deviceOutgoingCallEstablish 0x04 The Connected AG is making an outgoing call deviceIncomingCallEstablish 0x05 The Connected AG is receiving an Incoming call Indication deviceActiveCall 0x06 A call is in progress deviceTestMode 0x07 DUT mode (Device Under Test) deviceThreeWayCallWaiting 0x08 An active call is in progress and a second incoming call is being indicated deviceThreeWayCallOnHold 0x09 An active call is in progress and a second call is currently on hold deviceThreeWayMultiCall 0x0a Two active calls are in progress - multi-party calling deviceIncomingCallOnHold 0x0b A single Incoming Call has been placed on hold deviceActiveCallNoSco 0x0c A call is in progress but there is not an active audio connection deviceAD2PStreaming 0x0d Streaming A2DP Audio 0x0e A low battery condition is being indicated. (1) deviceLowBattery (1) The deviceLowBattery state can only be used to initiate a LED sequence to indicate low battery power. Table C.1: Sink States Note: An LED pattern assigned to this state will override all other LED state patterns while the battery is low. © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 102 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note State Document References Reference Audio Sink Application Configuration Tool User Guide CS-236874-UG CSR8600 ROM Charger Config CS-223677-AN Power Management Application Note CS-217437-AN Lithium Polymer Battery Charger Calibration and Operation for CSR8670 Application Note CS-204572-AN Sending Custom AT Commands Including Battery Status Notifications CS-217045-AN Terms and Definitions A2DP Advanced Audio Distribution Profile AAC Advanced Audio Codec ADPCM Adaptive Differential Pulse Code Modulation AG Audio Gateway AT ATtention (Command prefix) BCSP BlueCore Serial Protocol BlueCore® Group term for CSR‟s range of Bluetooth wireless technology ICs Bluetooth SIG Bluetooth Special Interest Group Bluetooth® Set of technologies providing audio and data transfer over short-range radio connections Codec COder DECoder CSR Cambridge Silicon Radio DUT Device Under Test e.g. exempli gratia, for example EDR Enhanced Data Rate EEPROM Electrically Erasable Programmable Read Only Memory Eq Equaliser eSCO extended Synchronous Connection-Oriented etc et cetera, and the rest, and so forth HFP Handsfree Profile © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement Page 103 of 104 CS-236873-ANP2 www.csr.com BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note Document Human Machine Interface HSP Headset Profile i.e. Id est, that is I2C Inter-Integrated Circuit IC Integrated Circuit LDO Low Drop Out LED Light Emitting Diode Mic Microphone NiMH Nickel Metal Hydride PBAP Phone Book Access Profile PDL Paired Device List PIO Parallel Input Output PS Persistent Store ROM Read Only Memory RSSI Received Signal Strength Indication Rx Receive SCO Synchronous Connection-Oriented SLC Service Level Connection SMPS Switch Mode Power Supply SPI Serial Peripheral Interface TTS Text to Speech TWC Three Way Calling Tx Transmit UI User Interface USB Universal Serial Bus VGS Volume Gain Setting © Cambridge Silicon Radio Limited 2013 Confidential Information - This material is subject to CSR‟s non-disclosure agreement BlueCore ADK Sink Application Configuration PS Key Bit Fields Application Note HMI Page 104 of 104 CS-236873-ANP2 www.csr.com