Things to support

HFP spec is rather painful to implement as there is a lot of stuff mandatory. As per HFP 1.5 the following list of items are mandatory.

1. Connection management

Service Level Connection establishment 4.2

Service Level Connection release 4.3

2. Phone status information

Transfer of Registration Status 4.4

Transfer of Signal Strength Indication 4.5

Transfer of Roaming Status Indication 4.6

Transfer of Battery Level Indication 4.7

Query of Operator Selection 4.8

Extended Audio Gateway Error Codes 4.9

Transfer of Call, Call Setup and Call Held 4.10 Status

3. Audio Connection handling

Audio Connection set up 4.11

Audio Connection release 4.12

4 Accept an incoming voice call

Answer an incoming call 4.13

6. Terminate a call

Terminate a call process 4.15

7. Audio Connection transfer during an ongoing call

Audio Connection transfer towards the HF 4.16

Audio Connection transfer towards the AG 4.17

8. Place a call with a phone number supplied by the HF

Place a call with the phone number supplied by the HF 4.18

9. Place a call using memory dialing

Memory dialing from the HF 4.19

10. Place a call to the last number dialed

Last number re-dial from the HF 4.20

11. Call waiting notification

Call waiting notification activation 4.21

13. Calling Line Identification (CLI)

Calling Line Identification (CLI) notification 4.23

17. Ability to transmit DTMF codes

Transmit DTMF code 4.27

20. Subscriber Number Information

Subscriber Number Information 4.30

21a. Enhanced Call Status

Query Call List 4.31

Indication of Held Call Status 4.31

Required interfaces with other subsystems to support HFP features

  • Telephony subsystem: for most of the call related features
  • Power Management Unit: for Battery Level