* Fix of the issue that incoming call triggered
handsfree ringing which didn't stop after
calling side hung up.
* Cleanup of several places in code, minor
bluetooth <-> cellular integration refactor.
Now, both profiles can operate separately. Additonally, minor
fixes has been applied to allow calling via car audio system.
Some infotainment systems still don't work though.
Reworked AppSettings handling of BT devices to be prepared for
handling the HFP profile, eliminating by the way few bugs and
speeding up the flow (by getting rid of few refreshes).
Added unit tests for handling the BT devices flow
Some devices were giving different results after querying for
Class of Device (CoD) and our filters were too restrictive.
Now filtering only take place at pairing, so every suitable
device can be connected
Due to wrong logic, all devices were disconnecing during unparing
Now, the disconnecting is performed only when the unpaired devices
is the connected one
Added HSP ring sound on incoming call event while
there's bluetooth connection active and HSP is
selected as the current profile.
Possibility of pick up/decline the call using
BT device buttons added.
Slightly changed HSP initialization according
to the UML-s added.
Changed call hangup handler in service cellular.
Bluetooth device volume control can be set by Pure Phone
while paired and is in A2DP mode. Temporarly disabled
HSP since it's not fully working and causing control issues.
Add basic playback capability using Bluetooth A2DP profile.
Only stereo/44100/16bit files are supported at the moment
Signed-off-by: Marcin Smoczyński <smoczynski.marcin@gmail.com>
To be able to connect to the BT device with more than one audio
profile, we need something to manage those profiles. Created here
ProfileManager made it convenient
To be able to work properly with BT, CPU freq has to be at least
at Level_5 - to be fixed!