# Fluoride Bluetooth Profile Tuning Suite (PTS) Test Mode This document provides commands to enable PTS test mode for Fluoride stack. We need special handling for some test cases as they are not applicable for the Fluoride stack. ## PTS Test Mode system property Profile services in packages/apps/Bluetooth uses system property `persist.bluetooth.pts` to check if the PTS test mode is enabled. To enable it: ```sh adb shell setprop persist.bluetooth.pts true ``` To disable it: ```sh adb shell setprop persist.bluetooth.pts false ``` ### Current use case - In `newavrcp`, we send active player update to remote device only in PTS test mode (AVRCP/TG/MPS/BV-05-C AVRCP/TG/MPS/BV-07-C). ## PTS Helpers in stack config Native stack also requires some special handling, and the config is stored in `conf/bt_stack.conf`. To enable a flag, uncomment the corresponding line and push the config file to `/etc/bluetooth/` in IUT. ### Current use case - `PTS_SecurePairOnly` enables secure connections only mode. - `PTS_DisableConnUpdates` disables LE Connection updates. - `PTS_DisableSDPOnLEPair` disables BR/EDR discovery after LE pairing to avoid cross key derivation errors. - `PTS_SmpOptions` sets SMP Pair options (formatted as hex bytes) `auth, io, ikey, rkey, ksize`. - `PTS_AvrcpTest` enables AVRCP test mode. The UID is set to 0xffffffffffffffff in `TrackChangedNotificationResponse` (AVRCP/TG/NFY/BV-04-C). - `PTS_SmpFailureCase` enables handling for various SMP failure cases.