Understanding the Relationship between Phone Amego and Bluetooth

Phone Amego is a client application that uses the Bluetooth networking stack to access Bluetooth services running on a remote server. This is similar to the way Safari uses the TCP/IP networking stack to access Internet services. Among these services is a “HandsFree Audio Gateway” which routes call audio to the default input and output devices selected in the Sound Preferences panel. Under Mavericks, Phone Amego doesn’t process this audio itself, it just enables the corresponding network service. Prior to Mavericks, Phone Amego would route the call audio from the Bluetooth audio driver to the selected audio devices.

Apple Feedback

As a Phone Amego user, you are in a unique position to understand the limits of Apple’s Bluetooth implementation and how it could be improved. Over the past 3 years, I have published a number of your suggestions that Apple has gradually accommodated (whether by influence or accident). Examples include:

(1) Allow a way to use Phone Amego and a Bluetooth headset at the same time. Starting in iOS7 the iPhone can connect with two HandsFree devices at the same time.

(2) Provide echo cancellation support for Bluetooth audio clients. Starting in OS X Mavericks, the Voice Processing Audio Unit from iOS has been integrated with IOBluetoothHandsFreeDevice on OS X. Unfortunately it doesn’t work reliably in many situations causing uncontrolled audio artifacts (screeching).

(3) Allow accessing recent call records via Bluetooth to see or return calls. Starting in iOS6 this is available through the Bluetooth Phone Book Access Profile (PBAP).

(4) Allow SMS notification via Bluetooth. Starting in iOS6 this is available through the Bluetooth Message Access Profile (MAP).

I believe Apple pays a great deal of attention to its customers. At the time of this writing, Phone Amego has around 5000 customers. With appreciation for all that has been accomplished, I’d like to explore a few more customer requests.

Dear Apple

While Mac to iPhone integration is cool, there are still some pieces missing:

(1) No way to send SMS via Bluetooth (which is commonly available as part of the Message Access Profile). I have been in contact with dozens of users who expect this to work and are disappointed to learn it is not supported by iPhone. Apple needs to hear from hundreds (or thousands?) of customers who want this feature. Requests from numerous developers has not been enough.


(2) Tools like Phone Amego want to keep a Call Log and SMS Log regardless of whether the iPhone is in Bluetooth proximity at the time of the event. The Bluetooth PBAP (Phone Book Access Profile) allows retrieving recent calls. Bluetooth MAP allows notification and retrieval of incoming messages while a MAP client is connected, but doesn’t allow reviewing recent messages as might be expected from the “inbox”.

(3) No handsfree way to enable the iPhone's built-in speakerphone via Bluetooth.  Kind of ironic since the point of a speakerphone is to allow handsfree operation. Instead of routing the call audio via Bluetooth SCO and Mac OS X Core Audio to the Macs speaker and microphone it might often work better to just allow a Bluetooth client to turn on the speakerphone already built-in to the iPhone. This is standard on most SIP phones. Answering the phone by remote control uses the built-in Speakerphone.

(4) Supporting the SPP (Serial Port Profile) directly would be a more robust and reliable solution for keeping audio on the phone. Since HFP is built adopt SPP, it requires removing a small amount of functionality in this mode.

I understand Apple will finally support iPhone integration in OS X Yosemite (Fall 2014) using WiFi to provide a more reliable solution. While I’m glad customers will finally get part of the solution they are looking for, it’s unfortunate that after 4 years so much still doesn’t work right. I’d love to help any way I can.

Respectfully Submitted,

Peter Sichel
Sustainable Softworks