BLE clien and server at the same time

chegewara
Posts: 2207
Joined: Wed Jun 14, 2017 9:00 pm

BLE clien and server at the same time

Postby chegewara » Wed Jan 10, 2018 10:26 am

For some time im thinking about bluetooth mesh and last few months ive been reading a lot about bluetooth le, specifications etc. In bluetooth mesh specification ive been reading such thing:
- to avoid missing any packets that can be addressed to mesh node its advised to use very short advertising time and long observing time,
from that i councluded so its not possible to use esp32 or any bluetooth device as a server and client at the same time.
But im little bit crazy and i like to experiment so i decided to try it by myself. I setup client scan mode for 60 seconds and at the same time i ran in another task server. What was my surprise when i saw in putty that client scan is running and at the same time i can discover esp32 with nRF connect.
So i decided to flash the same app into another esp32. Again surprice. Client discovered 2nd esp32 and started to write to its characteristic, like it suppose to be and i could to find 1st esp32, connect to it, register for notifications and receive new values.

There is one thing. If scanning is performed in tight loop then server is not updating notification values. But i dont know if this is bluetooth related or freeRTOS tasks wont switch to let server task do its work (just didnt test it).
This test was performed in arduino-ide with ESP32 BLE arduino by Neil Kolban.

Maybe devs can comment on this.

Who is online

Users browsing this forum: No registered users and 94 guests