I just got started in developing with bluetooth for android, and I keep wondering why are there so many bluetooth profiles and why are they useful?
If the whole purpose of bluetooth communication is to send messages (bits) back and forth, shouldn't the core bluetooth stack have a standardized way of doing it without the need for different profiles that work with different types of data. I mean...data is just streams of bits.
I am working with the bluetooth health device profile (HDP) which not all bluetooth stacks implement. But those that do implement it (like bluez) pass me streams of bits. For those that do not support HDP, I tried to listen using a more generic profile like SPP, but I can't get the data... why?