I have 3 IMU's (3-Space™ Mini Bluetooth LE Inertial Motion Sensor - Yost Labs ) that communicate via bluetooth. I have the sensors all paired to a laptop with an Arduino Uno connected via USB port.
Is there any way I can get them to communicate with each other? They are all connected to a serial port (COM3, COM4, COM7, COM9) but I don't know how to get them talking. I can't wire the sensors directly to the Arduino because of range and movement constraints, which is why I have them communicating via Bluetooth with the computer as the 'go between' for the sensors and Arduino. I may not even need the Arduino here, I've just never communicated with sensors outside of the Arduino IDE so I don't even know where to begin.
I've done so much Googling and reading documentation but I feel like this is such a stupid question that there aren't any instructions for how to do it. Any help would be appreciated!
What information would the sensors exchange with each other? All those sensors do is determine their own orientation, and send that elsewhere.
Please explain what you actually want to do with this project.
Thank you for responding! I am using them for motion tracking of joints on a body. I used poor wording I think; the sensors don't need to talk to each other, I just need to simultaneously pull specific data from all three of the sensors and calculate their positions relative to each other so I'm trying to get them to talk to the Arduino. Also based on the data I receive from the sensors, I will need to send commands to the sensors requesting other data values, so I need to be able to send and receive.
The Arduino seems unnecessary here to me since all of the sensors are connected directly to the computer but I don't know of any other way to communicate with multiple sensors at the same time.
That is not possible. The Arduino (or any other computer) can communicate with only one sensor at a time. The turnaround is quick, but if the time difference between subsequent sensor reports matters, then you need to time stamp each data point and make corrections as required.
Oh okay. You actually answered a question I probably would have had down the road but I haven't even gotten that far yet . I don't know how to communicate with the sensors to get the data; right now everything is just connected to a laptop but I don't know how to communicate with them. I've worked on other projects with Arduino and multiple sensor systems but in those cases the sensors were all directly wired to the Arduino via digital or analog input pin, so calling the data was as simple as reading the pin. In this case, I'm basically trying to read inputs from different COM ports but I don't know how to open those ports and communicate them. Hopefully that makes sense, it's hard to explain when I have pretty much no idea what I'm talking about haha
The manual explains the function of the sensors, and communication with host computers in great detail. Take some time to work through it, working with only one sensor at first.
I've been working with the manual, but I think the manual assumes the user has some level of intelligence which I do not posses. I get the functions and everything but I literally don't know where to go on my computer to begin communicating with the sensors. Do I use the Arduino IDE? If so, I haven't been able to find anything on communicating with multiple COM ports. Is there a magic programming portal in the computer I can access? Should I open a Word document and just start typing? Listening to myself it's a wonder how I even got them connected to my computer in the first place
Any computer you use, including Arduino, must have specific software running to send commands to the sensor via the virtual serial port (USB, Bluetooth, etc.), and read the data coming back.
If you are a beginner with Arduino, writing this software would be a significant challenge, but there are a few starting points, like this one (look around, there may be others):
https://yeitechnology.freshdesk.com/support/discussions/topics/1000074219
However, it is unlikely that a small Arduino would be powerful enough to do motion capture with several sensors at a time. Consider biting the bullet and buy the Yost Labs PC software designed to work with the sensors. Maybe they have a free trial period.
Alternatively, you could post on the Jobs and Paid Collaborations forum section. Perhaps someone would be interested to write it for you.
Why not ask Yostlabs direct, they have a prominent "Contact Us" button on the webpage for this unit.
All the sensors will have to transmit at the exact same time to a single receiver that will have to discriminate between all the signals... At the same time, not going to happen.
The sensors, as per their data sheet, can send info via Bluetooth, just have your uno receive the BT data the sensors send.
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.