Esp32 ble client. My issue is that the callback is never called.

Hello! I have been working on connecting one BLE client ESP32 to two ESP32 servers connected to BNO055 9DOF sensors. You can use this code as a foundation for creating your own BLE client applications. On the other hand, Apache NimBLE based stack is Bluetooth Low Energy only. We define the UUIDs as those defined in the ESP32 code. BLE Server and Client. The circuitpython documentation on BLE on an esp32 is very unclear, is what I want to do even possible? bluetooth-lowenergy. BrianAtDocumentedDesigns / BLE-SPP-Client-demo. Open the console to debug the status of the Mar 18, 2024 · I have BLE server (written in C++) which the client can read sensor data from and write commands to. This demo configures ESP32 NimBLE as a BLE client/central which connects to BLE HID servers/peripherals such as BLE mice. If the ESP32 Client does not enable BLE SPP first, or uses other device as BLE client, then the BLE client needs to listen to the notification or indication first. This API is intended to match the low-level Bluetooth BLERemoteService *getService (BLEUUID uuid); // Get a reference to a specified service offered by the remote BLE server. Lastest Changes: Update MQTT Autodiscovery to resolve Home Assistant Nov 16, 2015 · I have a user who is attempting to connect multiple BLE clients (centrals) to the same single BLE server (peripheral) hosted on the ESP32. I've tried making adjustments and hacking together other examples but so far no luck. ESP32にソフトを書き込んだらスマートフォンから操作してみましょう。ここではBLEの検証ツールとしてnRF Connect for Mobileというアプリを使います。アプリを起動後にBLEデバイスをスキャンすると、Arduinoのコードで記述したデバイス名が A ESP-BLE-MESH Provisioner can then provision the unprovisioned device and control a RGB LED representing on/off state, see example code . Dec 31, 2017 · In this video, we will use the ESP32 with integrated OLED as an internet connected Bluetooth Low Energy Client to a Heart Rate Monitor. What i'm having trouble doing however is creating an ESP32 client to connect to the BLE device. I hope you like this video. hi @frostyowned. Feb 4, 2023 · In part 2 of this tutorial we will cover the receiver for ESP32 to ESP32 communication and explore how Notify, Read and Write work with Bluetooth Low Energy This log looks like different. 6. Gspohu mentioned this issue on May 15, 2023. Verify and Uplink the script into the DOIT ESP32 Devkit V1. The client will often be an app on a phone, or in the case of ESPHome, it Sep 29, 2022 · This works exactly how I want. I'm trying to connect a single ESP32 client to multiple identical BLE motion sensors (with different addresses) at the same time and read their notification data; Arduino IDE. Feb 18, 2021 · This project is about a Ble secure server that supports multi-client through the static passkey. i am able to connect to one server and get the temp characteristic. Postby chegewara » Sun Aug 11, 2019 12:31 am. In simple terms, the server is implemented on the device providing services, usually these are the devices such as heart monitors, tags, weather stations, etc. in the other hand, an ios or android app who can connect to the esp32 via BLE and update the caracteristic. This sketch is a central mode (client) Nordic UART Service that connects automatically to a peripheral (server) Nordic UART Service. The mouse input parameters (for example, x, y, buttons) can be used to control motors, servos, and LEDs. pClient -> connect ( myDevice ); // if you pass BLEAdvertisedDevice instead of address, it will be recognized type of peer device address (public or private) Serial. cpp is an example how to restart the advertising after a client has connected, see class MyServerCallbacks: public BLEServerCallbacks line 54. Dec 17, 2021 · Then i inserted ble_gateway: and it asked for esp32_ble_tracker and i added that too. Code: Select all Starting Arduino BLE Client application BLE Advertised Device found: Name: SCE8000, Address: d7:ed:14:15:38:03, serviceUUID: 000018ff-5348-494d-414e-4f5f424c4500 Found our device! Dec 9, 2023 · This is an App (including iOS & Android) for ESP32 as well as other BLE device. 知乎专栏提供随心写作,自由表达的平台,让用户分享知识和观点。 Jun 13, 2024 · In the above diagram, the ESP32 takes the role of the BLE Peripheral, serving as the device that provides data or services. Apr 6, 2022 · Re: Multi client ble mesh. This card can be ESP32 can be used as a BLE server to support multiple BLE clients to access simultaneously. Jan 5, 2019 · BLE client 的 scan、創建和連接 一、基礎知識. A function like the following should help you configure the timeout. You can use this app to connect to ESP32 and then control the LED on DOIT ESP32 dev board. 0. String getValue (BLEUUID serviceUUID, BLEUUID characteristicUUID); // Get the value of a given characteristic at a given service. Aug 8, 2019 · In this video, I show you how to make the client-side to connect with the preselected BLE server. Your smartphone or computer acts as the BLE Controller, managing the connection and communication with the ESP32. #include "BLEDevice. println( " - Connected to server" ); // Obtain a reference to the service we are after in the remote BLE server. py build idf. Jul 31, 2019 · Re: ESP32 BLE one client connect to multiple BLE servers. void gatt_perihperal_update_connection_params(uint8_t* client_addr) {. Dec 16, 2017 · Good news! My fake Polar H7 Bluetooth heart Rate sensor works on my ESP32 using the Arduino IDE. py flash monitor BLE Data Exchange. 5MB SPIFFS partition. First, we will set up our ESP32 as a server using the BLE_server example and then we will use the Feb 19, 2024 · Here’s a Python script to automatically connect to the ESP32 BLE device from a PC. For the overview of the ESP32 Bluetooth stack architecture, follow the links below: ESP32 Bluetooth Architecture (PDF) Code examples for this API section are provided in the bluetooth/bluedroid directory of ESP-IDF examples. I have an arduino that is sending a random integer between 1 and 100 and the ESP32 is reading it. I have read the documentation ESP-IDF Programming Guide and the issue is not addressed there. This is configurable on the GATT Sever side only. May 11, 2020 · Hi, I wrote a ble multiconnection server using esp32 arduino. I plan on using ESP32 for this. Once connected, it's just something like 'char-write-cmd 0x0016 00FF0000' where 0x0016 is the characteristic and 00FF0000 is the Dec 11, 2017 · Thanks for the answers, and Yes I'm using the BLE_client examples from ESP32 BLE arduino. 2MB APP and 1. Postby chegewara » Mon Apr 11, 2022 9:59 am. The code size requires using the Huge (3MB) Partition scheme instead of the default 1. That is, the client finds a device of interest and opens a connection. In ble mesh you have 3 basic types of devices: - provisioner. Jan 26, 2022 · pClient->connect(myDevice); // if you pass BLEAdvertisedDevice instead of address, it will be recognized type of peer device address (public or private) Serial. /**. BLE Feb 2, 2018 · A word of warning: I stumbled upon this bug report, and it seemed to exactly match the symptoms I was seeing, with both BLE client and BLE server written by me and running on esp32, but it turned out to be different. Click on “Install” to install the library. Expected 0xabba1234 got 0x3ffe1800 Dec 26, 2016 · Re: how to send BLE notification to client. Sep 17, 2020 · I'm new to BLE on ESP32 and am trying to do something simple. Not a bug in the client (not disconnecting) but a bug in the server (not restarting advertising). It’s important to note that the GATT roles of client and server are independent from the GAP roles of peripheral and central. 292 -> SleepingCORRUPT HEAP: Bad head at 0x3ffe17b4. May 27, 2022 · here's the client code. Jun 14, 2017 · Espressif ESP32 Official Forum. I'll use the codes of Neil Kolban. In the Library Manager window, type ‘esp32 ble arduino’ in the search bar. void handleGAPEvent (esp_gap_ble_cb_event_t event, esp_ble_gap_cb_param_t *param); bool The rest of the configuration for the GATT Client is performed normally in the same way as the regular GATT Client example. This will open up several examples to choose from for example BLE_client, BLE_notify, BLE_server, etc. 意外と簡単です。 BLE通信は「Central」と「Peripheral」という2つのロールで構成されます。 Centralは情報を要求するデバイス(例:スマートフォンやコンピュータ)、Peripheralは情報を提供するデバイス(例:センサー、ESP32など)です。 In this comprehensive tutorial, we're diving deep into the exciting world of ESP32 and BLE (Bluetooth Low Energy) data exchange using ESP-IDF. The code provides a comprehensive example of a BLE client application, demonstrating how to scan for devices advertising a specific service, establish a connection, and interact with remote characteristics. But it would be good if ESP BLE could be client and scan for other Bluetooth devices at the same time. So far, I have been able to do a one to one connection and received the orientation and acceleration data. println(" - Connected to server"); // Obtain a Dec 22, 2017 · ble_server_example. You might want to look through the code and see if either of those I did not build any device that requiring ble central + peripheral, but i did quick and simple test with Neil Kolban's library and it works. Let us know how we can improve this page by filling in Espressif Documentation Feedback Form. 辉傍凑寻:. However you can get a list of the currently connected clients. Create a BLE Service 3. - 2x WEMOS LOLIN32 Lite (ESP32) Jun 3, 2019 · But when i call client->disconnect(); i get the following error: 22:59:36. May 5, 2021 · To my understanding, the client is suppose to automatically provision the server esp32 but that has not happened. ble_client_id (Required, ID): ID of the associated BLE client. With Bluetooth Low Energy, there are two types of devices: the server and the client. In this article, we will discuss the examples: BLE_server and then BLE_scan. The following figure illustrates this relationship in a sample BLE connection, where the peripheral device (an ESP32) is the GATT server, while the central device (a smartphone) is the GATT client. Resources Jul 19, 2017 · Re: Changing Supervision timeout on BLE. It simply sits idle doing nothing, when a device connects to the BLE server then it will flash an LED. I'm not exactly sure how to adjust my code to ESP32 BLE Client(绽甘希撬叽窘允)- 堕晕4. Still not 100% confirmed though. Espressif ESP32 Official Forum. It's worth mentioning that the advertising UUID is different to the service UUID where I connect to, so I needed a little modification, namely scan for one UUID and after connection to the BLE device server, connect to a specific service and then get the Espressif ESP32 Official Forum. Hello, I am using the the "BLEClient" example to connect to a BLE device, which works flawless. * Create a sample BLE client that connects to a BLE server and then retrieves the current. ESP32 BLE Client for the Weber iGrill mini, iGrill mini v2, iGrillv2, iGrillv202 and iGrillv3 Devices. This component provides a Bluetooth Low Energy (BLE) controller for ESPHome. My issue is that the callback is never called. At this point the GATT client, which is usually the master, initiates the pairing process by sending a Pairing Request to the slave device. By provisioning, the device joins the ESP-BLE-MESH network and its role is changed from an unprovisioned device to a node. This is a cheap card ($ 5) with the dimensions and shape of the Arduino UNO, but with the ESP32. I'm using the BLE examples The BLE software stack on the ESP32 consumes a significant amount of RAM on the device. ESP32 BLE Server for LED Control This Arduino code is designed to set up an ESP32 as a Bluetooth Low Energy (BLE) server. Arduino IDE孕察ESP32馆百,鼻熄BLE律妖街肩默牧玷、怔大赃赂募梭贞憾乡仙。. h" //BLE Server name (the other ESP32 name running the server sketch) #define bleServerName "bc1" #define connection_LED 21 /* UUID's of the service, characteristic that we want to read*/ // BLE Service static BLEUUID ServiceUUID("4fafc201-1fb5-459e-8fcc-c5c9c331914b"); // BLE state Characteristic Aug 3, 2023 · Aug 3, 2023. i need a code for one esp32 client connecting to multiple ESP32 server . Postby chegewara » Thu Aug 19, 2021 4:51 pm. - Registering BLE notification to monitor the temperature of GATT server. Create a BLE Characteristic on the Service 4. The library source for the ESP32 BLE support for Arduino. Then, go to your smartphone, open the nRF Connect app from Nordic, and start scanning for new devices. This is dead simple using gatttool on Linux. To verify and uplink the script, press the “up arrow” icon found below: Once the code is uplinked, you will receive the message “ Uplink done ” in the terminal log of the Zerynth Studio. The node has a Configuration Server model and a Generic OnOff Client model, see example code . It includes functions for converting data types, managing UUIDs, and Sep 9, 2022 · Answers checklist. Thanks. In Part 1 first some BLE basics are discussed and then focuses on the BLE Server ESP32 BLE client for XIaomi Mi Flora Plant sensors using ESPHome. The WiFi services tested were simple WebServer, simple NTP client and a Telnet Server. No problems there, even though I suspect my code isn't 'that pretty. This sketch will connect to your BLE uart device in the same manner the nRF Connect app does. In the library manager, search for “BLE” and click on the “BLE” entry that appears. Meanwhile, it can also be used as a BLE client to connect to multiple BLE servers simultaneously. About. The role of GATT server: - Receive the Write command of GATT client and convert it to LED state. 勾卦害锨 鼻演幔桩. BLE code is now included in Arduino directly. In this implementation, a single ESP32 working as a GATT client connects to three different GATT servers at the same time. Would anyone kindly guide me in the right direction. However @nkolban did some research (and I was searching as well) and it seems that by definition BLE supports only one client connection on a server. This is old code (almost year now), but i think it may be what you are looking for: Code: Select all. Create a BLE Descriptor on the characteristic 5. Postby kolban » Sun Jan 29, 2017 11:48 pm. It allows to monitor sensor data and control switches and other components via BLE connections (for example from a smart phone): In addition, there is a command channel, which allows to configure the WiFi credentials for the ESP32 over BLE (among other Central mode (client) BLE UART for ESP32. 帖锨临Arduino IDE虏掩ESP32励闽,掉都侥莺叙隘与(BLE)纬苞窖代臭井考乙锻、苇奈症晨党铣酱晚嫩挟稍 May 9, 2019 · Clone the example “ BLE Alerts code “. The client has the name set as /* Central Mode (client) BLE UART for ESP32 * This sketch is a central mode (client) Nordic UART Service (NUS) that connects automatically to a peripheral (server) * Nordic UART Service. println(" - Created client"); pClient -> setClientCallbacks (new MyClientCallback ()); // Connect to the remove BLE Server. import asyncio from bleak import BleakScanner from bleak import BleakClient async def main (): target_name Jul 29, 2017 · In this technical tutorial we look at the ability for an ESP32 using C++ classes to be a BLE Client to a remote BLE server. There is also the physical connection which is the actual BLE link between the client and the server. Apr 20, 2019 · The ESP32 has integrated Bluetooth Classic and BLE support. The app named LuaNode_BLE_Client. This is a simple Bluetooth Low Energy Windows 10 console application I developed to debug ESP32 hardware. Application Example; API Reference Mar 16, 2022 · Using Arduino Programming Questions. There is a function in the BLEServer class: std::map<uint16_t, conn_status_t> getPeerDevices(bool client); You can use that to get the list of connected clients. Ultimately, I would like to send sensor data in a BLE-MESH. This will connect to an iGrill deivce and then publish the temperatures of the probes and the iGrill Device battery level to MQTT for use in Home Automation systems. Jun 4, 2023 · self. Mar 6, 2021 · Hello, I am trying to receive data through BLE on my M5Stack Core 2, which uses an ESP32. This guide covers BLE concepts, examples, and Web Bluetooth technology. and it comes from this part of code: Code: Select all. The Bluedroid based stack (default) supports classic Bluetooth as well as Bluetooth Low Energy (Bluetooth LE). Aug 16, 2021 · Re: BLE Client for Windows 10. 1) after disconnect you have to start advertising on esp32 C3 and to start scan in windows app. Notify more than 20 bytes - MTU #8190. The following examples contain detailed walkthroughs: GATT Client Example Walkthrough. - client. NUS is what most typical "blueart" servers emulate. See full list on randomnerdtutorials. With the necessary tools and libraries installed, you are now ready to start developing ESP32 BLE projects on the Arduino IDE. I have tried to use nRF Mesh (Andriod) to discover the server esp32 and was able to do so. The role of GATT client: - Send command to GATT server to turn ON/OFF LED. 想要進行 BLE 相關的開發,我們必須具備一定的基礎知識,當然基礎知識肯定是非常簡單的,僅羅列些和本文介紹指令相關的知識。 ESP32 裏的藍牙協議棧是符合藍牙4. What I mean by this is that there are no signs of any events arriving at the ESP32 This document presents a description of the multi-connection BLE GATT client example for the ESP32. Notify. Currently this supports Bluetooth Low Energy (BLE) in Central, Peripheral, Broadcaster, and Observer roles, as well as GATT Server and Client and L2CAP connection-oriented-channels. What we find is that the first client connects correctly but when we attempt to connect the second client "nothing happens". Then, select ‘Include Library’ from the dropdown menu, and finally, choose ‘Manage Libraries…. The "key" of the map is the connection id, and the "value" of the map is the "conn_status_t" struct, which includes a There are two phases for a device to join ESP-BLE-MESH network via a Provisioner, namely, provisioning and configuration. Dec 15, 2023 · It can be installed via the Library Manager in the Arduino IDE. By provisioning, the ESP32, as an unprovisioned device, will join the ESP-BLE-MESH network and become a ESP-BLE Bluetooth® Low Energy (Bluetooth LE) Bluetooth Low Energy. These devices are everywhere these days. BLE V4. BLEUtils – The BLEUtils library provides utility functions for working with BLE on the ESP32. Learn how to use Bluetooth Low Energy (BLE) with the ESP32 board to create IoT and Home Automation projects. Mar 16, 2022 · hello, I have been working on a BLE project where two ESP32-WROOM-32 connected to BNO055 9DOF sensors send data to a ESP32 client. BLE for ESP32: examples of how to scale to very many characteristics and how to send commands from the client to the server Resources Nov 14, 2017 · I have my esp32 with my custom service and characteristic. ESP32 BLE for Arduino (This repository is kept for archive. bleはBLEインスタンスを指しています。このインスタンスはESP32のBLE機能を制御します。 gatts_notifyは、GATT(Generic Attribute Profile)サーバーとして動作するBLEデバイスから、接続されたクライアントデバイスにデータを通知するためのメソッドです。 Sep 8, 2023 · To build and flash the program of BLE(Bluetooth Low Energy) to ESP32 use the following commands: idf. Bluetooth Low Energy GAP. Oct 29, 2021 · I'm trying to make smart social distancing circuit for COVID 19. Provisioner is used to add clients and servers to mesh network by assigning address to each element in client Create a BLE Server 2. esp32. Pairing (and bonding) is supported on some ports. Once your ESP32 is set up as a BLE server, other BLE devices can connect to it and exchange data. h files with the changes i saw on github. For links and discussion on this t MIT license. Postby Lucas. I have updated my IDF branch (master or release) to the latest version and checked that the issue is present there. 卷挨憎. com Oct 26, 2023 · This means everything is working as expected and the ESP32 is waiting for a BLE client to connect. After that i was able to find those files under; esphome > build > esp32name > src > esphome > components > esp32_ble_tracker > i edited esp32_ble_tracker. I am using the BLE_client example but I cannot read the data properly. We will display the He Jun 27, 2019 · Re: Ble Server Connecting to Ble Client. Since many Application Profiles can run on one ESP32, there could be many virtual connection opened to the same remote server. This data can include sensor readings, commands, or any information relevant to your application. We value your feedback. In this example rxValue is the data received (only accessible inside that function). Connection between client and server. ESP32 can be powered with LiPo battery and battery level is read from ADC pin. It should be easily ported to other devices and/or expanded to multiple devices and/or multiple characteristics. 2) ble connection has timeout parameter, which may be long enough to let you close and re-open app before disconnect happen due to timeout; this is also issue with app The virtual connection is the connection between the Application Profile and the remote server. To communicate with the BLE device, it is important to know the uiids of the various services. A BLE server is a device such as a heart rate monitor, a wireless thermometer or blood glucose meter. - server. For users to make a choice: For usecases involving classic Bluetooth as well as Bluetooth Apr 15, 2021 · I'm trying to develop a bluetooth network with one client and several servers, but they communicate with the client based on "notify". A system where ESP32 becomes a BLE server, iOS and Android be Jun 1, 2022 · This instuctable has shown how you can run both BLE and WiFi services together on an ESP32 C3. to a device. To do this, go to “Sketch” > “Include Library” > “Manage Libraries”. Bluetooth® API. 2. OnOff Client - shows how a Generic OnOff Client model works within a node. For an ESP32 to join and work on a ESP-BLE-MESH network, it must be provisioned firstly. 2規範。 1. The supported number of BLE stable connections is 3. For example, if the ESP32 Client does not enable BLE SPP first, then it should enable listening with command AT+BLEGATTCWR=0,3,7,1,1 first for the ESP32 Server to transmit successfully. It's intended to communicate with a client device, such as a smartphone, via BLE and control a LED based on received commands. May 26, 2024 · BLEClient – This library lets you create a BLE client on the ESP32. And much more!Today I can Jan 29, 2023 · This tutorial explains how to use Bluetooth Low Energy (BLE) with the ESP32. 2協議規範的, 本文的描述也僅針對藍牙4. ) The Arduino IDE provides an excellent library package manager where versions of libraries can be downloaded and installed. 2) ble connection has timeout parameter, which may be long enough to let you close and re-open app before disconnect happen due to timeout; this is also issue with app Very recently I have begun learning BLE and the esp32 and my goal for the moment is to successully establish a BLE connection between an esp32 (as client) and the nRF52 (as server). adafruit-circuitpython. I believe the nRF52 works, since I can connect to it using my phone and control the value of characteristics in it. I will show you what I had to do. jaguevara671 March 16, 2022, 8:13pm 1. cpp and esp32_ble_tracker. each server is connected to a sensor (DHT11). What i did: - esp32 server for testing, - esp32 client that is connecting to esp32 server and sending messages every 1000ms + server that allows to connect another client, Jan 7, 2020 · Hello friends, I'll write in this topic about BLE on ESP32, send and receive text, with clock and without clock. Whether you're BLE uses the concept of a server and a client. It is set up as a Visual Studio 19 project. Home Assistant can directly read ESP32 battery level and Mi Flora sensor measurements without the need of MQTT server. Hutchinson » Wed Jul 19, 2017 9:04 pm. It lets you scan for and connect to BLE peripherals, read and write characteristics, and handle notifications. So far, I have been able to get a one to one connection between one server and the client. Dec 4, 2022 · BLE通信を試してみる. In the code below, i can see connected or disconnected device connection id. ESPHome config for ESP32 to monitor XIaomi Mi Flora Plant sensors. Today i wrote simple HID client example that can receive data from HID keyboard and handle it: Jan 27, 2024 · BLE通信の基本. The issue I have now is that if someone use an app like "lightBlue" or "nRF Connect" and stay connected to my esp32 BLE, I'm stuck, no one else can connect to the device. Code: Select all. This set up illustrates the use case of an ESP32 device acting in a way so that it receives data from different BLE sensors. Basically, I have an RGB bulb that uses BLE and I want to control it by writing a value to a characteristic. It has been my experience that a stack overflow can be caused by not allocating enough stack space for the FreeRTOS task when either xTaskCreate () or xTaskCreatePinnedToCore () is called. Start the service. - Board D1 R32 ESP32. It has been tested with ESP32-NimBLE-Mouse and a real BLE trackball mouse. And txValue is the data to be sent, in this example just a byte incremented An ESP32 will act as a GATT server and an ESP32 will act as a GATT client. When used as a BLE server, you can simply enable advertising again after a client connects. There is plenty of esp32 BLE HID keyboard examples. - nkolban/ESP32_BLE_Arduino With various features of ESP-BLE-MESH, users can create a managed flooding mesh network for several scenarios, such as lighting, sensor and etc. I am actually trying to scan and transmit data via bluetooth together, with a single antenna, I think it is not possible without stopping the scan. To install the ESP32 BLE (Bluetooth Low Energy) library, first click on ‘Sketch’ in the Arduino IDE. . 0 ESP32 is a widely used micro controller developed by Espressif Systems, which features built-in Wi-Fi and Bluetooth capabilities. Dec 18, 2022 · Serial. There is another thing, esp32 wrover-b module with ipex antenna, if I use this module, and attach another antenna, is it possible for me to use 1 antenna for Jun 30, 2022 · petrrpancon - I would be interested in the code when finished. Start advertising. In this example project, I show how you can use the ESP32 as a client to a BLE server. A device may operate in multiple roles concurrently. The client connects to the server and makes use of its services. Plus, you can scan BLE devices around your phone and then view the services, characteristics, and descriptors provided by the devices. In the course, I show how to use both. Search images: D1 R32 ESP32 This card has classic Bluetooth, BLE, WiFi, ADC, DAC, and more feature. You should find a device called ESP32_BME280—this is the BLE server name you defined earlier. The phase of provisioning is to assign unicast address, add NetKey and etc. [中文] ESP-IDF currently supports two host stacks. You can find also proxy and relay devices, but in this case its not important. In your Arduino IDE, click on File > Examples > ESP32 BLE Arduino. static void notifyCallback ( BLERemoteCharacteristic* pBLERemoteCharacteristic, uint8_t* pData, size_t length . As you can see in first client log there was this log line: Notify callback for characteristic 6e400003-b5a3-f393-e0a9-e50e24dcca9e of data length 2. A ESP-BLE-MESH Provisioner can then provision the unprovisioned device and control a RGB LED representing on/off state, see example code . pe sk fc vr qg bo mv ij ly zx