Skip to content
This repository has been archived by the owner on Nov 29, 2023. It is now read-only.

Error "UVC header is not available" while launching #3

Closed
IoannisKaragiannis opened this issue Aug 20, 2019 · 7 comments
Closed

Error "UVC header is not available" while launching #3

IoannisKaragiannis opened this issue Aug 20, 2019 · 7 comments
Labels
good first issue Good for newcomers question Further information is requested

Comments

@IoannisKaragiannis
Copy link

IoannisKaragiannis commented Aug 20, 2019

Hi Chris,

I have successfully managed to install realsenselib, and I can store imu data in rosbags. However while analyzing the data I realized that the implemented lerp method they have, namely imu_unite_method:="linear_interpolation", is not reliable. That is how I ended up to your repo and I was hoping you could give me a hint why I get the following error. Btw before launching your files I first did a "catkin_make clean", and then "catkin_make -DCATKIN_ENABLE_TESTING=False -DCMAKE_BUILD_TYPE=Release" and "catkin_make install" respectively. When I run "roslaunch rs4se intel_d435i.launch" on my terminal I get the following error.

started roslaunch server http://elxc3600002:42557/

SUMMARY
========

PARAMETERS
 * /rosdistro: melodic
 * /rosversion: 1.14.3
 * /stereo/camera0/image/disable_pub_plugins: ['image_transport...
 * /stereo/camera1/image/disable_pub_plugins: ['image_transport...
 * /stereo/enable_emitter: False
 * /stereo/exposure: 10000.0
 * /stereo/format: Y8
 * /stereo/frame_rate: 30
 * /stereo/global_time: True
 * /stereo/height: 480
 * /stereo/sync_size: 30
 * /stereo/width: 640

NODES
  /
    intel_d435i (rs4se/intel_d435i)

auto-starting new master
process[master]: started with pid [18771]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 0cd0933e-c343-11e9-8d57-7824af85d816
process[rosout-1]: started with pid [18782]
started core service [/rosout]
process[intel_d435i-2]: started with pid [18789]
terminate called after throwing an instance of 'rs2::invalid_value_error'
  what():  UVC header is not available
================================================================================REQUIRED process [intel_d435i-2] has died!
process has died [pid 18789, exit code -6, cmd ~/realsense_original_ws/devel/lib/rs4se/intel_d435i __name:=intel_d435i __log:=~/.ros/log/0cd0933e-c343-11e9-8d57-7824af85d816/intel_d435i-2.log].
log file: ~/.ros/log/0cd0933e-c343-11e9-8d57-7824af85d816/intel_d435i-2*.log
Initiating shutdown!
================================================================================
[intel_d435i-2] killing on exit
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done

Do you have any idea what could be the culprit of my problem? Could it be that your pose estimation wrapper depends on some specific release of the RealSense SDK, and that something is messed up with the release I'm trying? Any hint is more than welcome. Thanks in advance for your time.

@IoannisKaragiannis IoannisKaragiannis changed the title Error while launching Error "UVC header is not available" while launching Aug 20, 2019
@chutsu
Copy link
Owner

chutsu commented Aug 22, 2019

That is how I ended up to your repo

Spread the word! :D

Hmm that sounds more like an error on the intel realsense driver side then my code. Namely the UVC header is basically the USB controller that the RealSense uses to poll the image data. If I were you I would double check:

  • librealsense version you installed
  • check your Intel D435i firmware matches the librealsense version you installed

Additionally:

  • What OS are you running?
  • How did you install librealsense? compiled from source or via apt?

@chutsu chutsu added the question Further information is requested label Aug 22, 2019
@MoBaT
Copy link

MoBaT commented Aug 22, 2019

You need to install the kernel drivers according to the linrealsense install directions.

@chutsu
Copy link
Owner

chutsu commented Aug 29, 2019

Closing due to inactivity.

@chutsu chutsu closed this as completed Aug 29, 2019
@chutsu
Copy link
Owner

chutsu commented Sep 11, 2019

For future reference:

rs4se makes use of RS2_FRAME_METADATA_FRAME_TIMESTAMP inorder to calculate the image frame's mid-exposure timestamp (see here). Inorder to obtain that meta-data the linux kernel needs to be patched:

Screenshot_2019-09-11_16-28-13

^ screenshot taken from here.

The linux installation guide (here) walks through how one would perform this patch.

@chutsu chutsu added the good first issue Good for newcomers label Sep 11, 2019
@monkeydchopper
Copy link

Nice work!
I have the same problem here, may I ask the SDK verison you based for the wrapper?

@chutsu
Copy link
Owner

chutsu commented Sep 11, 2019

As of 11th September 2019, I have librealsense 2.28.0 installed

[~] > apt-cache policy librealsense2-dev                                                                                                                                                                            
librealsense2-dev:                                                                                                                                                                                                  
  Installed: 2.28.0-0~realsense0.1512                                                                                                                                                                               
  Candidate: 2.28.0-0~realsense0.1512

@monkeydchopper
Copy link

monkeydchopper commented Sep 11, 2019

Thanks for your reply @chutsu , need to patch the kernel before using metadata, I've got kernel version of 4.15.0-62-generic and
./scripts/patch-realsense-ubuntu-lts.sh
in librealsense solve my problem.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
good first issue Good for newcomers question Further information is requested
Projects
None yet
Development

No branches or pull requests

4 participants