arclab-hku / ecmd

ECMD: An Event-Centric Multisensory Driving Dataset for SLAM
MIT License
42 stars 5 forks source link

Some problems about Time Synchronization #3

Closed kahowang closed 6 months ago

kahowang commented 6 months ago

Hi PEIYU, WaiPang
@KwanWaiPang @cpymaple

Firstly, I would like to express my gratitude for your exceptional work on the ECMD dataset. I am interested in utilizing your dataset for my research and have some questions regarding sensor time synchronization:

  1. In the ECMD paper, it is mentioned that the Precision Time Protocol (PTP) was employed for multi-sensor time synchronization, with the clock source being the satellite time provided by the u-blox M8T GNSS receiver. Could you please specify which sensors were involved in the PTP time synchronization process? Did the Infrared Camera, Event Camera, Industrial Camera, and Xsens also participate in this synchronization?

  2. I noticed that the primary clock source in your setup was the u-blox M8T GNSS receiver, even though you also have the NovAtel SPAN-CPT. May I ask why the NovAtel SPAN-CPT was not used directly for satellite time synchronization?

Thank you for your time and effort in advancing this field. I look forward to your response and am eager to explore your dataset further.

Best regards, Kaho

DarrenWong commented 6 months ago

Hi Kaho, regarding your time sync questions,

  1. The ROS system on the industrial PCs is synchronized using the PTP protocol. The event cameras are synced based on the master event camera. Other sensors share the same ROS timestamp with GNSS but are not involved in PTP synchronization.
  2. NovAtel SPAN-CPT is a good choice for synchronization, as it provides PPS (Pulse Per Second) and NMEA signals. However, we are currently not using it. According to the information from u-blox, the time accuracy of the u-blox M8T can also reach nanosecond accuracy. You can find more details here
kahowang commented 6 months ago

Dear Darren, @DarrenWong

Thank you for your insightful response regarding the time synchronization process used in the ECMD dataset. I have a few follow-up questions to further understand the details:

  1. Regarding your mention of "The ROS system on the industrial PCs is synchronized using the PTP protocol", does this mean that the satellite time provided by the u-blox (offering PPS and NMEA signals) is aligned with the PC system time, thereby correct the ROS system Timestamp? As I understand, the ROS system time typically relies on ros::time::now(), which corresponds to the current system time of the PC. I apologize if my understanding is incorrect and would appreciate any clarification.

  2. In your ECMD paper, it is noted that "the event cameras are synced based on the master event camera". In the dataset, does the master event camera acquire data directly using the ROS driver? Is the time of the event camera synchronized with the time of the PC or other sensors? I am aware that connecting the PC and event camera via USB might introduce some latency.

  3. I find the use of the u-blox M8T for the master clock to be a very impressive solution.

I look forward to hearing from you and delving deeper into using your dataset.

Best regards, Kaho

DarrenWong commented 6 months ago

Dear Kaho

  1. Yes, we sync GNSS time with the PCs.

  2. Yes, we use the ROS driver to acquire data. The wire latencies between sensors and ROS computers are not considered in this dataset. We will consider implementing it in the future.

  3. Cool! Hope it helps!

Best Regards, HUANG Feng

kahowang commented 6 months ago

Dear Darren,

Thank you for your great help!!!

Best Regards, Kaho