---
title: Install ROS 2 usb-cam on Linux | Snap Store
description: Get the latest version of ROS 2 usb-cam for Linux - ROS 2 driver for
  V4L2 USB cameras (Logitech C920 and others)
url: https://snapcraft.io/ros2-usb-cam
---

# ROS 2 usb-cam (ros2-usb-cam)

[Ubuntu Robotics Community (ubuntu-robotics-community)](https://snapcraft.io/publisher/ubuntu-robotics-community "View all snaps from Ubuntu Robotics Community (ubuntu-robotics-community)")

* [Ubuntu Robotics Community (ubuntu-robotics-community)](https://snapcraft.io/publisher/ubuntu-robotics-community "View all snaps from Ubuntu Robotics Community (ubuntu-robotics-community)")
* [Devices and IoT](https://snapcraft.io/search?categories=devices-and-iot)

jazzy/stable 0.8.1

Contact us about
[Snaps and IoT ›](https://snapcraft.io/about/contact-us)

Install jazzy/stable of ROS 2 usb-cam

---

**Install using the command line**

```
sudo snap install ros2-usb-cam
```

Don't have snapd? [Get set up for snaps](https://snapcraft.io/docs/installing-snapd).

---

### Package name

* ros2-usb-cam

---

### License

* BSD-3-Clause

---

### Last updated

* Today - jazzy/stable
* Today - latest/edge

---

##### Report a Snap Store violation

* [Report this Snap](https://snapcraft.io/ros2-usb-cam#report-snap-modal)

---

* [Description](https://snapcraft.io/ros2-usb-cam#tab-description)
* [Security](https://snapcraft.io/ros2-usb-cam#tab-security)

#### ROS 2 driver for V4L2 USB cameras (Logitech C920 and others)

Snap of the ros-drivers/usb\_cam ROS 2 node.
The snap runs usb-cam node as a daemon,
sharing the ROS 2 Jazzy runtime from the `ros-jazzy-ros-base`.

Camera configuration always goes through a ROS params YAML file, matching
upstream usb\_cam's own `--params-file` interface. A managed default is
seeded at $SNAP\_COMMON/config/usb\_cam.yaml on install, including
`video_device: "/dev/video0"` by default.
This can be edited directly for full
control, or use the `video-device` key as a shortcut for the common case
of just pointing at a camera:

```
   snap install ros2-usb-cam
   snap connect ros2-usb-cam:camera
   snap set ros2-usb-cam video-device=/dev/video4 namespace=/static_camera
```

General ROS environment (ROS\_DOMAIN\_ID, RMW\_IMPLEMENTATION,
FASTDDS\_DEFAULT\_PROFILES\_FILE, ...) is set via the env-injector
extension, e.g.:

```
   snap set ros2-usb-cam env.ros-domain-id=42
   snap set ros2-usb-cam env.rmw-implementation=rmw_fastrtps_cpp
```

For anything beyond the video-device path (resolution, framerate, pixel
format, brightness, camera\_info\_url, ...), edit
$SNAP\_COMMON/config/usb\_cam.yaml directly, or hand the snap a completely
separate file/URL, which takes precedence over the default file:

```
   snap set ros2-usb-cam config-file=https://example.com/usb_cam.yaml
```

To discard local edits and restore the packaged default config, run the
reset-config app (this also unsets the `video-device` shortcut so the
reset sticks), then restart:

```
   ros2-usb-cam.reset-config
   snap restart ros2-usb-cam
```

Run a second camera on the same host with snapd parallel installs
(experimental snapd feature; each instance gets its own configuration):

```
   snap set system experimental.parallel-instances=true
   snap install ros2-usb-cam_wrist
   snap set ros2-usb-cam_wrist video-device=/dev/video2 namespace=/wrist
```

The snap publishes the standard usb\_cam topics (`image_raw`, `image_raw/compressed`,
`camera_info`), scoped by the ROS namespace. The `camera_name` parameter
is not part of the topic path -- upstream only uses it for camera
metadata (`CameraInfo`).

---

## Install ROS 2 usb-cam on your Linux distribution

Choose your Linux distribution to get detailed installation instructions. If yours is not shown, get more details on the [installing snapd documentation](https://snapcraft.io/docs/installing-snapd).

[### Arch Linux](https://snapcraft.io/install/ros2-usb-cam/arch)

[### CentOS](https://snapcraft.io/install/ros2-usb-cam/centos)

[### Debian](https://snapcraft.io/install/ros2-usb-cam/debian)

[### elementary OS](https://snapcraft.io/install/ros2-usb-cam/elementary)

[### Fedora](https://snapcraft.io/install/ros2-usb-cam/fedora)

[### KDE Neon](https://snapcraft.io/install/ros2-usb-cam/kde-neon)

[### Kubuntu](https://snapcraft.io/install/ros2-usb-cam/kubuntu)

[### Manjaro](https://snapcraft.io/install/ros2-usb-cam/manjaro)

[### Pop!\_OS](https://snapcraft.io/install/ros2-usb-cam/pop)

[### openSUSE](https://snapcraft.io/install/ros2-usb-cam/opensuse)

[### Red Hat Enterprise Linux](https://snapcraft.io/install/ros2-usb-cam/rhel)

[### Ubuntu](https://snapcraft.io/install/ros2-usb-cam/ubuntu)

[### Raspberry Pi](https://snapcraft.io/install/ros2-usb-cam/raspbian)
