Bluetooth Profile Tutorial - SPP
Just in case you didn’t notice, the Bluetooth specification is a huge spec. It’s over 1000 pages and covers alot of topics including advanced frequency hopping, low power states, communication parameters, and a whole bunch of other stuff. So, as I work on “Bluetooth for Java, 2ed”, I thought that it would be a good idea to create a tutorial on what all the profiles are, and what do they do. So let’s get started!
Profile Name: Serial Port Profile
Abbreviation: SPP
UUID: 0×1101
Description: The Serial Port Profile (SPP) is a profile that interacts directly with the RFCOMM layer in the Bluetooth protocol stack, and it’s one of the most commonly used profiles since the inception of Bluetooth. If you have an electronic device has has a serial port, or is capable of processing raw byte streams, then SPP would be a good choice if you wanted to wirelessly-enable that device. On a Bluetooth-enabled computer, this profile is used to create a virtual serial port, so that applications on the PC can communicate to wireless Bluetooth devices as if they were directly connected over an actual serial port. From an application developer’s perspective, using the SPP is very easy to do since there’s no protocol overhead that you have to follow - just send and receive byte streams.
Common Implementations: RS232 to Bluetooth converters, Bluetooth GPS devices, mobile phones, desktop computers