UVC Quanta 0408:4035 camera PROBLEM

Bug #2000947 reported by Giuliano Lotta
26
This bug affects 4 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

I bought a Acer Nitro 5 AN517-55 with Quanta ACER HD User Facing', USB 0408:4035.

The camera is reported to have problems by many users:
https://linux-hardware.org/?id=usb:0408-4035
The uvc camera Quanta 0408:4035 does not work with ubuntu 22,04. the camera is “recongized” but fails installation.

My console commands report similar info to other users:
https://unix.stackexchange.com/questions/723504/integrated-camera-not-detected-working-on-acer-nitro-5-an515-58

PROPOSED SOLUTION
I got in contact with <email address hidden> and with <email address hidden> , and subscribed to https://www.linuxtv.org/lists. And <email address hidden> mailinglist.

Laurent proposed me a fix and I modified the 5,15 uvc_driver.c version, and loaded it on github

https://github.com/Giuliano69/uvc_driver-for-Quanta-HD-User-Facing-0x0408-0x4035-/blob/main/uvc_driver.c

I offered to test the fix, so I tried to compile the module with the new source.

COMPILING PROBLEMS
I’m running **Ubuntu 22.04.1 LTS, with kernel
giuliano@Astra2A:/usr/src$ cat /proc/version_signature
Ubuntu 5.15.0-56.62-generic 5.15.64

BUT the linux-source that I found installed seems to be different
tgiuliano@Astra2A:/usr/src$ ls -al linux-so*
lrwxrwxrwx 1 root root 47 nov 22 16:08 linux-source-5.15.0.tar.bz2 -> linux-source-5.15.0/linux-source-5.15.0.tar.bz2

I expanded the tar file, configured the IDE and compiled without error any errors…
I manually copied the uvcvideo.ko in
/lib/modules/5.15.0-56-
sudo cp…...

then tryed to intall the new uvcvideo.ko module
sudo rmmod uvcvideo && sudo modprobe uvcvideo

BUT… IT FAILS
giuliano@Astra2A:~$ sudo rmmod uvcvideo && sudo modprobe uvcvideo
modprobe: ERROR: could not insert 'uvcvideo': Exec format error

and dmesg shows
[25961.151982] usbcore: registered new interface driver uvcvideo
[26323.125534] usbcore: deregistering interface driver uvcvideo
[26323.189294] uvcvideo: disagrees about version of symbol module_layout

These are the TWO modinfo from the old and new uvcvideo modules
https://pastebin.com/tSj8Exm6
Basically
OLD module: vermagic: 5.15.0-56-generic SMP mod_unload modversions
NEW module: vermagic: 5.15.64 SMP mod_unload modversions

-kindly ASK

HOW can FORCE the uvcdriver.c to match mi kernel version ?
Have I got OTHER ways to make the kernel module I’m compiling, match my running system ?

I would like to test the module so to confirm the patch and let it enter the kernel main stream...

BR
Giuliano

PS
btw…. to allow Eclipse to compile the kernel, I had to pass this commands
scripts/config --disable CONFIG_SYSTEM_REVOCATION_KEYS
scripts/config --disable SYSTEM_REVOCATION_KEYS
scripts/config --disable SYSTEM_TRUSTED_KEYS

hope that this does not affect the module layout & checking
---
ProblemType: Bug
ApportVersion: 2.20.11-0ubuntu82.3
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: giuliano 2142 F.... pulseaudio
 /dev/snd/pcmC1D0p: giuliano 2142 F...m pulseaudio
 /dev/snd/controlC0: giuliano 2142 F.... pulseaudio
CRDA: N/A
CasperMD5CheckResult: pass
CurrentDesktop: ubuntu:GNOME
DistroRelease: Ubuntu 22.04
InstallationDate: Installed on 2022-11-03 (66 days ago)
InstallationMedia: Ubuntu 22.04.1 LTS "Jammy Jellyfish" - Release amd64 (20220809.1)
MachineType: Acer Nitro AN517-55
NonfreeKernelModules: nvidia_modeset nvidia
Package: linux (not installed)
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=it_IT.UTF-8
 SHELL=/bin/bash
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-5.15.0-57-generic root=UUID=f07e25f9-07e7-4a29-a15e-f481aa0ee0f2 ro rootflags=subvol=@ quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 5.15.0-57.63-generic 5.15.74
RelatedPackageVersions:
 linux-restricted-modules-5.15.0-57-generic N/A
 linux-backports-modules-5.15.0-57-generic N/A
 linux-firmware 20220329.git681281e4-0ubuntu3.9
Tags: jammy
Uname: Linux 5.15.0-57-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo wireshark
_MarkForUpload: True
dmi.bios.date: 04/20/2022
dmi.bios.release: 1.6
dmi.bios.vendor: Insyde Corp.
dmi.bios.version: V1.06
dmi.board.asset.tag: Type2 - Board Asset Tag
dmi.board.name: Ignis_ADH
dmi.board.vendor: ADL
dmi.board.version: V1.06
dmi.chassis.type: 10
dmi.chassis.vendor: Acer
dmi.chassis.version: V1.06
dmi.ec.firmware.release: 1.6
dmi.modalias: dmi:bvnInsydeCorp.:bvrV1.06:bd04/20/2022:br1.6:efr1.6:svnAcer:pnNitroAN517-55:pvrV1.06:rvnADL:rnIgnis_ADH:rvrV1.06:cvnAcer:ct10:cvrV1.06:sku0000000000000000:
dmi.product.family: Nitro 5
dmi.product.name: Nitro AN517-55
dmi.product.sku: 0000000000000000
dmi.product.version: V1.06
dmi.sys.vendor: Acer
---
ProblemType: Bug
ApportVersion: 2.20.11-0ubuntu82.3
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: giuliano 2142 F.... pulseaudio
 /dev/snd/pcmC1D0p: giuliano 2142 F...m pulseaudio
 /dev/snd/controlC0: giuliano 2142 F.... pulseaudio
CRDA: N/A
CasperMD5CheckResult: pass
CurrentDesktop: ubuntu:GNOME
DistroRelease: Ubuntu 22.04
InstallationDate: Installed on 2022-11-03 (66 days ago)
InstallationMedia: Ubuntu 22.04.1 LTS "Jammy Jellyfish" - Release amd64 (20220809.1)
MachineType: Acer Nitro AN517-55
NonfreeKernelModules: nvidia_modeset nvidia
Package: linux (not installed)
ProcEnviron:
 TERM=xterm-256color
 PATH=(custom, no user)
 XDG_RUNTIME_DIR=<set>
 LANG=it_IT.UTF-8
 SHELL=/bin/bash
ProcFB: 0 i915drmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-5.15.0-57-generic root=UUID=f07e25f9-07e7-4a29-a15e-f481aa0ee0f2 ro rootflags=subvol=@ quiet splash vt.handoff=7
ProcVersionSignature: Ubuntu 5.15.0-57.63-generic 5.15.74
RelatedPackageVersions:
 linux-restricted-modules-5.15.0-57-generic N/A
 linux-backports-modules-5.15.0-57-generic N/A
 linux-firmware 20220329.git681281e4-0ubuntu3.9
Tags: jammy
Uname: Linux 5.15.0-57-generic x86_64
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo wireshark
_MarkForUpload: True
dmi.bios.date: 04/20/2022
dmi.bios.release: 1.6
dmi.bios.vendor: Insyde Corp.
dmi.bios.version: V1.06
dmi.board.asset.tag: Type2 - Board Asset Tag
dmi.board.name: Ignis_ADH
dmi.board.vendor: ADL
dmi.board.version: V1.06
dmi.chassis.type: 10
dmi.chassis.vendor: Acer
dmi.chassis.version: V1.06
dmi.ec.firmware.release: 1.6
dmi.modalias: dmi:bvnInsydeCorp.:bvrV1.06:bd04/20/2022:br1.6:efr1.6:svnAcer:pnNitroAN517-55:pvrV1.06:rvnADL:rnIgnis_ADH:rvrV1.06:cvnAcer:ct10:cvrV1.06:sku0000000000000000:
dmi.product.family: Nitro 5
dmi.product.name: Nitro AN517-55
dmi.product.sku: 0000000000000000
dmi.product.version: V1.06
dmi.sys.vendor: Acer

Revision history for this message
Giuliano Lotta (giuliano69) wrote :
tags: added: patch
Revision history for this message
Ubuntu Kernel Bot (ubuntu-kernel-bot) wrote : Missing required logs.

This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window:

apport-collect 2000947

and then change the status of the bug to 'Confirmed'.

If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'.

This change has been made by an automated script, maintained by the Ubuntu Kernel Team.

Changed in linux (Ubuntu):
status: New → Incomplete
tags: added: apport-collected jammy
description: updated
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
Giuliano Lotta (giuliano69) wrote : AlsaInfo.txt

apport information

description: updated
Revision history for this message
Giuliano Lotta (giuliano69) wrote : CurrentDmesg.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : IwConfig.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : Lspci.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : Lspci-vt.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : Lsusb.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : Lsusb-t.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : Lsusb-v.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : PaInfo.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : ProcCpuinfo.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : ProcCpuinfoMinimal.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : ProcInterrupts.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : ProcModules.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : PulseList.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote : RfKill.txt

apport information

Revision history for this message
Giuliano Lotta (giuliano69) wrote :

I made a bash script to show the exact way I proceed in the compiling the module with the Pinchard code.
https://github.com/Giuliano69/uvc_driver-for-Quanta-HD-User-Facing-0x0408-0x4035-

BUT I'm facing problem loading the module in the kernel.
with the said bash script, the dmesg after modproble failure shows "failed to validate module [uvcvideo] BTF: -22"

I would gladly test the patched module, but I'm facing difficulties in compiling it.

Does the bash script shows what am I missing ?

I see also that modinfo and cat /proc/version_signature shows different values... (Ubuntu 5.15.0-57.63-generic 5.15.74. vs vermagic: 5.15.0-57-generic SMP mod_unload modversions)

I you could help me in compiling the module, I would be quick in testing it .-))

Revision history for this message
Jeremy (wa113y3s) wrote :

First, enable source code repositories, then fetch the source code with the following in terminal

apt-get source linux-modules-extra-$(uname -r)

Then navigate to the /drivers/media/usb/uvc directory and rename the uvcdriver.c to uvcdriver.old, choose open directory in terminal then

wget https://raw.githubusercontent.com/Giuliano69/uvc_driver-for-Quanta-HD-User-Facing-0x0408-0x4035-/main/uvc_driver.c

make -j4 -C /lib/modules/$(uname -r)/build M=$(pwd) modules
sudo cp uvcvideo.ko /lib/modules/$(uname -r)/kernel/drivers/media/usb/uvc/

Then see if it works

Revision history for this message
Giuliano Lotta (giuliano69) wrote :

Thanks Jeremy, you help solved my issues with compiling the module with Laurent Pinchart modification.
installing with modprobe, the dmesg shows:
[103970.912878] usb 3-6: Found UVC 1.50 device ACER HD User Facing (0408:4035)
[103970.912882] usb 3-6: Forcing UVC version to 1.0a
[103970.949432] input: ACER HD User Facing: ACER HD Us as /devices/pci0000:00/0000:00:14.0/usb3/3-6/3-6:1.0/input/input38
[103970.949630] usbcore: registered new interface driver uvcvideo

Cheese video is working.

BUT audio is NOT working..... any idea ?

Revision history for this message
Giuliano Lotta (giuliano69) wrote :

UPDATE:
after resuming the nobebook, the system crashed with the following message:

usb 3-6: Failed to query (SET_CUR) UVC control 4 on unit 1: -32 (exp. 4)
uvcvideo 3-6:1.0: reset_resume error -5

WHERE / HOW may I find other useful information to debug the problem ?

Giuliano

Revision history for this message
Kolbjorn Blix Dahle (kolbjorn) wrote : [Kernel-packages] [Bug 2000947] Re: UVC Quanta 0408:4035 camera PROBLEM

Just to inform you that the patched also works with ID 0408:4033 Quanta
Computer, Inc. ACER HD User Facing after changing 4035 to 4033.

Revision history for this message
Sandrino Patrulescu (sandrinopatrulescu) wrote :

#19 fixed the problem for me.
I wasn't sure where should I run the make command, so I ran it inside the uvc directory.

I also get the following messages in dmesg when resuming from sleep, but it did not crash or anything:
usb 3-6: Failed to query (SET_CUR) UVC control 4 on unit 1: -32 (exp. 4)
uvcvideo 3-6:1.0: reset_resume error -5

Not sure it is related to this, but my webcam still not working. Here's some info from dmesg and guvcview: https://pastebin.com/SQn7cVnq.

Nonetheless, thank you very much!

Revision history for this message
Giuliano Lotta (giuliano69) wrote :

@Sandrino
Thanks for your reply
-From your pastebin I can NOT understand if your Quanta camera is 0408:4035. Could you check the ID
?

-After copying the module file in the appropriate directory AND giving the command
sudo rmmod uvcvideo && sudo modprobe uvcvideo
the camera worked untill first suspend &resume. I
 had the said error message and the system halted. The halt problem could anyway been generated from the nvidia RTX driver that are also showing some incompatibilities wit wayland....

- At next reboot the new module did NOT worked. Trying with modprobe it didn t load, and dmesg was not giving info.
Very strangely, I resolved using the command
sudo insmod uvcvideo.ko
straight from the directory where the module has been copied.

AFAIK , the modprobe command should use "internally" the insmod command, but clearly something is different.
I'm currently using the camera with zoom and Google Meet

BR
Giuliano

Revision history for this message
Sandrino Patrulescu (sandrinopatrulescu) wrote :

@giuliano69

My builtin camera is indeed 0408:4035 Quanta Computer, Inc. ACER HD User Facing and now it's working.

I was talking about an external (I should have specified that) webcam in the paste.

Revision history for this message
Laurent Pinchart (laurent-pinchart-ideasonboard) wrote :

@kolbjorn could you please provide the output of `lsusb -v -d 0408:4033` (running as root, for instance with sudo, if possible) ? Attaching a file would be preferred to avoid messing up formatting.

Revision history for this message
Giuliano Lotta (giuliano69) wrote :

@jeremy
Hi Jeremy.
with new kernel 5.15.0-58-generic, I removed the linux5.15.0 dir, got the apt-get source linux-modules-extra-$(uname -r), recompiled the module and copied it

Everything is working fine BUT the dmesg claims about not signed module/tainted
[ 3.560011] uvcvideo: loading out-of-tree module taints kernel.
[ 3.560159] uvcvideo: module verification failed: signature and/or required key missing - tainting kernel

Have you any advice on how to sign the module, so to prevent the tainted kernel ?
May the /usr/src/linux-source-5.15.0/debian/*.pem help in the matter ?

BR
Giuliano

Revision history for this message
io (no-such-user) wrote :

@Laurent
I can provide the output of `lsusb -v -d 0408:4033` running as root. It's attached.

Revision history for this message
Douglas (douglas-rauber) wrote :

Same problema here!

I bougth a new Acer Nitro 5, and this problem is very boring.

Revision history for this message
Giuliano Lotta (giuliano69) wrote :

@Douglas
Please follow message #19, download, compile and install the patched usbvideo driver.
The patch is working perfectly (with zoom, chees, skyupe, goggle meet,...)

Don't know when it will be included in the official kernel...

BR
Giuliano

Revision history for this message
Douglas (douglas-rauber) wrote :

Thanks for your support @giuliano69

With a broken heart, I ended up deciding to kiss Linux goodbye. At least for a while.
This process of compiling and searching for solutions does not fit into my day-to-day life.
In addition to the webcam problem, the headset microphone does not work, the video card depends on complex configuration to run on the notebook monitor and on the secondary monitor, the boot had to be corrected in txts, and even so it kept showing the annoying message " not enougth memory".
I need to use MS Teams for my work, and it works with limitations on Linux. So, bye linux, at least for now.

Today linux has -1

:(

Revision history for this message
Giuliano Lotta (giuliano69) wrote :

@Laurent
so far, uvcvideo patch seems fine & working.

which kernel version will "officially" include UVC Quanta 0408:4035 ?

BR
Giuliano

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.