USB Web cam recommendations for Librem Mini

I need to purchase a web cam for my Librem Mini and thought I throw this question out to the forum users for recommendations.

I’ve had good luck with Logitech devices in the past. I’d prefer something with a hardware on/off switch if that even exists.

Anyone have a favorite USB web cam that works well with PureOS? My budget is $50 or less.

Here is a list of linux compatible web cameras I found to serve as a starting point.

1 Like

Logitech webcams

I’ve read that the C920 is an old, but fairly stable choice. The C922 is supposed to be the successor to it but at ~33-50% more cost and with varying degrees of success. I’ve not tried either model but with your stated budget, the C920 would likely work for you with its current sale at 54.99 USD (at the time of writing, otherwise 69.99 USD regular price).

Webcam with a hardware switch

I don’t think you’ll find one with a hardware switch. The most you’ll likely find are ones with camera covers, which aren’t the same thing.

Assuming that unplugging the device when it’s not in use is not practical (for example, it may be mounted behind a television or monitor on the wall), what you can try instead is to get a USB extension cable with a switch (For example, this Cable Matters USB 3 type A cable (Amazon) – I have not tried this myself). Just make sure it supports both power and data throughput.

DSLR or mirrorless camera as a webcam

If you have a DSLR or mirrorless camera, you may be able to set it up to work as a webcam.

The following links are what I used to make it work:

Here’s what that looks like in Mpv (on the right):

I tested this method with a Fujifilm X-T3 on PureOS Byzantium with the latest system updates (as of 2025-02-27) on a Librem 14 connected over USB C on the left port.

The screenshot is from a different computer with an Ubuntu derivative distro, but the result is the same.

Note: One caveat is that only one program can access the device at a time. For example, if Mpv is accessing it, your web browser will be unable to use it. If this does happen, just close the program claiming the device and that should free it up for the other program.

Troubleshooting

If you find that gphoto2 is unable to claim the device with the following command and error message:

$ gphoto2 --get-config /main/capturesettings/liveviewsize && gphoto2 --set-config-index liveviewsize="0" && gphoto2 --get-config /main/capturesettings/liveviewsize

*** Error ***
An error occurred in the io-library ('Could not claim the USB device'): Could not claim interface 0 (Device or resource busy). Make sure no other program (gvfs-gphoto2-volume-monitor) or kernel module (such as sdc2xx, stv680, spca50x) is using the device and you have read/write access to the device.

*** Error ***
An error occurred in the io-library ('Could not claim the USB device'): Could not claim interface 0 (Device or resource busy). Make sure no other program (gvfs-gphoto2-volume-monitor) or kernel module (such as sdc2xx, stv680, spca50x) is using the device and you have read/write access to the device.
*** Error (-53: 'Could not claim the USB device') ***

For debugging messages, please use the --debug option.
Debugging messages may help finding a solution to your problem.
If you intend to send any error or debug messages to the gphoto
developer mailing list <gphoto-devel@lists.sourceforge.net>, please run
gphoto2 as follows:

    env LANG=C gphoto2 --debug --debug-logfile=my-logfile.txt --get-config /main/capturesettings/liveviewsize

Please make sure there is sufficient quoting around the arguments.

then you should run the following to get the gphoto2 processes claiming the device:

$ ps aux | grep gphoto
pureosuser        2814  0.0  0.0 256016 10068 ?        SNsl 13:24   0:00 /usr/libexec/gvfs-gphoto2-volume-monitor
pureosuser       40924  0.5  0.0 597328 13748 ?        SNl  16:35   0:00 /usr/libexec/gvfsd-gphoto2 --spawner :1.17 /org/gtk/gvfs/exec_spaw/5
pureosuser       40984  0.0  0.0  19016  2304 pts/9    SN+  16:35   0:00 grep --color=auto gphoto

The process IDs are what you need here, which are 2814 and 40924 in this case. These numbers will likely not be the same for you as these are “randomly” generated.

You need to kill these processes and then re-run the previous gphoto2 command.

$ kill -9 2814 40924
$ gphoto2 --get-config /main/capturesettings/liveviewsize && gphoto2 --set-config-index liveviewsize="0" && gphoto2 --get-config /main/capturesettings/liveviewsize
2 Likes

I use a Logitech C922 with Qubes OS:

Related:

2 Likes

Can’t speak for PureOS but with Ubuntu Mrs Wade has a Logitech C270 that should be within your budget. Purchased a couple of years ago but still seems to be available.

I have a Sony webcam that I scrounged from one of our TVs when Sony dropped support for video calling on the TV. May well not be available any more though.

I use a USB hub where each port has an on-off switch. For belt-and-braces I also simply keep the webcam unplugged when not in use. For my level of paranoia, that obviates the need for a camera cover (particularly as the camera cover doesn’t really address audio surveillance anyway).

Edit: … to be clear, this does not take into account the Librem Mini. I don’t own one.

2 Likes

I didn’t think about Qubes compatibility as a future proofing measure, thanks for that info.

1 Like