I’m looking for some information about Arduino and Bluetooth. I have an assessment project to do for Uni and to fulfil the assessment requirements I would like to build something similar to the crude diagram attached.
The project consists of several (2-3) separate devices each with a different sensor (Temp/Light/Motion/etc) communicating to a central hub over Bluetooth, I’m pretty sure I can achieve this using a Raspberry Pi as the Hub, but I would like to try to achieve it using an Arduino as the hub.
What I need most is advice on what modules I need for the Arduino hub to enable it to use multiple Bluetooth connections.
I’ve learned that almost any BT module (HC-05/HC-06/HM-10) will allow a single pairing but I need multiple pairings.
And please, I have already had very many “This should work” and “Probably will work” but I’m a student on a budget so I can’t afford trial and error solutions, please only respond with solutions you know will work.
Also, any advice for controllers for the sensor devices would be welcome, currently I just plan to use Arduino Uno’s (Which Uni has so I don’t need to buy) with HC-05 modules, but if a solution requires different sensor controllers I might be able to afford that in my budget.
I think I can handle the Python coding for both the Hub and the sensors but if you have any examples handy they would also be appreciated.
Finally, the project is due by end of April 2023.
BTW, The diagram was made in Visio using a stencil I found here for the Arduino/DHT22 sensor shapes in case this is of use to anyone else.
Welcome. I think you are in the right place to get info BUT.
This is all OK if by chance you find someone who has already done this. If not it reads like you want someone else to do all of any experimental work for you. You are not going to learn much that way. All you want to do is bolt it all together. You have not allowed a great deal of time for too much trials.
I am not right up with what you want to do but if you can’t pair multiple devices can you input all of the sensors into one “slave” and pair to that single unit. If your sensors have I2C capability and are all in the same place I don’t see why not.
Yah, I get what you mean and I guess I’m kinda guilty of this, except it’s more that I can’t afford the $$$ to buy things that it turns out aren’t capable of what I need them to do, rather than I’m too lazy to figure it out on my own. So I guess what I was ideally hoping for was for someone to say “yes, module XX123 is capable of this type of Point-to-Multipoint Bluetooth connection. I’ve used it myself for a similar project”.
And, unfortunately, the sensors need to be on separate devices b/c one of the requirements of the assignment is a star (Point-to-Multipoint) configuration. The Bluetooth standard (IEEE 802.15.1) allows for a Point-to-Multipoint configuration with a single master and up to seven active slaves, and this is the most common implementation (i.e. your mobile phone or laptop can connect to multiple BT devices simultaneously). But I can’t seem to find an Arduino module capable of more than Point-to-Point configuration.
Yes I can sympathise with the $$$ problem (I am currently age pension) and it IS a real game changer.
Unfortunately the only real dealings I have had with Bluetooth are of a domestic nature like the keyboard and mouse I am replying to you with. This computer based system seems to be specifically designed for multiple connections but there will be a limit and I am not sure what that is.
I guess what I am saying is that I don’t have the experience with Bluetooth to be of any help here unfortunately so can someone who has more hands on jump in and contribute.
The Forum has been very quiet the last few days so don’t expect too much until after the Easter break. That is chewing into your time constraint but unfortunately not much you can do about it.
It seems to me that the point of the task is to build the multipoint Bluetooth that you can’t find. If the college is supplying the Arduinos and HC05 modules then you can build it for the cost of hookup wire. You just need to use the appropriate topology.
Jeff has a solution.
I just Googled "multiple bluetooth connections arduino and came up with this which offers an alternative (which I know nothing about)
Thanks for looking for me Bob, but that link leads to exactly the kind of information I’ve been finding already.
Someone saying Yes it is possible, followed by someone else saying No it isn’t possible, followed by someone saying it should be possible in theory if…, but none of them actually describing a concrete example with specific hardware.
Fortunately, the BT link between the sensors and “Hub” is only one (easily replaceable) section of the whole network, so I can concentrate on getting all the rest setup and working and then come back to this section and decide on whether to continue to try to get BT working or fallback on more conventional protocols like WiFi or ZigBee.
It’s this kind of non-linear Out of the Box thinking I suck at. I definitely like this solution. If nothing better comes in by Tuesday I’m buying the missing components.
It is frustrating but unless you go for a commercial designed for purpose set of kit that is probably all you will find. This is a hobby/maker type of forum so you MIGHT find someone that has done exactly what you want but don’t hold your breath.
Jeff’s solution has a great deal of merit and that is probably going to be the way to go. Keeps it relatively simple but still will require some experimentation and trial / error. Moet on this forum would see it as more fun that way but time will beat you.
If you get a system working don’t forget to later do a bit of research and find out HOW it worked. Otherwise the exercise is wasted.
That solution assumes that the sensors can be configured as serial devices that respond to a simple request for data. The HC05 can auto-reconnect but it can’t initialise the sensor, so any required initialisation would need to be sent from the controller. A sensor that requires no initialisation would be preferable.
The Arduino UNO supports multiple serial devices with software serial drivers, provided that (1) the baud rate is slow enough - the default for the HC05 of 9600 baud should be OK for three devices - and (2) the communication is not concurrent, so the sensor data will have to be accessed from each sensor in turn using a request/response protocol.
You still need to consider the Arduino connection to the internet. An Ethernet shield will use SPI, so that leaves plenty of pins for the software serial, but memory size may become an issue.
I think Jeff’s idea for this is awesome, it removes the issues you would have with multiple connections to the single Bluetooth device and allows it to be done via a direct signal. If there are issues with flash memory and capability, would it be worth maybe using a Teensy 4.1 with the ethernet kit instead? They have far more capability than the Arduino Uno and can be easily made ethernet ready to interface with whatever device you are using to drive the project.