Feasycom FSC-Blueware User Manual

Bluetooth portable stack
Table of Contents

Advertisement

Bluetooth portable stack user guide
Version 2.8
1

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the FSC-Blueware and is the answer not in the manual?

Questions and answers

Summary of Contents for Feasycom FSC-Blueware

  • Page 1 Bluetooth portable stack user guide Version 2.8...
  • Page 2 Copyright © 2013-2018 Feasycom Technology Co., Ltd. All Rights Reserved. Revision History Version Data Notes Author Contact Us: Shenzhen Feasycom Technology Co., Ltd Web: www.feasycom.com Email:support@feasycom.com Tel: +86-755-27924639,+86-755-23062695 Address: Room 2004-2005,20 Floor, Huichao Technology Building, Jinhai Road, Xixiang, Baoan District, Shenzhen,518100, China.
  • Page 3: Table Of Contents

    Contents Introduction ..............................6 1.1. Context ............................6 1.2. Terms ............................... 6 1.3. Supported Bluetooth Profile ....................7 1.4. Command Format ........................7 1.5. Indication Format ........................8 1.6. Default Settings .......................... 8 Command Table ............................. 9 2.1. General Commands ........................9 2.1.1.
  • Page 4 2.3.3. Release A2DP Connection ..................19 2.3.4. Read/Write AVRCP Configuration ................ 20 2.3.5. Track Play/Pause ......................20 2.3.6. Track Play ......................... 20 2.3.7. Track Pause ........................20 2.3.8. Track Stop ......................... 21 2.3.9. Track Forward ........................ 21 2.3.10. Track Backward ......................21 2.3.11.
  • Page 5 3.3.3. AVRCP State ........................29 3.3.4. Media Player State ......................29 3.3.5. Media Player Play Progress ..................30 3.3.6. Media Track Information ..................30 3.4. Phonebook Access Indications..................30 3.4.1. PB State ..........................30 3.4.2. PB Entries of Remote Devices ................. 31 3.4.3.
  • Page 6: Introduction

    Bluetooth profiles, such as HFP/HSP, A2DP, AVRCP, PBAP, HID, SPP, iAP, BLE-GATT and etc. The FSC-Blueware is written in C/C++ language, which makes it easily to be integrated with various posix system, such as Linux, Android, QNX, WinCE and so on.
  • Page 7: Supported Bluetooth Profile

     Module will always report command’s execution result using “OK” for success or “ERR<code>” for failure Error Code Meaning Failed Invalid Parameter Invalid State Command Mismatch Busy Not Supported No Memory Others Reserved for Future Use e.g. 1. Read module’s BR/EDR local name << AT+NAME >> +NAME=Feasycom...
  • Page 8: Indication Format

    2. Pick up an incoming call when no call incoming actually << AT+HFPANSW >> ERR003 1.5. Indication Format <CR><LF>+ Indication {=Param1{, Param2{, Param3...}}} <CR><LF>  All indications start with <CR><LF>, end with <CR><LF>  If indication has parameter, parameter keep behind “=” ...
  • Page 9: Command Table

    2. Command Table 2.1. General Commands 2.1.1. AT Command Test Format: AT Response: OK Description: Test the communication between HOST and Module after power on, UART baudrate changed and etc. Example: AT command test << >> 2.1.2. Bluetooth Profile Selection <configurable>...
  • Page 10: Read Firmware Version

    Controller and Target cannot be enabled both because of mutual exclusion. Module will soft reboot if profile selection changed Example: Read current profile selection << AT+PROFILE >> +PROFILE=1195 Example: Enable SPP, GATT Server, HFP Source, A2DP Source profile, disable the others <<...
  • Page 11: Read Ble Mac Address

    Response: +NAME=Param Description: Write local name if parameter existence, otherwise read current local name Example: Read current BR/EDR local name << AT+NAME >> +NAME=Feasycom >> Example: Change module’s BR/EDR local name to “ABC” << AT+NAME=ABC >> Example: Change module’s BR/EDR local name to “ABC” and enable suffix <<...
  • Page 12: Read/Write Ble Local Name

    2.1.7. Read/Write BLE Local Name <configurable> Format: AT+LENAME {=Param1{, Param2}} Param1: BLE local name (1~25 Bytes ASCII, default: FSC-BT90X-LE) Param2: MAC address suffix (0/1, default:0) (0) Disable suffix (1) Enable suffix “-XXXX” (lower 4 bytes of MAC address) after local name Response: +LENAME=Param 2.1.8.
  • Page 13: Accept/Reject Remote Pairing Request

    Response: +SSP=Param 2.1.10. Accept/Reject Remote Pairing Request Format: AT+CFM=Param1, Param2 Param1: 12 Bytes MAC address of remote device Param2: 0/1 (0) Reject remote pairing request (1) Accept remote pairing request Description: Only used for pairing request in pairing mode 3, see AT+SSP 2.1.11.
  • Page 14: Read/Write Trust Device List Size

    >> +PLIST=1,32808,1C5CF226D773, iPhone +PLIST=2,40, A0BC30075421, Samsung S8 +PLIST=E >> Example: Clear module’s paired record << AT+PLIST=0 >> 2.1.13. Read/Write Trust Device List Size <configurable> Format: AT+TDL{=Param} Param:(0~8, default:0) (0) Auto mode: Latest paired record will replace the oldest one if paired list full (1~8) Limit mode: Device will not enter discoverable mode if paired list full Response: +TDL=Param 2.1.14.
  • Page 15: Soft Reboot

    2.1.16. Soft Reboot Format: AT+REBOOT Description: Module release all Bluetooth connections with remote device then reboot 2.1.17. Restore Factory Settings Format: AT+RESTORE Description: Module restore all factory settings then reboot 2.1.18. Mute/Unmute Microphone Format: AT+MICMUTE{=Param} Param: Mute (0/1, default:0) (0) Unmute microphone (1) Mute microphone Description: Only used for temporary mute/unmute microphone while call active 2.1.19.
  • Page 16: Read Hfp State

    Param: A base-10 representation of a bit field, default:3, for each bit: BIT[0] Auto reconnect to last device after power on BIT[1] NREC (Noise reduction and echo cancelling) function enable BIT[2] HFP 3-way-calling function enable Example: Read HFP configuration << AT+HFPCFG >>...
  • Page 17: Release Hfp Connection

    Example: Connect to last HFP device << AT+HFPCONN >> Example2: Connect to specific HFP device with MAC address << AT+HFPCONN=1C5CF226D773 >> 2.2.4. Release HFP Connection Format: AT+HFPDISC Description: Release current HFP connection with remote device 2.2.5. Dial/Redial Phone Number Format: AT+HFPDIAL{=Param} Param: Phone number (1~25 Bytes ASCII) Description: Dial specific number if parameter existence, otherwise redial Example: Redial...
  • Page 18: Pick Up Incoming Call

    2.2.7. Pick Up Incoming Call Format: AT+HFPANSW Description: Pick up an incoming call 2.2.8. Reject/Hung up Call Format: AT+HFPCHUP Description: Reject incoming call or hung up outgoing/active call 2.2.9. Three way calling control Format: AT+ HFPMCAL=Param Param: Control (0~2) (0) Release held call or reject waiting call (1) Release active call and accept another call (2) Hold active call and accept another call Description: User need to turn on 3-way-calling function use command AT+HFPCFG...
  • Page 19: A2Dp/Avrcp Commands

    2.3. A2DP/AVRCP Commands 2.3.1. Read A2DP State Format: AT+A2DPSTAT Response: +A2DPSTAT=Param Param:(0~5) (0) Unsupported (1) Standby (2) Connecting (3) Connected (4) Paused (5) Streaming 2.3.2. Establish A2DP Connection Format: AT+A2DPCONN{=Param} Param: MAC address of target device (12 Bytes ASCII) Description: Module will reconnect to last A2DP device if no parameter exist Example: Connect to last A2DP device <<...
  • Page 20: Read/Write Avrcp Configuration

    2.3.4. Read/Write AVRCP Configuration Format: AT+AVRCPCFG{=Param} Param: A base-10 representation of a bit field, default:3, for each bit: BIT[0] Auto get track ID3 information (title, artist, album) on track changed.default:1 BIT[1-3] Auto get track state (play progress) if value > 0. default:1 second BIT[4] Browsing function enable/disable Example: Read AVRCP configuration <<...
  • Page 21: Track Stop

    Description: Send pause command to remote media player 2.3.8. Track Stop Format: AT+STOP Description: Send stop command to remote media player 2.3.9. Track Forward Format: AT+FORWARD Description: Send forward command to remote media player 2.3.10. Track Backward Format: AT+BACKWARD Description: Send backward command to remote media player 2.3.11.
  • Page 22: Get Folder/Media Item

    2.3.13. Get Folder/Media Item Format: AT+GETFD Description: List sub folders or media items in current folder 2.3.14. Select Folder/Media Item Format: AT+SETFD=Param Param: Folder/Media Item index, (0) Go to up level folder (other) Enter selected folder or play selected item Description: 2.4.
  • Page 23: Spp Commands

    2.5. SPP Commands 2.5.1. Read SPP State Format: AT+SPPSTAT Response: +SPPSTAT=Param Param:(0~3) (0) Unsupported (1) Standby (2) Connecting (3) Connected 2.5.2. Establish SPP Connection Format: AT+SPPCONN=Param Param: MAC address of target device (12 Bytes ASCII) 2.5.3. Release SPP Connection Format: AT+SPPDISC Description: Release current SPP connection with remote device 2.5.4.
  • Page 24: Gatt Commands

    2.6. GATT Commands 2.6.1. Read GATT State Format: AT+GATTSTAT Response: +GATTSTAT=Param Param:(0~3) (0) Unsupported (1) Standby (2) Connecting (3) Connected 2.6.2. Release GATT Connection Format: AT+GATTDISC Description: Release current GATT connection with remote device 2.6.3. Send Data Via GATT Format: AT+GATTSEND=Param1, Param2 Param1: Payload length (1~492) Param2: Payload (1~492Bytes UTF8) Example: Send data “1234567890”...
  • Page 25: Indication Table

    3. Indication Table 3.1. General Indications 3.1.1. Device State Format: +DEVSTAT=Param Param: A base-10 representation of a bit field, for each bit: BIT[0] 0: Power Off; 1: Power On BIT[1] 0: BR/EDR Non Discoverable; 1: BR/EDR Discoverable BIT[2] 0: BLE Non Advertising; 1: BLE Advertising BIT[3] 0: BR/EDR Non Scanning;...
  • Page 26: Pair Request

    +SCAN=E 3.1.3. Pair Request Format: +PAIRREQ=Param1, Param2{, Param3} Param1: Passkey (000000~999999) Param2: MAC address (12 Bytes ASCII) of current pairing device Param3: Name of current pairing device 3.1.4. Pair Result Format: +PAIRED=Param1, Param2 Param1: Pair result (0) Success (1~255) Failed Param2: MAC address (12 Bytes ASCII) of current pairing device 3.1.5.
  • Page 27: Hfp Device Information

    (4) Outgoing call (5) Incoming call (6) Active call (7) Active held (3-way-calling) (8) First call active, second call waiting (3-way-calling) (9) First call active, second call held (3-way-calling) (10) First call outgoing, second call held (3-way-calling) Param2: Call number, only present for state > 3 Example: Dial number 10086 <<...
  • Page 28: Hfp Device Network Operator Selection

    Param:(0~5) Network signal strength of remote device 3.2.5. HFP Device Network Operator Selection Format: +HFPNET=Param Param:(UTF8) Network operator selection of remote device 3.2.6. HFP Device Roaming State Format: +HFPROAM=Param Param:(0/1) Roaming state of remote device 3.2.7. HFP Device Battery Level Format: +HFPBATT=Param Param:(0~5) Battery level of remote device 3.2.8.
  • Page 29: A2Dp/Avrcp Indications

    Description: Report whether the current connected phone support in-band ringtone or not when an incoming call established 3.3. A2DP/AVRCP Indications 3.3.1. A2DP State Format: +A2DPSTAT=Param Param:(0~5) (0) Unsupported (1) Standby (2) Connecting (3) Connected (4) Paused (5) Streaming 3.3.2. A2DP Device Information Format: +A2DPDEV=Param1, Param2 Param1: (12 Bytes ASCII), Remote device’s MAC address of current A2DP connection Param2: (UTF8), Remote device’s name of current A2DP connection...
  • Page 30: Media Player Play Progress

    Param:(0~4) (0) Stopped (1) Playing (2) Paused (3) Fast Forwarding (4) Fast Rewinding 3.3.5. Media Player Play Progress Format: +TRACKSTAT=Param1, Param2, Param3 Param1:(0~4), Media Player State Param2:( Decimal ASCII), Elapsed time of current track in second Param3:( Decimal ASCII), Total time of current track in second Example: Read media player play progress every 1s >>...
  • Page 31: Pb Entries Of Remote Devices

    (1) Standby (2) Connecting (3) Connected (4) Downloading 3.4.2. PB Entries of Remote Devices Format: +PBCNT=Param Param: Phonebook entries of remote device 3.4.3. Received Phonebook Data Format1: +PBDATA=Param1 <FF> Param2 <FF> Param3 {<FF> Param4} Param1: Type (0) Phonebook (SIM Storage) (1) Phonebook (Phone Storage) (2) Received call log (3) Dialed call log...
  • Page 32: Spp Indications

    << AT+PBDOWN=3,10 >> +PBDATA=3 <FF> China Mobile <FF> 10086 <FF> 20171013T103516 +PBDATA=3 <FF> Jerry <FF> 18688967507 <FF> 20171012T152826 …… +PBDATA=E 3.5. SPP Indications 3.5.1. SPP State Format: +SPPSTAT=Param Param:(0~3) (0) Unsupported (1) Standby (2) Connecting (3) Connected 3.5.2. SPP Received Data Format: +SPPDATA=Param1, Param2 Param1: Payload length Param2: Payload...
  • Page 33: Gatt Indications

    3.6. GATT Indications 3.6.1. GATT State Format: +GATTSTAT=Param Param:(0~3) (0) Unsupported (1) Standby (2) Connecting (3) Connected 3.6.2. GATT Received Data Format: +GATTDATA=Param1, Param2 Param1: Payload length Param2: Payload Example: Received data “1234567890” from remote device via GATT << +GATTDATA=10,1234567890...

Table of Contents