circuitpython/ports/nrf/boards/feather52832/examples/ble_scan.py

27 lines
779 B
Python

from ubluepy import Scanner, constants
def display_scan_results(scan_entries):
for e in scan_entries:
print("ADDR: ", e.addr())
print("TYPE: ", e.addr_type())
print("RSSI: ", e.rssi())
# Parse the contents of the advertising packet
scan = e.getScanData()
if scan:
for s in scan:
# Convert byte array to hex format string
hex = ' '.join('0x%02X' % b for b in s[2])
# Display enum value and hex string together
print('\t{}: {}'.format(s[1], hex))
# Line break between record sets
print("")
# Scan 1s for advertising devices in range
s = Scanner()
scan_res = s.scan(1000)
# Display the scan results
display_scan_results(scan_res)