Debian/Ubuntu Driver for Ricoh R5U870 Webcam
This Ricoh webcam driver is no more longer under development. It is provided for backward compatibility and source code examples.

This page contains the Ricoh webcams Linux driver r5u870 for the following OEM webcams:


First of all you need to determine if your webcam has a WDM chipset. Two drivers are currently available on Internet: r5u870 and r5u87x.

Driver r5u870 requires a kernel module and supports WDM chipsets. Driver r5u87x does not requires a kernel module but does not support WDM chipsets. Until now this page is dedicated to the r5u870 driver only.

See the rest of this page for details.

Manual Compilation Requirements

To build/install this driver, you must have a set of configuration and interface headers, or the complete build directory, for your running kernel, or the target kernel for which the driver is to be built. This should include most files in the include/linux directory, and specifically include/linux/autoconf.h and include/linux/version.h.

The required interface headers are usually located at or symlinked from: /lib/modules/<version>/build

Your kernel must be 2.6.26 or higher.

Manual Compilation and Installation Process

To attempt to build against the running kernel:
$> make

To build against a specific kernel:
$> make KDIR=/path/to/kernel

To install the modules to the appropriate location:
$> make install
make install KDIR=/path/to/kernel

Installed modules will be automatically probed for supported devices by the udev coldplug component at boot, and the driver should be automatically loaded on subsequent reboots.

Loading the driver

If you installed the driver, you can just run:

$> modprobe r5u870

If you wish to load the driver without installing it, you must load the prerequisite modules:

$> modprobe videodev
$> modprobe video-buf
$> modprobe v4l1-compat
$> modprobe v4l2-common

You must also copy the microcode files (r5u870_*.fw) to /lib/firmware.

Then you may load the module manually:

$> insmod r5u870.ko

Tested Softwares for the r5u870 Driver

The following software are successfully tested by a member of Arakhnê.org:

Driver r5u870 vs. driver r5u87x

The driver r5u870 is being replaced by a set of userland tools named r5u87x. These tools load the firmware for the supported uvcvideo webcams and make those work with the standard kernel driver.

At this moment the WDM[1] webcameras are only supported by the r5u870 driver, not by the r5u87x driver.

The webcams supported by the r5u87x driver are marked as UVC by this list.

Be inside the video Group

By default on Ubuntu, the /dev/video file is created with access rights given to the members of the "video" group. To use your webcam you may be inside this group.

You may not create the "video" group on your Ubuntu system because it is a standard default group. You may only add your user inside the group.


Driver Version

Because the Ricoh webcam is a kernel module, it is compiled for a specific kernel version for the kernels prior to 2.6.24 and by DKMS for the kernels since 2.6.26. The following table describes the available drivers.

Camera TypeKernelDriver NameAvailable Version


[1]WDM: the «Windows Driver Model» is a framework for device drivers that was introduced with Windows® 98 and Windows® 2000 to replace VxD, which was used on older versions of Windows® such as Windows® 95 and Windows® 3.1, as well as the Windows® NT Driver Model.
[2]UVC: The USB video device class is a USB device class that describes devices capable of streaming video like webcams, digital camcorders, transcoders, analog video converters, television tuners, and still-image cameras.
In 2005 the USB video class specification carries the version number 1.1 and was defined by the USB Implementers Forum in a set of documents describing both the basic protocol and the different payload formats.