Sending and Receiving

Ensure your device works with this simple test.

Receive iBeacon advertisements
 1# SPDX-FileCopyrightText: 2017 Scott Shawcroft, written for Adafruit Industries
 2# SPDX-FileCopyrightText: Copyright (c) 2022 Alec Delaney for Adafruit Industries
 3#
 4# SPDX-License-Identifier: Unlicense
 5
 6import time
 7from adafruit_ble import BLERadio
 8from adafruit_ble_beacon import iBeaconAdvertisement
 9
10ble = BLERadio()
11
12while True:
13    for entry in ble.start_scan(iBeaconAdvertisement, minimum_rssi=-120, timeout=3):
14        print("Beacon Power", entry.beacon_tx_power)
15        print("UUID:", entry.uuid)
16        print("Major", entry.major)
17        print("Minor:", entry.minor)
18        print("Distance:", entry.distance)
19        time.sleep(1)
20    time.sleep(3)
Send iBeacon advertisements
 1# SPDX-FileCopyrightText: 2017 Scott Shawcroft, written for Adafruit Industries
 2# SPDX-FileCopyrightText: Copyright (c) 2022 Alec Delaney for Adafruit Industries
 3#
 4# SPDX-License-Identifier: Unlicense
 5
 6import time
 7from adafruit_ble import BLERadio
 8from adafruit_ble_beacon import iBeaconAdvertisement
 9
10ble = BLERadio()
11
12advertisement = iBeaconAdvertisement()
13advertisement.uuid = b"CircuitPython123"
14advertisement.major = 1
15advertisement.minor = 32
16advertisement.beacon_tx_power = -80
17
18while True:
19    ble.start_advertising(advertisement)
20    time.sleep(10)
21    ble.stop_advertising()
22    time.sleep(3)