From d6869d1ec4bd24cd2c3eafa534f0849b25ec5607 Mon Sep 17 00:00:00 2001 From: Clyne Sullivan Date: Thu, 28 Feb 2019 17:04:22 -0500 Subject: added basic code --- .../examples/Central/central_scan/central_scan.ino | 73 ++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100755 arduino/libraries/Bluefruit52Lib/examples/Central/central_scan/central_scan.ino (limited to 'arduino/libraries/Bluefruit52Lib/examples/Central/central_scan') diff --git a/arduino/libraries/Bluefruit52Lib/examples/Central/central_scan/central_scan.ino b/arduino/libraries/Bluefruit52Lib/examples/Central/central_scan/central_scan.ino new file mode 100755 index 0000000..191f978 --- /dev/null +++ b/arduino/libraries/Bluefruit52Lib/examples/Central/central_scan/central_scan.ino @@ -0,0 +1,73 @@ +/********************************************************************* + This is an example for our nRF52 based Bluefruit LE modules + + Pick one up today in the adafruit shop! + + Adafruit invests time and resources providing this open source code, + please support Adafruit and open-source hardware by purchasing + products from Adafruit! + + MIT license, check LICENSE for more information + All text above, and the splash screen below must be included in + any redistribution +*********************************************************************/ + +#include + +void setup() +{ + Serial.begin(115200); + while ( !Serial ) delay(10); // for nrf52840 with native usb + + Serial.println("Bluefruit52 Central Scan Example"); + Serial.println("--------------------------------\n"); + + // Initialize Bluefruit with maximum connections as Peripheral = 0, Central = 1 + // SRAM usage required by SoftDevice will increase dramatically with number of connections + Bluefruit.begin(0, 1); + + // Set max power. Accepted values are: -40, -30, -20, -16, -12, -8, -4, 0, 4 + Bluefruit.setTxPower(4); + Bluefruit.setName("Bluefruit52"); + + // Start Central Scan + Bluefruit.setConnLedInterval(250); + Bluefruit.Scanner.setRxCallback(scan_callback); + Bluefruit.Scanner.start(0); + + Serial.println("Scanning ..."); +} + +void scan_callback(ble_gap_evt_adv_report_t* report) +{ + Serial.println("Timestamp Addr Rssi Data"); + + Serial.printf("%09d ", millis()); + + // MAC is in little endian --> print reverse + Serial.printBufferReverse(report->peer_addr.addr, 6, ':'); + Serial.print(" "); + + Serial.print(report->rssi); + Serial.print(" "); + + Serial.printBuffer(report->data.p_data, report->data.len, '-'); + Serial.println(); + + // Check if advertising contain BleUart service + if ( Bluefruit.Scanner.checkReportForUuid(report, BLEUART_UUID_SERVICE) ) + { + Serial.println(" BLE UART service detected"); + } + + Serial.println(); + + // For Softdevice v6: after received a report, scanner will be paused + // We need to call Scanner resume() to continue scanning + Bluefruit.Scanner.resume(); +} + +void loop() +{ + // nothing to do +} -- cgit v1.2.3