Closed MatthijsBurgh closed 3 years ago
@reinzor @warp1337 @awesomebytes what is your view on this issue?
@MatthijsBurgh I haven't used openni_2 in a while, but what you say makes a lot of sense. The only thing I'd be worried by now is backwards compatibility. Maybe there is people that now depend on this behaviour.
Maybe there should be a parameter to actually use the serial number instead of the StringID and by default is false.
I agree
I can do that. I think in the first new ros distro, we should make the serial the default again and the distro after it drop the option to choose.
Is there any reason why the StringID of the device is used as serialnumber in the color/ir name instead of serialnumber? This breaks compared to
openni
, which does use the real serialnumber.openn
i: https://github.com/ros-drivers/openni_camera/blob/indigo-devel/openni_camera/src/nodelets/driver.cpp#L142openni2
: https://github.com/ros-drivers/openni2_camera/blob/noetic-devel/openni2_camera/src/openni2_driver.cpp#L145Because of this difference the
camera_info_manager
throws a warning: https://github.com/ros-perception/image_common/blob/noetic-devel/camera_info_manager/src/camera_info_manager.cpp#L288Update: The implementation in
openni2
produces names which are not unique. Multiple cameras of the same type get the same StringID, while the serial number is different of course. As these names are also used in calibration files, an unique name is needed. Therefore the solution ofopenni
is the only correct one IMO.