I would like to install a babycam with my Pi so I need video and sound.

After searching I found that Video4Linux might be the best. So I installed a fresh copy of Raspbian Jessie on my Pi 3, attached a Logitech C525 uvc compatible camera.

I installed the following components:

sudo apt-get install uv4l uv4l-raspicam uv4l-server uv4l-uvc uv4l-xscreen uv4l-mjpegstream uv4l-dummy uv4l-raspidisp uv4l-webrtc

dmesg prints out:

[ 6682.548676] uvcvideo: Found UVC 1.00 device HD Webcam C525 (046d:0826)
[ 6682.561664] input: HD Webcam C525 as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.2/input/input4
[ 6688.964105] usb 1-1.3: reset high-speed USB device number 7 using dwc_otg
[ 8940.910267] usb 1-1.3: USB disconnect, device number 7
[ 8945.495112] usb 1-1.3: new high-speed USB device number 8 using dwc_otg
[ 8945.859701] usb 1-1.3: New USB device found, idVendor=046d, idProduct=0826
[ 8945.859722] usb 1-1.3: New USB device strings: Mfr=0, Product=2, SerialNumber=1
[ 8945.859735] usb 1-1.3: Product: HD Webcam C525
[ 8945.859748] usb 1-1.3: SerialNumber: 4D903B20
[ 8946.138421] usb 1-1.3: set resolution quirk: cval->res = 384
[ 8946.139756] uvcvideo: Found UVC 1.00 device HD Webcam C525 (046d:0826)
[ 8946.152736] input: HD Webcam C525 as /devices/platform/soc/3f980000.usb/usb1/1-1/1-1.3/1-1.3:1.2/input/input5

When I try to start uv4l with this:

uv4l -–driver uvc -–device-id 046d:0826

I'm getting this error:

<alert> [core] No device detected

What am I missing? Or what am I'm doing wrong? The camera works great with mjpeg-streamer on the same Pi.


mjpg-streamer uses the kernel support for V4L2 (/dev/video0). You could probably stream to web with that or gstreamer, but it's understandable that uv4l is simpler to configure for web streaming. (uv4l automatically opens a page on port 8080 if uv4l-server is installed.)

Troubleshooting via tools like v4l-ctl or guvcview would default to using /dev/video0, so those wouldn't be helpful in figuring out what is failing with userspace UVC. I have an Ausdom camera (says "Microdia Camera" when I run lsusb) and it works fine with your command and the corresponding VID:PID, but that doesn't guarantee other cameras work. In truth most userspace libraries for UVC are not without bugs, but uv4l is much harder to debug being closed-source.

For something that sets up a WebRTC stream with the simplicity of uv4l-server and works with the kernel V4L2 driver, try webrtc-streamer. What's more, it comes with source code!

Note: If others here have trouble installing uv4l-server on Stretch, here is a workaround for dealing with older (jessie) dependencies and issues with lrkey.asc:

sudo apt install uv4l uv4l-uvc
sudo apt-get download --allow-unauthenticated uv4l-server
sudo dpkg --install --ignore-depends=libssl1.0.0 uv4l-server_1.1.103_armhf.deb

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.