Greetings Friends! I hope you all are doing good.
I've been asked to make social distancing bracelet based on BLE and yet keep the cost at its minimum. The first thing that came to my mind was to go for HM10 BLE. After going through its datasheet (just an overlook, not as in detailed study) and going through couple of videos on YT and some blogs I came to know that what I'm hoping for can be built in one of the following ways.
for this we are considering that two bracelets are in close vicinity of each other
-
Have two different arduinos for two different HM10 one acting as master and the other acting as slave. Both of the systems will have a small vibrating motor (as those in cellphones) and a small ringer. The masters searches for the discoverable slave options and connect to the one among the list (here in the case, only one slave in existence). As soon ass the connection is established the vib motor on master starts flashing and the master transmits 1 to turn on the vib motor and ringer on the slave side.
-
Another option would be putting the other HM10 in MODE2 that enables it to accept the AT commands OTA then I can simply add vib motor and ringer directly to the other HM10 GPIO without any need of using arduino for it and control them remotely after the connection is established.
-
putting the HM10 in iBeacon mode. This option seems failry good enough since it allows us to decide the range of HM10 working in iBeacon.
Now the problems and queries and doubts that I have in each option:
*Problem in otpion 1
A. How do I handle the situation when there are more than 2 HM10s in close vicinity of each other.
B. How do I decide the distance between the persons wearing bracelet I certainly dont want those buzzers and vib motor going on even if the persons wearing those bracelets are standing 10 mtrs apart.
C. If we consider a situation where two HM10s come in vicinity but they both are configured as slave. How should this situation be handled? Can I make the modules hope between being master and slave on timely basis?
*Problem in option 2
A. How do I handle a situation where there are more than two HM10s in close vicinity of each other?
B. If the two HM10 close to each other happened to be in peripheral mode by co-incidence theey both will sit on waiting to receive the AT command and none of the buzzer/vib motor go on even if the social distancing is violated. How to handle this situation is there any other way around?
*Problem in option 3
A. what if two iBeacons come close? do each of them get notified in that case in any way?
B. What if more than two iBeacons come close? do they all get notified about it in some way?
Your valuable guidance in clearing my doubts is kindly expected. Please overlook if my queries seem to be amateur.
This is the link which I found most helpful
http://www.martyncurrey.com/hm-10-bluetooth-4ble-modules/#arduinoToHM-10
Thanks in advance