ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

How to implement multi device data recording setup?

asked 2019-09-21 05:26:39 -0600

Test01 gravatar image

I am interested in implementing a set up consisting of several Raspberry Pis to record data on each from a same sensor connected to it. I would like to have then a master computer (laptop) that can supervise the data recording, i.e. start and stop the recording, and if possible even visualize data from them and download the recorded bag files after record stop. The Pi’s will be rigidly attached to moving objects so I need to achieve a wireless communication over max. 150 m approx.

Is it possible to achieve this recording setup with rosbridge over WLAN? Is it possible to record the data from all client Pi’s on the master computer in real time so that it becomes time synchronized? Any other recommendations to achieve this?

Thank you in advance.

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted

answered 2019-09-23 02:28:02 -0600

rreignier gravatar image

If all the Raspberry Pi are on the same network and the same ROS master, you will be able to see all the topics from the master. So there will be no issue to use rosbag record on the master to record all the needed topics. But the WiFi bandwidth may be the bottleneck.

Their was a presentation about managing several robots and each one recording bags this year at the ROSCONfr. But it is in french:

edit flag offensive delete link more


Thank you very much.

I assume it is worth to test it with WiFi and see how well it works. One Pi would collect LiDAR data (2D) at 20 Hz and the other Pi's would collect IMU data at 120 Hz. Do you think this could already be too much for the bandwidth?

Thanks for the link, I will try to understand as much as I can. Do you know which hardware solution they used for the wireless connection?

I would also need to ensure that data is recorded in bag files preferably on both the master and the client, so that in case connection interrupts, the recording is not interrupted.

Test01 gravatar image Test01  ( 2019-09-25 07:36:15 -0600 )edit

I have no idea for the bandwidth. But generally, ROS 1 over Wifi is not the best idea. I am not sure how well the disconnections are handled by the master. Another solution would be to run one master per Pi (like in the video), and communication between the Pis managed differently. We have used rosserial over TCP to do such use case.

rreignier gravatar image rreignier  ( 2019-09-25 10:23:20 -0600 )edit

Thanks for the quick reply. Maybe then it is better to record on the clients directly instead of streaming everything to the master, for safety reasons. Sending commands to start/stop recording from the master should be no issue via rosbridge I suppose. You mention ROS 1, would you say I should look into ROS 2 for this setup? I have no experience yet with ROS 2.

Test01 gravatar image Test01  ( 2019-09-27 07:24:11 -0600 )edit

Another follow up question on your initial answer: If I can see the topics sent by the clients, will I also see which client is publishing them? And can I send messages via service to certain clients?

Test01 gravatar image Test01  ( 2019-10-02 15:56:35 -0600 )edit

In theory, ROS 2 handle Quality of Service to deal with bad connections. But I have not personally tried it. Yes, you can communicate in both directions with the clients.

rreignier gravatar image rreignier  ( 2019-10-09 07:31:29 -0600 )edit

Question Tools

1 follower


Asked: 2019-09-21 05:26:39 -0600

Seen: 236 times

Last updated: Sep 23 '19