Skip to content

Commit 1b7abdc

Browse files
committed
add multiple OR uuid support for BLEScanner
1 parent 2f79e78 commit 1b7abdc

File tree

2 files changed

+22
-2
lines changed

2 files changed

+22
-2
lines changed

libraries/Bluefruit52Lib/src/BLEScanner.cpp

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,9 +234,25 @@ void BLEScanner::filterRssi(int8_t min_rssi)
234234

235235
void BLEScanner::filterUuid(BLEUuid ble_uuid)
236236
{
237-
if ( _filter_uuid == NULL ) _filter_uuid = new BLEUuid();
237+
filterUuid(&ble_uuid, 1);
238+
}
239+
240+
void BLEScanner::filterUuid(BLEUuid ble_uuid1, BLEUuid ble_uuid2)
241+
{
242+
BLEUuid bleuuid[] = {ble_uuid1, ble_uuid2};
243+
filterUuid( bleuuid , 2);
244+
}
238245

239-
(*_filter_uuid) = ble_uuid;
246+
void BLEScanner::filterUuid(BLEUuid ble_uuid1, BLEUuid ble_uuid2, BLEUuid ble_uuid3)
247+
{
248+
BLEUuid bleuuid[] = {ble_uuid1, ble_uuid2, ble_uuid3};
249+
filterUuid( bleuuid , 3);
250+
}
251+
252+
void BLEScanner::filterUuid(BLEUuid ble_uuid1, BLEUuid ble_uuid2, BLEUuid ble_uuid3, BLEUuid ble_uuid4)
253+
{
254+
BLEUuid bleuuid[] = {ble_uuid1, ble_uuid2, ble_uuid3, ble_uuid4};
255+
filterUuid( bleuuid , 4);
240256
}
241257

242258
void BLEScanner::filterUuid(BLEUuid ble_uuid[], uint8_t count)

libraries/Bluefruit52Lib/src/BLEScanner.h

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,11 @@ class BLEScanner
6161
void filterRssi(int8_t min_rssi);
6262
void filterMSD(uint16_t manuf_id);
6363

64+
6465
void filterUuid(BLEUuid ble_uuid);
66+
void filterUuid(BLEUuid ble_uuid1, BLEUuid ble_uuid2);
67+
void filterUuid(BLEUuid ble_uuid1, BLEUuid ble_uuid2, BLEUuid ble_uuid3);
68+
void filterUuid(BLEUuid ble_uuid1, BLEUuid ble_uuid2, BLEUuid ble_uuid3, BLEUuid ble_uuid4);
6569
void filterUuid(BLEUuid ble_uuid[], uint8_t count);
6670

6771
void clearFilters(void);

0 commit comments

Comments
 (0)