Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Femto Mega's output topic timestamp is wrong #64

Open
Kanazawanaoaki opened this issue Nov 22, 2024 · 1 comment
Open

Femto Mega's output topic timestamp is wrong #64

Kanazawanaoaki opened this issue Nov 22, 2024 · 1 comment

Comments

@Kanazawanaoaki
Copy link

Kanazawanaoaki commented Nov 22, 2024

We are using Femto Mega with the latest main branch
OrbbecSDK_ROS1, but the timestamp of the output ros topic was incorrect.

$ roslaunch orbbec_camera femto_mega.launch color_fps:=15 depth_fps:=15 enable_colored_point_cloud:=true depth_registration:=true camera_name:=femto_meg
$ rostopic echo /femto_mega/color/image_raw --noarr -n1
header: 
  seq: 0
  stamp: 
    secs: 1623747315
    nsecs:  12999936
  frame_id: "femto_mega_color_optical_frame"
height: 720
width: 1280
encoding: "rgb8"
is_bigendian: 0
step: 3840
data: "<array type: uint8, length: 2764800>"
---

(1623747315 = Tue Jun 15 2021 08:55:15 GMT+0000)

I think the reason for this is that the rosparam of the default use_hardware_time is set to true in the following part.

use_hardware_time_ = nh_private_.param<bool>("use_hardware_time", true);

If we change femto_mega.launch and set the rosparam of use_hardware_time to false, the system timestamp will be used and the desired behavior will be achieved.

$ rostopic echo /femto_mega/color/image_raw --noarr -n1
header: 
  seq: 11
  stamp: 
    secs: 1732250614
    nsecs: 391756032
  frame_id: "femto_mega_color_optical_frame"
height: 720
width: 1280
encoding: "rgb8"
is_bigendian: 0
step: 3840
data: "<array type: uint8, length: 2764800>"
---

(1732250614 = Fri Nov 22 2024 04:43:34 GMT+0000)

It seems that the arg for use_hardware_time is provided for the launch of some cameras that use hardware time, such as femto bolt, so it would be better to either change the default for use_hardware_time rosparam to false, or add the arg for use_hardware_time to the launch of cameras such as femto_mega (like https://github.com/Kanazawanaoaki/OrbbecSDK_ROS1/tree/add-use_hardware_time-to-femto-mega ).

@3Ddaiwei
Copy link

3Ddaiwei commented Dec 5, 2024

Thank you for your question and suggestion. When the configuration "use_hardware_time" is set to false, the system timestamp will be used. When it is set to true, the device timestamp will be used. Regarding your question, we will double-check and optimize it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants