Class BLEScan
- class BLEScan
Description
A class used for managing BLE scanning settings.
Syntax
class BLEScan
Members
Public Constructors |
---|
No public constructor is available as this class is intended to be a singleton class. You can get a pointer to this class using BLEDevice::configScan |
Public Methods |
|
---|---|
BLEScan::updateScanParams |
Update the current BLE advertisement settings to the lower Bluetooth stack |
BLEScan::startScan |
Start a BLE scan |
BLEScan::stopScan |
Stop a BLE scan |
BLEScan::setScanMode |
Set the BLE scanning mode |
BLEScan::setScanInterval |
Set the BLE scanning interval |
BLEScan::setScanWindow |
Set the BLE scanning window |
BLEScan::setScanDuplicateFilter |
Set the BLE scan duplicate filter |
BLEScan::scanInProgress |
Check if a scan is currently in progress |
BLEScan::printScanInfo |
Print out scanned information |
- BLEScan::updateScanParams
Description
Update the lower Bluetooth stack with the current scan settings.
Syntax
void updateScanParams(void);
Parameters
The function requires no input parameter.
Returns
The function returns nothing.
Example Code
Example: BLEScan
Notes and Warnings
Stop any scans in progress first before using this function.
- BLEScan::startScan
Description
Start BLE scanning.
Syntax
void startScan();
void startScan(uint32_t scanDuration_ms);
Parameters
scanDuration
: BLE scan will stop after scanDuration milliseconds.
Returns
The function returns nothing.
Example Code
Example: BLEScan
Notes and Warnings
Set the scan parameters first before starting a scan. BLE scans will occur continuously for the duration set with BLEDevice::setScanWindow() and will repeat with a time interval set with BLEDevice::setScanInterval(). Call this member function without an argument to start scanning until BLEDevice::stopScan() is called.
- BLEScan::stopScan
Description
Stop BLE scanning.
Syntax
void stopScan(void);
Parameters
The function requires no input paramter.
Returns
The function returns nothing.
Example Code
NA
Notes and Warnings
NA
- BLEScan::setScanMode
Description
Set the BLE scan mode.
Syntax
void setScanMode(uint8_t scanMode);
Parameters
scanMode
: GAP_SCAN_MODE_PASSIVE for passive scanning, GAP_SCAN_MODE_ACTIVE for active scanning
Returns
The function returns nothing.
Example Code
Example: BLEScan
Notes and Warnings
Active scanning will request for scan response packets after discovering an advertising device. Passive scanning will only capture advertising data packets.
- BLEScan::setScanInterval
Description
Set the BLE scan interval.
Syntax
void setScanInterval(uint16_t scanInt_ms);
Parameters
scanInt_ms
: scan interval in milliseconds. Value range of 3 to 10240.
Returns
The function returns nothing.
Example Code
Example: BLEScan
Notes and Warnings
A BLE scan will repeat with a time interval set with this member function.
- BLEScan::setScanWindow
Description
Set the BLE scan window.
Syntax
void setScanWindow(uint16_t scanWindow_ms);
Parameters
scanWindow_ms
: scan window in milliseconds. Value range of 3 to 10240.
Returns
The function returns nothing.
Example Code
Example: BLEScan
Notes and Warnings
A BLE scan will scan continuously for a window duration set with this member function. The scan window should be less than or equal to the scan interval.
- BLEScan::setScanDuplicateFilter
Description
Set the scan duplicate filter.
Syntax
void setScanDuplicateFilter(bool dupeFilter);
Parameters
dupeFilter
: TRUE to enable duplicate filtering.
Returns
The function returns nothing.
Example Code
NA
Notes and Warnings
Enabling duplicate filters will ignore scan results for devices already discovered previously.
- BLEScan::scanInProgress
Description
Set the scan duplicate filter.
Syntax
bool scanInProgress(void);
Parameters
The function requires no input paramter.
Returns
TRUE if BLE scanning is in progress.
Example Code
NA
Notes and Warnings
NA
- BLEScan::printScanInfo
Description
Parse and print out scanned information.
Syntax
void printScanInfo(T_LE_CB_DATA* p_data);
Parameters
p_data
: pointer to scan data of type T_LE_CB_DATA*
Returns
The function returns nothing.
Example Code
Example: BLEScan
Notes and Warnings
Use this member function to parse the various fields of received advertisement data packets and print the results out to the serial monitor.