Bluetooth Communications and Mesh

Assasinsareus
Posts: 3
Joined: Thu Oct 24, 2024 8:45 am

Bluetooth Communications and Mesh

Postby Assasinsareus » Thu Oct 24, 2024 8:54 am

Hello,

I'm designing a product where there is a one to one pairing of a controller and a robot and for this I would like to use Bluetooth using the ESP32 H2 module. This is nice and easy and I can see how to do this.

However I want there to be interaction between the robots on certain events. For example one robot should be able to effect all the other local robots when a power up is picked up. For this I am considering if mesh is a possible way forward? I don't want any type of phone app to be involved and ideally things need to be as easy as possible. I've been looking at the BLE mesh examples in the IDF but they all contain either a provisioning master phone app or have server and client models with no explaination of what a server/client's role in the system is. I've watched videos and read through as many docs as I can find but I'm more confused then ever.

Is mesh the best way to acheive what I want or is there a simpler way?

Really appreciate any input on this one.
Best regards, Ben

Assasinsareus
Posts: 3
Joined: Thu Oct 24, 2024 8:45 am

Re: Bluetooth Communications and Mesh

Postby Assasinsareus » Thu Oct 24, 2024 12:08 pm

An example of the type of thing I'm after.

Controller A connects to and controls Robot A
Controller B connects to and controls Robot B
Controller C connects to and controls Robot C

When Robot B encounters an external event it can inform all other controllers and robots in real time (without a big delay).

Is this a setup that BLE mesh can do? In this scenario which are the servers and clients?

Is there something else that is more suitable?

Assasinsareus
Posts: 3
Joined: Thu Oct 24, 2024 8:45 am

Re: Bluetooth Communications and Mesh

Postby Assasinsareus » Fri Oct 25, 2024 8:02 am

I've been playing around with the BLE Mesh examples and have come a bit further with my knowledge and started to formulate a plan.

The BLE Mesh Sensors example seems to do self provisioning. A single client seems to be able to provision and work with multiple servers. So my plan is to do the following based on the sensor code.

All controllers and robots will start up as servers and wait to see if they are provisioned. If the controller is not provisioned within a few seconds then it will switch to be a client and provision the network. There might need to be some work to ensure that two controllers don't both decide to do this together and end up with two distinct networks. The user may have to do something like a scan to create the network.

Once this is established you have a network containing all controllers and robots, then it's just a case of communicating to each node and collecting things like the Bluetooth MAC and the ROM device type to see which device is which. Hopefully this is workable.

Still if anyone has any experience on this or input to give this would be greatly appreciated.

Best regards, Ben

Who is online

Users browsing this forum: Majestic-12 [Bot] and 100 guests