Skip to content

Instantly share code, notes, and snippets.

@msadowski
Created July 3, 2019 08:59
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save msadowski/6038221438e1bfc9ac068528b398c7ea to your computer and use it in GitHub Desktop.
Save msadowski/6038221438e1bfc9ac068528b398c7ea to your computer and use it in GitHub Desktop.
ls /dev/video*
udevadm info --name=/dev/video2 --attribute-walk
looking at device '/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0/video4linux/video2':
KERNEL=="video2"
SUBSYSTEM=="video4linux"
DRIVER==""
ATTR{dev_debug}=="0"
ATTR{index}=="0"
ATTR{name}=="HD USB Camera: HD USB Camera"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-1/1-1:1.0':
KERNELS=="1-1:1.0"
SUBSYSTEMS=="usb"
DRIVERS=="uvcvideo"
ATTRS{authorized}=="1"
ATTRS{bAlternateSetting}==" 0"
ATTRS{bInterfaceClass}=="0e"
ATTRS{bInterfaceNumber}=="00"
ATTRS{bInterfaceProtocol}=="00"
ATTRS{bInterfaceSubClass}=="01"
ATTRS{bNumEndpoints}=="01"
ATTRS{iad_bFirstInterface}=="00"
ATTRS{iad_bFunctionClass}=="0e"
ATTRS{iad_bFunctionProtocol}=="00"
ATTRS{iad_bFunctionSubClass}=="03"
ATTRS{iad_bInterfaceCount}=="02"
ATTRS{interface}=="HD USB Camera"
ATTRS{supports_autosuspend}=="1"
looking at parent device '/devices/pci0000:00/0000:00:14.0/usb1/1-1':
KERNELS=="1-1"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{authorized}=="1"
ATTRS{avoid_reset_quirk}=="0"
ATTRS{bConfigurationValue}=="1"
ATTRS{bDeviceClass}=="ef"
ATTRS{bDeviceProtocol}=="01"
ATTRS{bDeviceSubClass}=="02"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{bMaxPower}=="500mA"
ATTRS{bNumConfigurations}=="1"
ATTRS{bNumInterfaces}==" 2"
ATTRS{bcdDevice}=="2702"
ATTRS{bmAttributes}=="80"
ATTRS{busnum}=="1"
ATTRS{configuration}==""
ATTRS{devnum}=="7"
ATTRS{devpath}=="1"
ATTRS{idProduct}=="9320"
ATTRS{idVendor}=="05a3"
ATTRS{ltm_capable}=="no"
ATTRS{manufacturer}=="HD USB Camera"
ATTRS{maxchild}=="0"
ATTRS{product}=="HD USB Camera"
ATTRS{quirks}=="0x0"
ATTRS{removable}=="removable"
ATTRS{serial}=="HD USB Camera"
ATTRS{speed}=="480"
ATTRS{urbnum}=="63"
ATTRS{version}==" 2.00"
...
ATTRS{idProduct}=="9320"
ATTRS{idVendor}=="05a3"
SUBSYSTEMS=="usb", ENV{DEVTYPE}=="usb_device", ATTRS{idVendor}=="05a3", ATTRS{idProduct}=="9320", MODE="0666"
sudo udevadm control --reload-rules
v4l2-ctl --list-formats-ext -d /dev/video2
ioctl: VIDIOC_ENUM_FMT
Index : 0
Type : Video Capture
Pixel Format: 'MJPG' (compressed)
Name : Motion-JPEG
Size: Discrete 1920x1080
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.040s (25.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Size: Discrete 1280x720
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.040s (25.000 fps)
Interval: Discrete 0.067s (15.000 fps)
Size: Discrete 800x600
Interval: Discrete 0.033s (30.000 fps)
Interval: Discrete 0.040s (25.000 fps)
Interval: Discrete 0.067s (15.000 fps)
...
cd ~/ros_ws/src
catkin create pkg my_camera --catkin-deps libuvc_camera
mkdir ~/ros_ws/src/my_camera/launch
<launch>
<node pkg="nodelet" type="nodelet" name="nodelet_manager" args="manager" output="screen"/>
<node pkg="nodelet" type="nodelet" name="libuvc_camera" args="load libuvc_camera/driver /nodelet_manager" output="screen">
<param name="frame_id" value="elp_camera" />
<!-- Parameters used to find the camera -->
<param name="vendor" value="0x05a3"/>
<param name="product" value="0x9422"/>
<!-- Image size and type -->
<param name="width" value="1280"/>
<param name="height" value="720"/>
<param name="video_mode" value="mjpeg"/>
<param name="frame_rate" value="15"/>
<!-- <param name="camera_info_url" value="file://$(find my_camera)/config/elp.yaml"/> -->
</node>
</launch>
roslaunch my_camera elp.launch
rosrun rqt_image_view rqt_image_view
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment