Score:0

Internal laptop camera disconnecting and connecting every 30 seconds

us flag

I really need help on this cause I'm getting crazy, and honestly very disappointed with the stability of ubuntu, because I can't have a normal video-conference with anyone and as you can imagine that is a must nowadays. I searched already a lot in google and here and found no stable solution yet.

Since some months ago, the web internal camera of the laptop simply disconnects after 25-30 seconds and then reconnects again. In some video software the camera reconnects and I have to bear with a blink every 30 seconds and in other platforms such as in zoom the video simply freezes.

Features

  • A Toshiba Satellite laptop
  • Ubuntu 18.04 LTS

Some CLI outputs

$ v4l2-ctl --list-devices
TOSHIBA Web Camera - HD: TOSHIB (usb-0000:00:1a.0-1.3):
    /dev/video0
    /dev/video2
$ v4l2-ctl --device=/dev/video0 --all
Driver Info (not using libv4l2):
    Driver name   : uvcvideo
    Card type     : TOSHIBA Web Camera - HD: TOSHIB
    Bus info      : usb-0000:00:1a.0-1.3
    Driver version: 5.4.151
    Capabilities  : 0x84A00001
        Video Capture
        Metadata Capture
        Streaming
        Extended Pix Format
        Device Capabilities
    Device Caps   : 0x04200001
        Video Capture
        Streaming
        Extended Pix Format
Priority: 2
Video input : 0 (Camera 1: ok)
Format Video Capture:
    Width/Height      : 1280/720
    Pixel Format      : 'MJPG'
    Field             : None
    Bytes per Line    : 0
    Size Image        : 1843200
    Colorspace        : sRGB
    Transfer Function : Default (maps to sRGB)
    YCbCr/HSV Encoding: Default (maps to ITU-R 601)
    Quantization      : Default (maps to Full Range)
    Flags             : 
Crop Capability Video Capture:
    Bounds      : Left 0, Top 0, Width 1280, Height 720
    Default     : Left 0, Top 0, Width 1280, Height 720
    Pixel Aspect: 1/1
Selection: crop_default, Left 0, Top 0, Width 1280, Height 720
Selection: crop_bounds, Left 0, Top 0, Width 1280, Height 720
Streaming Parameters Video Capture:
    Capabilities     : timeperframe
    Frames per second: 30.000 (30/1)
    Read buffers     : 0
                     brightness 0x00980900 (int)    : min=0 max=100 step=1 default=50 value=50
                       contrast 0x00980901 (int)    : min=0 max=100 step=1 default=32 value=32
                     saturation 0x00980902 (int)    : min=0 max=100 step=1 default=32 value=32
                            hue 0x00980903 (int)    : min=-4 max=4 step=1 default=0 value=0
 white_balance_temperature_auto 0x0098090c (bool)   : default=1 value=1
                          gamma 0x00980910 (int)    : min=1 max=16 step=1 default=8 value=8
           power_line_frequency 0x00980918 (menu)   : min=0 max=2 default=1 value=1
      white_balance_temperature 0x0098091a (int)    : min=2800 max=6500 step=1 default=5000 value=5000 flags=inactive
                      sharpness 0x0098091b (int)    : min=0 max=20 step=1 default=4 value=4
         backlight_compensation 0x0098091c (int)    : min=0 max=1 step=1 default=0 value=0
                  exposure_auto 0x009a0901 (menu)   : min=0 max=3 default=3 value=3
         exposure_auto_priority 0x009a0903 (bool)   : default=0 value=1

$ v4l2-ctl --device=/dev/video2 --all
Driver Info (not using libv4l2):
    Driver name   : uvcvideo
    Card type     : TOSHIBA Web Camera - HD: TOSHIB
    Bus info      : usb-0000:00:1a.0-1.3
    Driver version: 5.4.151
    Capabilities  : 0x84A00001
        Video Capture
        Metadata Capture
        Streaming
        Extended Pix Format
        Device Capabilities
    Device Caps   : 0x04A00000
        Metadata Capture
        Streaming
        Extended Pix Format
Priority: 2

$ sudo journalctl  --follow | tee jc.log
-- Logs begin at Wed 2021-10-06 08:33:44 CEST. --
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/input/input37/event6"
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) XINPUT: Adding extended input device "TOSHIBA Web Camera - HD: TOSHIB" (type: KEYBOARD, id 12)
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "xkb_model" "pc105"
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "xkb_layout" "pt"
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (WW) Option "xkb_variant" requires a string value
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (WW) Option "xkb_options" requires a string value
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: is tagged by udev as: Keyboard
Dec 25 14:49:10 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: device is a keyboard
Dec 25 14:49:21 toshiba sudo[16526]:     joao : TTY=pts/0 ; PWD=/home/joao ; USER=root ; COMMAND=/bin/journalctl --follow
Dec 25 14:49:21 toshiba sudo[16526]: pam_unix(sudo:session): session opened for user root by (uid=0)
Dec 25 14:50:18 toshiba kernel: usb 1-1.3: USB disconnect, device number 15
Dec 25 14:50:18 toshiba kernel: uvcvideo: Failed to resubmit video URB (-19).
Dec 25 14:50:18 toshiba cheese[6182]: cheese_preferences_dialog_on_source_change: assertion '_tmp2_ > ((guint) 0)' failed
Dec 25 14:50:18 toshiba kernel: uvcvideo: Failed to resubmit video URB (-19).
Dec 25 14:50:18 toshiba cheese[6182]: cheese_camera_device_get_name: assertion 'CHEESE_IS_CAMERA_DEVICE (device)' failed
Dec 25 14:50:18 toshiba cheese[6182]: g_variant_new_string: assertion 'string != NULL' failed
Dec 25 14:50:18 toshiba cheese[6182]: g_variant_ref_sink: assertion 'value != NULL' failed
Dec 25 14:50:18 toshiba cheese[6182]: g_settings_schema_key_type_check: assertion 'value != NULL' failed
Dec 25 14:50:18 toshiba cheese[6182]: g_variant_get_type_string: assertion 'value != NULL' failed
Dec 25 14:50:18 toshiba cheese[6182]: g_settings_set_value: key 'camera' in 'org.gnome.Cheese' expects type 's', but a GVariant of type '(null)' was given
Dec 25 14:50:18 toshiba cheese[6182]: g_variant_unref: assertion 'value != NULL' failed
Dec 25 14:50:18 toshiba cheese[6182]: cheese_preferences_dialog_setup_resolutions_for_device: assertion 'device != NULL' failed
Dec 25 14:50:18 toshiba kernel: uvcvideo: Failed to resubmit video URB (-19).
Dec 25 14:50:18 toshiba kernel: uvcvideo: Failed to resubmit video URB (-19).
Dec 25 14:50:18 toshiba kernel: uvcvideo: Failed to resubmit video URB (-19).
Dec 25 14:50:18 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) config/udev: removing device TOSHIBA Web Camera - HD: TOSHIB
Dec 25 14:50:18 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "fd" "59"
Dec 25 14:50:18 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: device removed
Dec 25 14:50:18 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) UnloadModule: "libinput"
Dec 25 14:50:18 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) systemd-logind: releasing fd for 13:70
Dec 25 14:50:18 toshiba upowerd[1299]: unhandled action 'unbind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1
Dec 25 14:50:18 toshiba upowerd[1299]: unhandled action 'unbind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0
Dec 25 14:50:18 toshiba upowerd[1299]: unhandled action 'unbind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3
Dec 25 14:50:18 toshiba gnome-shell[1790]: g_array_unref: assertion 'array' failed
Dec 25 14:50:19 toshiba kernel: usb 1-1.3: new high-speed USB device number 16 using ehci-pci
Dec 25 14:50:19 toshiba kernel: usb 1-1.3: New USB device found, idVendor=04f2, idProduct=b448, bcdDevice=49.02
Dec 25 14:50:19 toshiba kernel: usb 1-1.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Dec 25 14:50:19 toshiba kernel: usb 1-1.3: Product: TOSHIBA Web Camera - HD
Dec 25 14:50:19 toshiba kernel: usb 1-1.3: Manufacturer: Namuga
Dec 25 14:50:20 toshiba kernel: uvcvideo: Found UVC 1.00 device TOSHIBA Web Camera - HD (04f2:b448)
Dec 25 14:50:20 toshiba kernel: input: TOSHIBA Web Camera - HD: TOSHIB as /devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/input/input38
Dec 25 14:50:20 toshiba mtp-probe[18900]: checking bus 1, device 16: "/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3"
Dec 25 14:50:20 toshiba mtp-probe[18900]: bus: 1, device: 16 was not an MTP device
Dec 25 14:50:20 toshiba upowerd[1299]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.1
Dec 25 14:50:20 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) config/udev: Adding input device TOSHIBA Web Camera - HD: TOSHIB (/dev/input/event6)
Dec 25 14:50:20 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) TOSHIBA Web Camera - HD: TOSHIB: Applying InputClass "libinput keyboard catchall"
Dec 25 14:50:20 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) Using input driver 'libinput' for 'TOSHIBA Web Camera - HD: TOSHIB'
Dec 25 14:50:20 toshiba upowerd[1299]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0
Dec 25 14:50:20 toshiba upowerd[1299]: unhandled action 'bind' on /sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) systemd-logind: got fd for /dev/input/event6 13:70 fd 59 paused 0
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) TOSHIBA Web Camera - HD: TOSHIB: always reports core events
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "Device" "/dev/input/event6"
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "_source" "server/udev"
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: is tagged by udev as: Keyboard
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: device is a keyboard
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: device removed
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "config_info" "udev:/sys/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.3/1-1.3:1.0/input/input38/event6"
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) XINPUT: Adding extended input device "TOSHIBA Web Camera - HD: TOSHIB" (type: KEYBOARD, id 12)
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "xkb_model" "pc105"
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (**) Option "xkb_layout" "pt"
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (WW) Option "xkb_variant" requires a string value
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (WW) Option "xkb_options" requires a string value
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: is tagged by udev as: Keyboard
Dec 25 14:50:21 toshiba /usr/lib/gdm3/gdm-x-session[1653]: (II) event6  - TOSHIBA Web Camera - HD: TOSHIB: device is a keyboard

$ lsusb -t
/:  Bus 04.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/4p, 5000M
/:  Bus 03.Port 1: Dev 1, Class=root_hub, Driver=xhci_hcd/14p, 480M
    |__ Port 2: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 2: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M
    |__ Port 2: Dev 3, If 2, Class=Human Interface Device, Driver=usbhid, 12M
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/8p, 480M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=ehci-pci/2p, 480M
    |__ Port 1: Dev 2, If 0, Class=Hub, Driver=hub/6p, 480M
        |__ Port 2: Dev 3, If 1, Class=Wireless, Driver=btusb, 12M
        |__ Port 2: Dev 3, If 0, Class=Wireless, Driver=btusb, 12M
        |__ Port 3: Dev 69, If 0, Class=Video, Driver=uvcvideo, 480M
        |__ Port 3: Dev 69, If 1, Class=Video, Driver=uvcvideo, 480M

Problem

enter image description here

Thanks a lot in advance

waltinator avatar
it flag
Watch `sudo journalctl --follow | tee jc.log` for a few minutes while the camera is misbehaving.
us flag
@waltinator thanks a LOT, indeed the instant the problem occurred, the log outputted much more info. I edited the question accordingly, could you kindly take a look? Thanks again
us flag
@waltinator the problem starts at `Dec 25 14:50:18` with `kernel: usb 1-1.3: USB disconnect, device number 15`. Why is USB disconnecting?
nobody avatar
gh flag
i wonder why your camera is somekind recognized as keyboard? I mean this parts `TOSHIBA Web Camera - HD: TOSHIB: is tagged by udev as: Keyboard` and `TOSHIBA Web Camera - HD: TOSHIB: device is a keyboard`
us flag
@nobody indeed very strange, do you have idea how to further investigate that?
us flag
@nobody when I do `xinput list` the camera appears there? How can I remove it?
nobody avatar
gh flag
nope this is normal behaviour. Please can you paste `sudo udevadm test --action=add /sys/class/video4linux/video0` and `sudo udevadm test --action=add /sys/class/video4linux/video1` to https://pastebin.com/
mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.