[S] Driver for an USB to HDMI Adapter

Hi,
i got myself a USB to HDMI converter in order to expand my laptop with an extra port to connect a monitor. But I know, the 15€ I invested aren't quite a lot, so it was clear I would have to search for a driver.

Could anybody support me with information what I actually have to do?
I already called lsusb, but the device seems not to habe a name

Bus 002 Device 014: ID 534d:6021  

Thanks a lot, if somebody has a idea
greeting

Hi,
This should help:
https://wiki.archlinux.org/index.php/DisplayLink#USB_3.0_DL-6xxx,_DL-5xxx,_DL-41xx,_DL-3xxx_Devices

Hmm now I got evdi-git and displaylink installed. But somehow I probably missing something.
When I call xrandr --listproviders there still isn't a new device visible.

Provider 0: id: 0x55 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 3 associated providers: 1 name:Unknown AMD Radeon GPU @ pci:0000:00:01.0
Provider 1: id: 0x90 cap: 0xd, Source Output, Source Offload, Sink Offload crtcs: 0 outputs: 0 associated providers: 1 name:AMD Radeon (TM) R7 M340 @ pci:0000:07:00.0

when I call dmesg -w I get the following by connecting the Adapter

[ 4395.423432] usb 1-2: new high-speed USB device number 7 using xhci_hcd
[ 4395.606487] usb 1-2: New USB device found, idVendor=534d, idProduct=6021, bcdDevice= 1.00
[ 4395.606494] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4395.606496] usb 1-2: Product: usb extscreen
[ 4395.606498] usb 1-2: Manufacturer: MACROSILICON
[ 4395.606499] usb 1-2: SerialNumber: 2018BA7160A0
[ 4395.611239] hid-generic 0003:534D:6021.0012: hiddev3,hidraw5: USB HID v1.10 Device [MACROSILICON usb extscreen] on usb-0000:00:10.0-2/input0
[ 4400.725360] usb 1-2: USB disconnect, device number 7
[ 4401.093383] usb 1-2: new high-speed USB device number 8 using xhci_hcd
[ 4401.276615] usb 1-2: New USB device found, idVendor=534d, idProduct=6021, bcdDevice= 1.00
[ 4401.276623] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4401.276626] usb 1-2: Product: usb extscreen
[ 4401.276628] usb 1-2: Manufacturer: MACROSILICON
[ 4401.276629] usb 1-2: SerialNumber: 2018BA7160A0
[ 4401.283292] hid-generic 0003:534D:6021.0013: hiddev3,hidraw5: USB HID v1.10 Device [MACROSILICON usb extscreen] on usb-0000:00:10.0-2/input0
[ 4401.288278] usb-storage 1-2:1.4: USB Mass Storage device detected
[ 4401.288915] scsi host6: usb-storage 1-2:1.4
[ 4402.304567] scsi 6:0:0:0: CD-ROM            Hjwdz    MS2160           1.01 PQ: 0 ANSI: 0 CCS
[ 4402.305923] sr 6:0:0:0: [sr1] scsi-1 drive
[ 4402.306378] sr 6:0:0:0: Attached scsi CD-ROM sr1


Hi I found a sole comment in one of the Product Descriptions where someone says something like that:

It doesn't work out of the box, the manufacturer provides no driver or support, however its using a Displaylink chip and these do have some support in Linux from DisplayLink themselves. I installed edvi and the displaylink driver from AUR. You also need to create an xorg conf file for it using modesetting, you can find examples online.

Until here I managed to do that my own, but now there is something I do not quite understand. How would i manually check for that?

Finally there was an issue I encountered with lightdm, where the load sequence was causing problems what were resolved by restarting lightdm - basically lightdm was loading before the displaylink module, and you need lightdm to load last, you can edit the displaylink.service to change the load from after to before the display-manager.service as a persistent fix.

so maybe dumb question, how do I restart lightdm without crashing my login-session?


btw. side question, are there known working USB-HDMI Adapter (doesn't need a high refresh rate, plain e.g. VSCODE or Terminal are enough) which definitely works? Maybe I've bought just some botchy electronics-garbage.......

Haha, I have had a tiny Breakthrough. Within TTY1 (root console) I checked for the timestamp status via systemctl of the services displaylink and lightdm. Indeed lighdm was started before, so I stoped and re-started it and now I can detect the Adpater with lsusb

Bus 002 Device 003: ID 534d:6021 MACROSILICON usb extscreen

Sadly xrandr -listproviders still does not recognize it.

now I'm getting some interessting new Info from dmesg -w but I do not unterstand what it means

[33801.451624] [drm] PCIE GART of 256M enabled (table at 0x000000F400000000).
[33801.454894] amdgpu: [powerplay] can't get the mac of 5
[33808.066666] amdgpu: [powerplay] VI should always have 2 performance levels
[33808.145879] amdgpu 0000:07:00.0: GPU pci config reset

Hi @_thomas,
Were you able to make it works?

I have this in the lsusb output:

Bus 002 Device 007: ID 534d:6021

and this in dmesg:

[  915.352570] usb 2-2: USB disconnect, device number 7
[  924.839653] usb 2-1: new high-speed USB device number 8 using xhci_hcd
[  924.988618] usb 2-1: New USB device found, idVendor=534d, idProduct=6021, bcdDevice= 1.00
[  924.988621] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  924.988622] usb 2-1: Product: usb extscreen
[  924.988623] usb 2-1: Manufacturer: MACROSILICON
[  924.988624] usb 2-1: SerialNumber: 2018BA7160A0
[  924.989661] hid-generic 0003:534D:6021.0008: hiddev0,hidraw0: USB HID v1.10 Device [MACROSILICON usb extscreen] on usb-0000:00:14.0-1/input0
[  930.104452] usb 2-1: USB disconnect, device number 8
[  930.491744] usb 2-1: new high-speed USB device number 9 using xhci_hcd
[  930.640848] usb 2-1: New USB device found, idVendor=534d, idProduct=6021, bcdDevice= 1.00
[  930.640851] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  930.640854] usb 2-1: Product: usb extscreen
[  930.640856] usb 2-1: Manufacturer: MACROSILICON
[  930.640857] usb 2-1: SerialNumber: 2018BA7160A0
[  930.642112] hid-generic 0003:534D:6021.0009: hiddev0,hidraw0: USB HID v1.10 Device [MACROSILICON usb extscreen] on usb-0000:00:14.0-1/input0
[  930.643255] usb-storage 2-1:1.4: USB Mass Storage device detected
[  930.643396] scsi host6: usb-storage 2-1:1.4
[  931.656272] scsi 6:0:0:0: CD-ROM            Hjwdz    MS2160           1.01 PQ: 0 ANSI: 0 CCS
[  931.657021] sr 6:0:0:0: [sr0] scsi-1 drive
[  931.684149] sr 6:0:0:0: Attached scsi CD-ROM sr0
[  931.684261] sr 6:0:0:0: Attached scsi generic sg2 type 5

any idea/suggestion?

Thank you.

Yeah "work" is quite a strong word in that case. In the end (after some crazy messing around) I accomplished a refresh rate of somewhat 2-3 frames/second..... and yeah even writing "fast" in a terminal emulator did look nasty for my eyes.
In the end I return the adapter and trashed the entire idea of extending to an other monitor. sadly

I'd like to know more about this "crazy messing around" you did

Well the only thing I can think of really was from when I was a teenager with an American girlfriend just across the border. You know the saying 15' ll get you 20. She wasn't 15, but she was young enough that I still don't have an easy time crossing the border. Her father was a very prominent head of a very large US company and he made things rather difficult with the repressive cops in those parts.

So, whatever you do be careful when you go doing your "crazy messing around". Sometimes those kind of things have a way of blowing back on ya. :wink:

Sorry, I'm not too familiar with North American idioms.

What I am saying is, I also have purchased this exact USB/HDMI capture card and I am unable to make it work in GNU/Linux. It does not show up as a capture device/anything. It only shows up in dmesg and lsusb. It works fine in a Windows environment. I tried many things and I got no results. The thing is, this adapter is UVC compliant so I don't know why it does not work.

And any clues will be helpful.

$ lsusb | grep MACROSILICON
Bus 003 Device 002: ID 534d:2109 MACROSILICON
[14165.646181] usb 3-1: new high-speed USB device number 2 using xhci_hcd
[14165.792426] usb 3-1: New USB device found, idVendor=534d, idProduct=2109, bcdDevice=21.00
[14165.792428] usb 3-1: New USB device strings: Mfr=1, Product=0, SerialNumber=0
[14165.792429] usb 3-1: Manufacturer: MACROSILICON
[14165.855727] hid-generic 0003:534D:2109.0004: hiddev0,hidraw3: USB HID v1.10 Device [MACROSILICON] on usb-0000:2a:00.3-1/input4
[14166.424072] mc: Linux media interface: v0.10
[14166.441032] videodev: Linux video capture interface: v2.00
[14166.447172] usbcore: registered new interface driver snd-usb-audio
[14166.461520] usbcore: registered new interface driver uvcvideo
[14166.461521] USB Video Class driver (1.1.1)

not sure what to do next tbh. i even read the arch wiki about webcams and tried things but it didn't help.

The search results on this adapter don't look very encouraging. You might want to consider returning it if you can get a refund. It doesn't appear to be well supported in Linux from the search I performed.

returning it is not an option for me. i already opened it up anyways and had a look at the pcb.

i saw an article where it is demonstrated that it works tho, (although not too well)

edit: i just noticed that it does show up as an audio device, so that's something

Okay, so, I decided to boot Manjaro up in a virtual machine and pass in the USB device and... it worked fine.

So it seems like something is misconfigured or missing in my installation of Manjaro. idk what.

I was experiencing the same problem. My capture card was working fine on a Linux Mint Virtual Machine (running with VMware Workstation) but not on the host system.

I fixed this problem by downgrading my Kernel from 5.7.9-1 to 5.6.19-2, and the capture card began to work again without problems.

Linux manjaro 5.6.19-2-MANJARO #1 SMP PREEMPT Wed Jun 17 22:24:52 UTC 2020 x86_64 GNU/Linux
1 Like

that worked. thanks!

(i went from 5.4 to 5.7 and it didn't but going back to 5.6 fixed it)

1 Like

I spent some time debugging this behavior and figured out that uvcvideo isn't being triggered when the Capture Card is plugged in on Kernel 5.7.9 and 5.4.52 but it does on 5.6.19. The uvcvideo driver was loaded in both cases.

I don't know why this is happening but perhaps someone here with more experience does.

Kernel 5.7.9 & Kernel 5.4.52

[ 1144.379552] usb 1-8: USB disconnect, device number 6
[ 1146.334230] usb 1-8: new high-speed USB device number 7 using xhci_hcd
[ 1146.477455] usb 1-8: New USB device found, idVendor=534d, idProduct=2109, bcdDevice=21.00
[ 1146.477460] usb 1-8: New USB device strings: Mfr=1, Product=0, SerialNumber=0
[ 1146.477464] usb 1-8: Manufacturer: MACROSILICON
[ 1146.481128] hid-generic 0003:534D:2109.000A: hiddev2,hidraw4: USB HID v1.10 Device [MACROSILICON] on usb-0000:00:14.0-8/input4

Kernel 5.6.19

[   92.422420] usb 1-8: new high-speed USB device number 5 using xhci_hcd
[   92.565474] usb 1-8: New USB device found, idVendor=534d, idProduct=2109, bcdDevice=21.00
[   92.565480] usb 1-8: New USB device strings: Mfr=1, Product=0, SerialNumber=0
[   92.565483] usb 1-8: Manufacturer: MACROSILICON
[   92.566665] uvcvideo: Found UVC 1.00 device <unnamed> (534d:2109)
[   92.567638] uvcvideo 1-8:1.0: Entity type for entity Processing 2 was not initialized!
[   92.567643] uvcvideo 1-8:1.0: Entity type for entity Camera 1 was not initialized!
[   92.570353] hid-generic 0003:534D:2109.0008: hiddev2,hidraw4: USB HID v1.10 Device [MACROSILICON] on usb-0000:00:14.0-8/input4
➜  ~ lsmod | grep uvc
uvcvideo              114688  0
videobuf2_vmalloc      20480  1 uvcvideo
videobuf2_v4l2         28672  1 uvcvideo
videobuf2_common       57344  2 videobuf2_v4l2,uvcvideo
videodev              274432  3 videobuf2_v4l2,uvcvideo,videobuf2_common
mc                     61440  5 videodev,snd_usb_audio,videobuf2_v4l2,uvcvideo,videobuf2_common

Maybe you should file a kernel bug report.

You could work around the issue on a newer kernel by writing a service to load ucvideo at boot. Or, I guess a simpler method might be to add it to /etc/modules-load.d

1 Like

Hi @_thomas, can you share what is the crazy messing around you did ? I didn't do enough digging around before getting this device. I am not even, sure if this device is displaylink compatible. It does show up as an audio device for me. Playing around with different kernel versions didn't help either( Didn't realize @Kyuunex was talking about a hdmi capture card).

Forum kindly sponsored by