I'm running Ubuntu 10.04 on a Macbook Pro 5.5. When I initially installed, the webcam worked perfectly, and I could use Cheese to take photos or video without any problems. However, now when I open Cheese, it will either freeze when I open it, or show the error "Cannot connect to video device (/dev/video0)". I've tried camorama and fswebcam, but they give me the same error. Rebooting and trying different kernels hasn't fixed it.

What else can I do to diagnose or fix this?

Edit: I reformatted and installed Ubuntu 11.10, but the issue persists. The webcam will work fine one moment, and then apps like Cheese will give me the error "No device found".

Edit: This is a known bug.

  1. Download AppleUSBVideoSupport driver file (e.g. dl.getdropbox.com/u/332246/AppleUSBVideoSupport) and place at ~/Desktop

  2. sudo apt-get install isight-firmware-tools
    Skip the prompt to immediately load the driver file.

  3. cd ~/Desktop; sudo cp AppleUSBVideoSupport /lib/firmware/

  4. sudo ift-extract -a /lib/firmware/AppleUSBVideoSupport

  5. sudo nano /etc/default/acpi-support
    Find MODULES and make it MODULES="isight_usb".

  6. lsusb | grep -Po '(?<=:)(\d+)(?=.*iSight)'
    This outputs the product ID of your specific iSight USB device. Remember this number. Mine is 8507. The default Ubuntu driver seems to be hardcoded for 8300, which is a problem.

  7. sudo nano /etc/udev/rules.d/isight.rules
    Add (and be sure to replace the "8507" with your product ID.):
    ACTION=="add", SYSFS{idVendor}=="05ac", SYSFS{idProduct}=="8507", RUN+="/usr/lib/udev/ift-load --firmware /lib/firmware/isight.fw"

  8. Shutdown/poweroff (not reboot or restart).

  9. Reboot.

  10. sudo apt-get install cheese; cheese

I've been using this fix for a couple weeks, and my webcam now reliably works across reboots and suspends. The bug seems to be caused by simply incorrect acpi and udev configurations.

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.