fus0g / Quanta-HD-User-Facing-0x0408-0x4035_linux

Linux Kernel uvc driver for Quanta-HD-User-Facing-0x0408,0x4035 usually found on acer laptops
50 stars 7 forks source link

Quant HD User Facing Driver Module for Webcam Found in Acer Laptops.

this module fixes camera 📷 on bunch of acer laptops 💻 like Acer Nitro 5 running linux.

Special Thanks to @Giuliano69 for the driver reference 🥰


USAGE

check if its present in your laptop or not.

lsusb | grep "Quanta Computer"

if it shows something like this

Bus 003 Device 003: ID 0408:4035 Quanta Computer, Inc.

or

Bus 003 Device 003: ID 0408:4033 Quanta Computer, Inc.

then you can go ahead.


⚠️IMPORTANT⚠️

👉 Disable Secure boot in your Laptop's 💻 BIOS 👈

as the module is not signed and it will give error

insmod: ERROR: could not insert module /usr/lib/modules/uvcvideo.ko: key was rejected by service


Install Required Packages

ubuntu

sudo apt install build-essential

This May be Required on some debian based distros

sudo apt-get install gcc-12 g++-12
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-12 20

Fedora/Nobara

sudo dnf install kernel-devel

clone the repo

git clone https://github.com/fus0g/Quanta-HD-User-Facing-0x0408-0x4035_linux.git && cd Quanta-HD-User-Facing-0x0408-0x4035_linux

Method 1: build and install

chmod +x install_driver.sh
./install_driver.sh

Method 2: Makefile method

$ make                   // previously installed modules remove and install again
$ make clean            // clean previous installed modules
$ make install         // install the module

Now your camera should be working most probably!


if this dont work then try doing it manually by the following steps.

  1. Get Your Kernel Source
  2. Navigate to drivers/media/usb/uvc
  3. Add This code to uvc_driver.c
  4. compile the module only in the same directory using the command
    make -C /lib/modules/$(uname -r)/build M=$(pwd)

    on ubuntu based distros

    COMPILER_VERSION=$(grep -o 'x86_64-linux-gnu-gcc-[0-9]*' /proc/version | head -n 1)
    make -C /lib/modules/$(uname -r)/build M=$(pwd) CC="$COMPILER_VERSION"
  5. If it compiles fine you would get a uvcvideo.ko module in the folder.
  6. Unload previous version from kernel using
    sudo rmmod uvcvideo
  7. Load new module
    sudo insmod uvcvideo.ko

    Now it should work but change will be removed on reboot:)

    Tested On

    Distro version
    Nobara 38
    Nobara 39
    Fedora 39
    Fedora 40
    Ubuntu 23.10
    Ubuntu 24.04
    Pop_OS! 22.04
    Arch Linux Latest
    Cachy OS Latest
    Linux Mint 22
    OpenSuse Tumbleweed Latest

Tell me if it works for you! i will update the readme!

Dont forget to star ⭐ the repo and follow me on github 😉


BuyMeACoffee if you want

Buy Me A Coffee


you can reach me out for any issues and help on ⬇️

Static Badge Static Badge