#include #include #include // Define the UUID for the beacon #define BEACON_UUID "12345678-1234-5678-1234-56789abcdef0" void setup() { Serial.begin(115200); BLEDevice::init(""); // Initialize BLE with an empty name // Create the BLE Server BLEServer *pServer = BLEDevice::createServer(); // Create the BLE Service (we use a custom UUID here) BLEService *pService = pServer->createService(BEACON_UUID); // Create a BLE Characteristic BLECharacteristic *pCharacteristic = pService->createCharacteristic( BLEUUID("12345678-1234-5678-1234-56789abcdef1"), BLECharacteristic::PROPERTY_READ ); // Set the value of the characteristic (this will be broadcasted) pCharacteristic->setValue("ESP32 Beacon"); // Start the service pService->start(); // Create the BLE Advertising object BLEAdvertising *pAdvertising = BLEDevice::getAdvertising(); pAdvertising->addServiceUUID(BEACON_UUID); pAdvertising->setScanResponse(true); // Set advertising parameters pAdvertising->setMinPreferred(0x06); // Function to change advertising interval pAdvertising->setMaxPreferred(0x12); // Function to change advertising interval // Start advertising pAdvertising->start(); Serial.println("BLE Beacon is now advertising..."); } void loop() { // Nothing to do here }