This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Is there a serial port profile for BLE?

Is there any equivalent to the SPP profile from Bluetooth Classic? I've always used this as a way to transmit custom data using Bluetooth, but I can't seem to find anything equivalent for BLE.

Parents
  • No, there isn't really any SPP equivalent. However, with BLE, it is important to understand that all the profile and service support is entirely in the application space. This is opposed to the situation in Bluetooth Classic, where it seems to me that all profiles used in the application actually had to be natively supported by the stack used.

    This means that with BLE, there isn't really a need for a serial port service to transmit custom data, since you can easily make your custom service, that is specially tailored for the data your application needs to transfer. This avoids the need for cramming all kinds of data into serial packages, and most often this leads to much cleaner data handling strategies and hence applications.

    We're working on an application note explaining how to build a custom service for the S110, and I'll add a link here as soon as it's published. For now, I'd recommend taking a look at the battery service (ble_bas.c, ble_bas.h), and trying to understand it at least partially and building from there.

    Edit: The application note is now out; nAN-36.

  • Very useful information. However - one of the reasons SPP is so attractive is on the host side (PC, smartphone,,): Here you don't need to use and know special libraries to get connected to SPP. Its the usually well known serial port library which is supported in all compilers and languages.

    Can you comment what is needed on the host side for this BLE solution? I know this may be too broad a scope to answer. Personally I am in Windows.

    Will this aspect be mentioned in the upcoming app note?

Reply
  • Very useful information. However - one of the reasons SPP is so attractive is on the host side (PC, smartphone,,): Here you don't need to use and know special libraries to get connected to SPP. Its the usually well known serial port library which is supported in all compilers and languages.

    Can you comment what is needed on the host side for this BLE solution? I know this may be too broad a scope to answer. Personally I am in Windows.

    Will this aspect be mentioned in the upcoming app note?

Children
No Data
Related