Bluetooth LE Start Scanning

Kalipso - Form - Actions - Actions Description - Group Communications - Bluetooth LE Start Scanning

Starts the discovery of Bluetooth Low Energy (BLE) devices.

Action available for the following operating systems:

Parameters

Targets

  • Target for Address <unquoted string> - The control or variable where the MAC Address of the discovered device will be stored.

  • Target for Name <unquoted string> - The control or variable where the name of the discovered device will be stored.

Many Bluetooth LE devices do not return this value

  • Target for RSSI <unquoted string> - Value for the radio signal strength.

  • Target for Advertisement Element Count <unquoted string> - Number of data elements in advertisement.

  • Target for Advertisement Element Type List <unquoted string> - List of data element types in hexadecimal

The possible types values are listed in the Bluetooth SIG website: https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile

  • Target for Advertisement Element Data List <unquoted string> - Element Data in Hexadecimal

  • Separator <string> - Element separator

  • Filter Address List <string>

  • Filter Service UUID List <string>

This action starts the discovery process. When a Bluetooth device is discovered the event Bluetooth LE Device Found will be executed on the top form.

On iOS, it is not possible to obtain the raw advertisement data, so the returned advertisement data is emulated to try to make it compatible with the data returned on Android and Win10. The following mapping was done between iOS types and Bluetooth specification for the Element Type List and Element Data List parameters:

  • CBAdvertisementDataLocalNameKey -> Type(09): the data is returned as Hexadecimal representation of the UTF8 for the string

  • CBAdvertisementDataManufacturerDataKey -> Type(FF): the data is returned as Hexadecimal representation of the byte values

  • CBAdvertisementDataServiceDataKey -> Type(16): the data is returned as concatenated Hexadecimal representation of each UUID concatenated with the Hexadecimal representation of the service data

  • CBAdvertisementDataServiceUUIDsKey-> Type(07): the data is returned as concatenated Hexadecimal representation of the UUIDs

  • CBAdvertisementDataOverflowServiceUUIDsKey-> Type(06): the value is returned as concatenated Hexadecimal representation of the UUIDs

  • CBAdvertisementDataTxPowerLevelKey-> Type(0A): the data is returned as the Hexadecimal value of the RSSI

  • CBAdvertisementDataIsConnectable-> Type(01): the data is returned as the Hexadecimal value of the flag

  • CBAdvertisementDataSolicitedServiceUUIDsKey-> Type(15): the data is returned as concatenated Hexadecimal representation of the UUIDs

Last updated