HD driver for a HD camera

Hello community,

I purchased a little Besser Microscope wich has behind the optics (apparently) common HD camera. It works fine in all apps (tried like 10) in a basic 640x480 resolution, but I’m unable to switch it to HD. Best message I get from Kamerka which suggest, that the driver only supports 640x480. After a lot of browsing I think the issue is actually related to the driver.

The camera is 2 MPx with claimed support of 1920x1080. Reading the documentation and the asterix :grinning:, the HD resolution is interpolated and the native resolution is actually 1280x720.

oak@linux:/etc # lsusb | grep Micros
Bus 005 Device 005: ID 05e3:f12a Genesys Logic, Inc. Digital Microscope

oak@linux:~/Coding/Heat Loss> lsusb --verbose | grep "Width\|Height"
        wWidth                            640
        wHeight                           480
        wWidth                            320

I have no idea what driver it uses, probably one of these:

oak@linux:/etc # lsmod | grep vide
uvcvideo              122880  0
videobuf2_vmalloc      20480  1 uvcvideo
videobuf2_memops       20480  1 videobuf2_vmalloc
videobuf2_v4l2         28672  1 uvcvideo
videobuf2_common       69632  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev              274432  3 videobuf2_v4l2,uvcvideo,videobuf2_common
mc                     61440  4 videodev,videobuf2_v4l2,uvcvideo,videobuf2_common
video                  61440  1 asus_wmi
usbcore               331776  4 xhci_hcd,usbhid,uvcvideo,xhci_pci

I haven’t found really anything helpful except using some analytics tools that are not available in OpenSUSE repository. Any ideas how to use other driver capable of higher resolutions?

In the worse case scenario I will return the product, since I have several valid claim points (like “omitted” the asterix about interpolation on the box and in the marketing specs).

@oakld Hi, I would suspect the actual hardware, on GNOME with cheese I get a resolution of 1280x720 with the built in camera;

inxi -Gxxz
Graphics:
  Device-1: AMD Mullins [Radeon R3 Graphics] vendor: Hewlett-Packard driver: amdgpu v: kernel
    arch: GCN-2 ports: active: eDP-1 empty: HDMI-A-1,VGA-1 bus-ID: 00:01.0 chip-ID: 1002:9850
  Device-2: Chicony HP TrueVision HD type: USB driver: uvcvideo bus-ID: 1-1.4:3
    chip-ID: 04f2:b56c

you can also install luvcview and use it:
luvcview

There is also a gtk frontend:
guvcview

and a qt-frontend
guvcview-qt5-lang

Both with a lang rpm

Hmm, I wouldn’t think that such a brand (or so I thought I know Besser as a very established brand) would dare to claim that chip is 2 MPx and write there resolutions they can’t achieve, but as shown with the FullHD, it’s possible. But I don’t think they could do it with a 640x480 chip. The optics are actually quite capable for the tiny device it is. But with such a low resolution, I’d return the product.
The inxi command output:

oak@linux:~/Coding/> inxi -Gxxz
Graphics:
  Device-1: NVIDIA TU104 [GeForce RTX 2070 SUPER] vendor: Gigabyte
    driver: nvidia v: 545.29.06 arch: Turing pcie: speed: 2.5 GT/s lanes: 16
    ports: active: none off: DP-2 empty: DP-1,DP-3,HDMI-A-1 bus-ID: 07:00.0
    chip-ID: 10de:1e84
  Device-2: Genesys Logic Digital Microscope type: USB driver: uvcvideo
    bus-ID: 5-2:8 chip-ID: 05e3:f12a
  Display: x11 server: X.Org v: 1.21.1.4 with: Xwayland v: 22.1.5
    compositor: kwin_x11 driver: X: loaded: nvidia gpu: nvidia,nvidia-nvswitch
    display-ID: :0 screens: 1
  Screen-1: 0 s-res: 3840x2160 s-dpi: 109
  Monitor-1: DP-2 note: disabled model: Philips PHL BDM4037U res: 3840x2160
    dpi: 110 diag: 1015mm (40")
  API: OpenGL v: 4.6.0 NVIDIA 545.29.06 renderer: NVIDIA GeForce RTX 2070
    SUPER/PCIe/SSE2 direct render: Yes

I wrote originally I can’t see it in the output, but it helps to actually connect the device to the computer :grinning:

I installed luvcview and it’s qt frontend, but it doesn’t help with the driver. It looks like all the other apps, like Kamerka or OSB-studio. In some applications, I can set different standards (PAL, SECAM, PAL-N,…), tried that too, didn’t help.

I have two devices - /dev/video0 and /dev/video1, but the 2nd device doesn’t produce any picture and most in most of the apps I’m unable to even select it in the settings.

For demonstration, this is how it looks in Kamerka, trying to force to use 1280x720 px:


The text height of the “100” text is like 0.5mm high, it’s quite impressive in that matter. If the device had higher resolution, it would be really good science toy for a kid.

Try to use it with TW or Leap + new kernel from kernel:stable:backport.