Support for LG Ultrafine 5K monitor

Can you tell us which other cables you’ve tried that didn’t work? I have tried everything from Apple’s $200 pro cable, to all the other TB4 certified ones, short and long, and none works.

I’m suspecting that it’s Ubuntu that’s doing something different (or Xorg vs Wayland) since all those cables work wonderfully under Windows on the same machine.

Not anymore! It used to work initially, but now, blank screen and lots of errors in dmesg. I upgraded my board to 12th gen. No difference on the 5K display. However, my LG 4K display no longer loses connection if I plug in/out the power next to it. That’s an improvement!

I just used the one recommended above from the previous poster and linked in my post. I didn’t really try any other cables because that one “just worked”.

I just downloaded the Kubuntu and Ubuntu images and neither works with the monitor, using 3 different cables. Something fishy going on here.

I have the USB C adapters on the right side (power button side) of the laptop, the monitor is plugged into the one closest to the touch pad. I’m typing this on that setup now.

Do you mind pasting your dmesg log here?

This is me unplugging and plugging it back in

[ 6949.167672] pcieport 0000:00:07.1: pciehp: Slot(0-1): Link Down
[ 6949.167713] pcieport 0000:00:07.1: pciehp: Slot(0-1): Card not present
[ 6949.167808] xhci_hcd 0000:2e:00.0: remove, state 4
[ 6949.167862] usb usb6: USB disconnect, device number 1
[ 6949.167891] usb 6-1: USB disconnect, device number 2
[ 6949.167916] usb 6-1.1: USB disconnect, device number 5
[ 6949.219909] usb 6-1.4: USB disconnect, device number 3
[ 6949.219920] usb 6-1.4.3: USB disconnect, device number 4
[ 6949.332645] xhci_hcd 0000:2e:00.0: USB bus 6 deregistered
[ 6949.332726] xhci_hcd 0000:2e:00.0: xHCI host controller not responding, assume dead
[ 6949.332749] xhci_hcd 0000:2e:00.0: remove, state 1
[ 6949.332760] usb usb5: USB disconnect, device number 1
[ 6949.332764] usb 5-2: USB disconnect, device number 2
[ 6949.332768] usb 5-2.4: USB disconnect, device number 3
[ 6949.332772] usb 5-2.4.1: USB disconnect, device number 4
[ 6949.363189] usb 5-2.4.2: USB disconnect, device number 5
[ 6949.603631] xhci_hcd 0000:2e:00.0: Host halt failed, -19
[ 6949.603643] xhci_hcd 0000:2e:00.0: Host not accessible, reset failed.
[ 6949.606938] xhci_hcd 0000:2e:00.0: USB bus 5 deregistered
[ 6949.638811] pci 0000:2e:00.0: Removing from iommu group 20
[ 6949.642273] pci_bus 0000:2e: busn_res: [bus 2e] is released
[ 6949.670710] pci 0000:2d:02.0: Removing from iommu group 19
[ 6949.671827] pci_bus 0000:2d: busn_res: [bus 2d-2e] is released
[ 6949.702500] pci 0000:2c:00.0: Removing from iommu group 18
[ 6962.176181] pcieport 0000:00:07.1: pciehp: Slot(0-1): Card present
[ 6962.176187] pcieport 0000:00:07.1: pciehp: Slot(0-1): Link Up
[ 6962.314145] pci 0000:2c:00.0: [8086:15ef] type 01 class 0x060400
[ 6962.314233] pci 0000:2c:00.0: enabling Extended Tags
[ 6962.314453] pci 0000:2c:00.0: supports D1 D2
[ 6962.314456] pci 0000:2c:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 6962.314644] pci 0000:2c:00.0: 8.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x4 link at 0000:00:07.1 (capable of 31.504 Gb/s with 8.0 GT/s PCIe x4 link)
[ 6962.314901] pci 0000:2c:00.0: Adding to iommu group 18
[ 6962.315046] pcieport 0000:00:07.1: ASPM: current common clock configuration is inconsistent, reconfiguring
[ 6962.326205] pci 0000:2c:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 6962.326431] pci 0000:2d:02.0: [8086:15ef] type 01 class 0x060400
[ 6962.326517] pci 0000:2d:02.0: enabling Extended Tags
[ 6962.326725] pci 0000:2d:02.0: supports D1 D2
[ 6962.326728] pci 0000:2d:02.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 6962.327079] pci 0000:2d:02.0: Adding to iommu group 19
[ 6962.327276] pci 0000:2c:00.0: PCI bridge to [bus 2d-55]
[ 6962.327288] pci 0000:2c:00.0: bridge window [io 0x0000-0x0fff]
[ 6962.327295] pci 0000:2c:00.0: bridge window [mem 0x00000000-0x000fffff]
[ 6962.327306] pci 0000:2c:00.0: bridge window [mem 0x00000000-0x000fffff 64bit pref]
[ 6962.327311] pci 0000:2d:02.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[ 6962.327511] pci 0000:2e:00.0: [8086:15f0] type 00 class 0x0c0330
[ 6962.327543] pci 0000:2e:00.0: reg 0x10: [mem 0x00000000-0x0000ffff]
[ 6962.327634] pci 0000:2e:00.0: enabling Extended Tags
[ 6962.327842] pci 0000:2e:00.0: supports D1 D2
[ 6962.327844] pci 0000:2e:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[ 6962.327989] pci 0000:2e:00.0: 8.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x4 link at 0000:00:07.1 (capable of 31.504 Gb/s with 8.0 GT/s PCIe x4 link)
[ 6962.328208] pci 0000:2e:00.0: Adding to iommu group 20
[ 6962.328385] pci 0000:2d:02.0: PCI bridge to [bus 2e-55]
[ 6962.328397] pci 0000:2d:02.0: bridge window [io 0x0000-0x0fff]
[ 6962.328403] pci 0000:2d:02.0: bridge window [mem 0x00000000-0x000fffff]
[ 6962.328414] pci 0000:2d:02.0: bridge window [mem 0x00000000-0x000fffff 64bit pref]
[ 6962.328418] pci_bus 0000:2e: busn_res: [bus 2e-55] end is updated to 2e
[ 6962.328426] pci_bus 0000:2d: busn_res: [bus 2d-55] end is updated to 2e
[ 6962.328442] pci 0000:2c:00.0: BAR 14: assigned [mem 0x6e000000-0x7a1fffff]
[ 6962.328446] pci 0000:2c:00.0: BAR 15: assigned [mem 0x6020000000-0x603bffffff 64bit pref]
[ 6962.328450] pci 0000:2c:00.0: BAR 13: assigned [io 0x5000-0x5fff]
[ 6962.328454] pci 0000:2d:02.0: BAR 14: assigned [mem 0x6e000000-0x7a1fffff]
[ 6962.328457] pci 0000:2d:02.0: BAR 15: assigned [mem 0x6020000000-0x603bffffff 64bit pref]
[ 6962.328460] pci 0000:2d:02.0: BAR 13: assigned [io 0x5000-0x5fff]
[ 6962.328464] pci 0000:2e:00.0: BAR 0: assigned [mem 0x6e000000-0x6e00ffff]
[ 6962.328473] pci 0000:2d:02.0: PCI bridge to [bus 2e]
[ 6962.328477] pci 0000:2d:02.0: bridge window [io 0x5000-0x5fff]
[ 6962.328486] pci 0000:2d:02.0: bridge window [mem 0x6e000000-0x7a1fffff]
[ 6962.328492] pci 0000:2d:02.0: bridge window [mem 0x6020000000-0x603bffffff 64bit pref]
[ 6962.328503] pci 0000:2c:00.0: PCI bridge to [bus 2d-2e]
[ 6962.328508] pci 0000:2c:00.0: bridge window [io 0x5000-0x5fff]
[ 6962.328516] pci 0000:2c:00.0: bridge window [mem 0x6e000000-0x7a1fffff]
[ 6962.328522] pci 0000:2c:00.0: bridge window [mem 0x6020000000-0x603bffffff 64bit pref]
[ 6962.328533] pcieport 0000:00:07.1: PCI bridge to [bus 2c-55]
[ 6962.328536] pcieport 0000:00:07.1: bridge window [io 0x5000-0x5fff]
[ 6962.328541] pcieport 0000:00:07.1: bridge window [mem 0x6e000000-0x7a1fffff]
[ 6962.328546] pcieport 0000:00:07.1: bridge window [mem 0x6020000000-0x603bffffff 64bit pref]
[ 6962.328602] pcieport 0000:2c:00.0: enabling device (0000 → 0003)
[ 6962.329070] pcieport 0000:2d:02.0: enabling device (0000 → 0003)
[ 6962.330133] pci 0000:2e:00.0: enabling device (0000 → 0002)
[ 6962.330940] xhci_hcd 0000:2e:00.0: xHCI Host Controller
[ 6962.330976] xhci_hcd 0000:2e:00.0: new USB bus registered, assigned bus number 5
[ 6962.332372] xhci_hcd 0000:2e:00.0: hcc params 0x200077c1 hci version 0x110 quirks 0x0000000200009810
[ 6962.333096] xhci_hcd 0000:2e:00.0: xHCI Host Controller
[ 6962.333105] xhci_hcd 0000:2e:00.0: new USB bus registered, assigned bus number 6
[ 6962.333113] xhci_hcd 0000:2e:00.0: Host supports USB 3.1 Enhanced SuperSpeed
[ 6962.333205] usb usb5: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.19
[ 6962.333213] usb usb5: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 6962.333218] usb usb5: Product: xHCI Host Controller
[ 6962.333222] usb usb5: Manufacturer: Linux 5.19.0-26-generic xhci-hcd
[ 6962.333226] usb usb5: SerialNumber: 0000:2e:00.0
[ 6962.333618] hub 5-0:1.0: USB hub found
[ 6962.333637] hub 5-0:1.0: 2 ports detected
[ 6962.333889] usb usb6: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.19
[ 6962.333894] usb usb6: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 6962.333897] usb usb6: Product: xHCI Host Controller
[ 6962.333899] usb usb6: Manufacturer: Linux 5.19.0-26-generic xhci-hcd
[ 6962.333901] usb usb6: SerialNumber: 0000:2e:00.0
[ 6962.334376] hub 6-0:1.0: USB hub found
[ 6962.334389] hub 6-0:1.0: 2 ports detected
[ 6962.590052] usb 5-2: new high-speed USB device number 2 using xhci_hcd
[ 6962.749246] usb 5-2: New USB device found, idVendor=043e, idProduct=9a61, bcdDevice=52.50
[ 6962.749255] usb 5-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 6962.749258] usb 5-2: Product: USB2.1 Hub
[ 6962.749261] usb 5-2: Manufacturer: LG Electronics Inc.
[ 6962.750721] hub 5-2:1.0: USB hub found
[ 6962.753838] hub 5-2:1.0: 4 ports detected
[ 6962.878302] usb 6-1: new SuperSpeed USB device number 2 using xhci_hcd
[ 6962.901965] usb 6-1: New USB device found, idVendor=043e, idProduct=9a60, bcdDevice=52.50
[ 6962.902002] usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 6962.902045] usb 6-1: Product: USB3.1 Hub
[ 6962.902049] usb 6-1: Manufacturer: LG Electronics Inc.
[ 6962.904894] hub 6-1:1.0: USB hub found
[ 6962.905262] hub 6-1:1.0: 4 ports detected
[ 6963.070049] usb 5-2.4: new high-speed USB device number 3 using xhci_hcd
[ 6963.194751] usb 5-2.4: New USB device found, idVendor=043e, idProduct=9a73, bcdDevice= 1.00
[ 6963.194761] usb 5-2.4: New USB device strings: Mfr=0, Product=0, SerialNumber=1
[ 6963.194764] usb 5-2.4: SerialNumber: 98000089ABD1
[ 6963.196155] hub 5-2.4:1.0: USB hub found
[ 6963.196205] hub 5-2.4:1.0: 3 ports detected
[ 6963.278231] usb 6-1.4: new SuperSpeed USB device number 3 using xhci_hcd
[ 6963.298728] usb 6-1.4: New USB device found, idVendor=043e, idProduct=9a71, bcdDevice= 1.00
[ 6963.298744] usb 6-1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 6963.302163] hub 6-1.4:1.0: USB hub found
[ 6963.302293] hub 6-1.4:1.0: 3 ports detected
[ 6963.486059] usb 5-2.4.1: new high-speed USB device number 4 using xhci_hcd
[ 6963.606287] usb 5-2.4.1: New USB device found, idVendor=043e, idProduct=9a66, bcdDevice= 0.03
[ 6963.606297] usb 5-2.4.1: New USB device strings: Mfr=3, Product=1, SerialNumber=0
[ 6963.606300] usb 5-2.4.1: Product: LG UltraFine Display Audio
[ 6963.606303] usb 5-2.4.1: Manufacturer: LG Electronics Inc.
[ 6964.514191] usb 6-1.4.3: new SuperSpeed USB device number 4 using xhci_hcd
[ 6964.534843] usb 6-1.4.3: LPM exit latency is zeroed, disabling LPM.
[ 6964.535588] usb 6-1.4.3: New USB device found, idVendor=043e, idProduct=9a68, bcdDevice= 2.23
[ 6964.535596] usb 6-1.4.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 6964.535600] usb 6-1.4.3: Product: LG UltraFine Display Camera
[ 6964.535603] usb 6-1.4.3: Manufacturer: LG Electronlcs Inc.
[ 6964.539028] usb 6-1.4.3: Found UVC 1.10 device LG UltraFine Display Camera (043e:9a68)
[ 6964.550002] input: LG UltraFine Display Camera as /devices/pci0000:00/0000:00:07.1/0000:2c:00.0/0000:2d:02.0/0000:2e:00.0/usb6/6-1/6-1.4/6-1.4.3/6-1.4.3:1.0/input/input48
[ 6964.553203] hid-generic 0003:043E:9A68.0022: hiddev2,hidraw9: USB HID v1.01 Device [LG Electronlcs Inc. LG UltraFine Display Camera] on usb-0000:2e:00.0-1.4.3/input2
[ 6966.662111] usb 5-2.4.2: new full-speed USB device number 5 using xhci_hcd
[ 6966.768248] usb 5-2.4.2: New USB device found, idVendor=043e, idProduct=9a70, bcdDevice= 4.13
[ 6966.768263] usb 5-2.4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 6966.768268] usb 5-2.4.2: Product: LG UltraFine Display Controls
[ 6966.768272] usb 5-2.4.2: Manufacturer: LG Electronics Inc.
[ 6966.787158] hid-generic 0003:043E:9A70.0023: hiddev3,hidraw10: USB HID v1.11 Device [LG Electronics Inc. LG UltraFine Display Controls] on usb-0000:2e:00.0-2.4.2/input0
[ 6966.788292] hid-generic 0003:043E:9A70.0024: hiddev4,hidraw11: USB HID v1.11 Device [LG Electronics Inc. LG UltraFine Display Controls] on usb-0000:2e:00.0-2.4.2/input1
[ 6966.789649] hid-generic 0003:043E:9A70.0025: hiddev5,hidraw12: USB HID v1.11 Device [LG Electronics Inc. LG UltraFine Display Controls] on usb-0000:2e:00.0-2.4.2/input2
[ 6968.430311] usb 6-1.1: new SuperSpeed USB device number 5 using xhci_hcd
[ 6968.454538] usb 6-1.1: LPM exit latency is zeroed, disabling LPM.
[ 6968.454812] usb 6-1.1: config 1 interface 2 altsetting 0 endpoint 0x89 has an invalid bInterval 81, changing to 10
[ 6968.455201] usb 6-1.1: New USB device found, idVendor=0fd9, idProduct=0078, bcdDevice= 1.00
[ 6968.455205] usb 6-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=11
[ 6968.455208] usb 6-1.1: Product: Elgato Facecam
[ 6968.455211] usb 6-1.1: Manufacturer: Elgato
[ 6968.455213] usb 6-1.1: SerialNumber: FW52K1A13393
[ 6968.459409] usb 6-1.1: Found UVC 1.10 device Elgato Facecam (0fd9:0078)
[ 6968.544024] input: Elgato Facecam: Elgato Facecam as /devices/pci0000:00/0000:00:07.1/0000:2c:00.0/0000:2d:02.0/0000:2e:00.0/usb6/6-1/6-1.1/6-1.1:1.0/input/input49
[ 6968.547456] hid-generic 0003:0FD9:0078.0026: hiddev6,hidraw13: USB HID v1.01 Device [Elgato Elgato Facecam] on usb-0000:2e:00.0-1.1/input2

There is no mention of LG UltraFine 5K (note the 5K) anywhere in your logs! Are you sure that’s what you screen is. There isn’t any thunderbolt lines in there either.

Specifically, I’m looking for this line:

[ 1111.860826] thunderbolt 0-3: new device found, vendor=0x1e device=0x1114
[ 1111.860838] thunderbolt 0-3: LG Electronics UltraFine 5K

I have that in my logs as does @software_developer

If I disconnect my Linux laptop and connect the Mac, this is what it tells me so ¯_(ツ)_/¯ you tell me:

LG UltraFine:
          Resolution: 5120 x 2880 (5K/UHD+ - Ultra High Definition Plus)
          UI Looks like: 2560 x 1440
          Framebuffer Depth: 30-Bit Color (ARGB2101010)
          Main Display: Yes
          Mirror: Off
          Online: Yes
          Rotation: Supported
          Automatically Adjust Brightness: Yes

Thanks for this. What do you see in your Mac System Report under Thunderbolt? Here’s mine:

UltraFine 5K:

  Vendor Name:  LG Electronics
  Device Name:  UltraFine 5K
  Mode: Thunderbolt 3
  Device ID:    0x1114
  Vendor ID:    0x1E
  Device Revision:      0x2
  UID:  0x001E5F0770FA2500
  Route String: 1
  Firmware Version:     43.1
  Port (Upstream):
  Status:       Device connected
  Link Status:  0x2
  Speed:        Up to 40 Gb/s x1
  Current Link Width:   0x2
  Link Controller Firmware Version:     1.23.0

EDIT: I’m just trying to see why given (supposedly) the same exact hardware, one of us can get it to work and others can’t.

I have encountered some strange occurrences.

First, suddenly the LG UltraFine 5K is now working using Arch on kernel 6.0.11. I’ve been posting on this i915 issue thread and while troubleshooting it started to magically work.

Second, a new issue arose. Before when the display wasn’t working and it was disconnected, my 35W charger worked at charging the laptop. When I connected both, even when it wasn’t working, I wasn’t getting any power delivery (orange LED is on). When the display started to magically work, all charging ceased to work. I would connect just my 35W charger, or my 65W charger, or just the display which is supposed to provide 96W charging, and none of them are charging the laptop battery. Any charger when connected (including display) will show the orange LED which is meant to indicate charging, but the battery isn’t charging.

I feel like something went amiss when the display started working; all the charging ceased to work. I’m not sure if this is a software or a hardware issue at this point.

Edit:

Fixed charging issue by disconnecting and reconnecting the battery. However the display no longer registers in Linux, at least on battery levels between 0-75%. Will report back on a full charge.

Edit 2:

The display is not working on full charge (well 96% since the charging stops at around that point).

2 Likes

Also here’s the output of dmesg when the display is working:

[   39.698810] thunderbolt 1-0:3.1: new retimer found, vendor=0x8087 device=0x15ee
[   40.348846] thunderbolt 1-3: new device found, vendor=0x1e device=0x1114
[   40.348857] thunderbolt 1-3: LG Electronics UltraFine 5K
[   40.599036] pcieport 0000:00:07.3: pciehp: Slot(6): Card present
[   40.599040] pcieport 0000:00:07.3: pciehp: Slot(6): Link Up
[   40.730718] pci 0000:7d:00.0: [8086:15ef] type 01 class 0x060400
[   40.730856] pci 0000:7d:00.0: enabling Extended Tags
[   40.731175] pci 0000:7d:00.0: supports D1 D2
[   40.731180] pci 0000:7d:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[   40.731377] pci 0000:7d:00.0: PTM enabled, 4ns granularity
[   40.731421] pci 0000:7d:00.0: 8.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x4 link at 0000:00:07.3 (capable of 31.504 Gb/s with 8.0 GT/s PCIe x4 link)
[   40.731805] pci 0000:7d:00.0: Adding to iommu group 17
[   40.732089] pcieport 0000:00:07.3: ASPM: current common clock configuration is inconsistent, reconfiguring
[   40.740659] pci 0000:7d:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[   40.740888] pci 0000:7e:02.0: [8086:15ef] type 01 class 0x060400
[   40.740989] pci 0000:7e:02.0: enabling Extended Tags
[   40.741222] pci 0000:7e:02.0: supports D1 D2
[   40.741225] pci 0000:7e:02.0: PME# supported from D0 D1 D2 D3hot D3cold
[   40.741464] pci 0000:7e:02.0: Adding to iommu group 18
[   40.741742] pci 0000:7d:00.0: PCI bridge to [bus 7e-a5]
[   40.741757] pci 0000:7d:00.0:   bridge window [io  0x0000-0x0fff]
[   40.741765] pci 0000:7d:00.0:   bridge window [mem 0x00000000-0x000fffff]
[   40.741778] pci 0000:7d:00.0:   bridge window [mem 0x00000000-0x000fffff 64bit pref]
[   40.741784] pci 0000:7e:02.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[   40.741959] pci 0000:7f:00.0: [8086:15f0] type 00 class 0x0c0330
[   40.742001] pci 0000:7f:00.0: reg 0x10: [mem 0x00000000-0x0000ffff]
[   40.742115] pci 0000:7f:00.0: enabling Extended Tags
[   40.742353] pci 0000:7f:00.0: supports D1 D2
[   40.742357] pci 0000:7f:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[   40.742522] pci 0000:7f:00.0: 8.000 Gb/s available PCIe bandwidth, limited by 2.5 GT/s PCIe x4 link at 0000:00:07.3 (capable of 31.504 Gb/s with 8.0 GT/s PCIe x4 link)
[   40.742655] pci 0000:7f:00.0: Adding to iommu group 19
[   40.742891] pci 0000:7e:02.0: PCI bridge to [bus 7f-a5]
[   40.742906] pci 0000:7e:02.0:   bridge window [io  0x0000-0x0fff]
[   40.742915] pci 0000:7e:02.0:   bridge window [mem 0x00000000-0x000fffff]
[   40.742929] pci 0000:7e:02.0:   bridge window [mem 0x00000000-0x000fffff 64bit pref]
[   40.742935] pci_bus 0000:7f: busn_res: [bus 7f-a5] end is updated to 7f
[   40.742948] pci_bus 0000:7e: busn_res: [bus 7e-a5] end is updated to 7f
[   40.742972] pci 0000:7d:00.0: BAR 14: assigned [mem 0x52000000-0x5e1fffff]
[   40.742978] pci 0000:7d:00.0: BAR 15: assigned [mem 0x6060000000-0x607bffffff 64bit pref]
[   40.742984] pci 0000:7d:00.0: BAR 13: assigned [io  0x7000-0x7fff]
[   40.742991] pci 0000:7e:02.0: BAR 14: assigned [mem 0x52000000-0x5e1fffff]
[   40.742997] pci 0000:7e:02.0: BAR 15: assigned [mem 0x6060000000-0x607bffffff 64bit pref]
[   40.743002] pci 0000:7e:02.0: BAR 13: assigned [io  0x7000-0x7fff]
[   40.743008] pci 0000:7f:00.0: BAR 0: assigned [mem 0x52000000-0x5200ffff]
[   40.743020] pci 0000:7e:02.0: PCI bridge to [bus 7f]
[   40.743026] pci 0000:7e:02.0:   bridge window [io  0x7000-0x7fff]
[   40.743039] pci 0000:7e:02.0:   bridge window [mem 0x52000000-0x5e1fffff]
[   40.743048] pci 0000:7e:02.0:   bridge window [mem 0x6060000000-0x607bffffff 64bit pref]
[   40.743063] pci 0000:7d:00.0: PCI bridge to [bus 7e-7f]
[   40.743069] pci 0000:7d:00.0:   bridge window [io  0x7000-0x7fff]
[   40.743080] pci 0000:7d:00.0:   bridge window [mem 0x52000000-0x5e1fffff]
[   40.743090] pci 0000:7d:00.0:   bridge window [mem 0x6060000000-0x607bffffff 64bit pref]
[   40.743104] pcieport 0000:00:07.3: PCI bridge to [bus 7d-a5]
[   40.743110] pcieport 0000:00:07.3:   bridge window [io  0x7000-0x7fff]
[   40.743118] pcieport 0000:00:07.3:   bridge window [mem 0x52000000-0x5e1fffff]
[   40.743125] pcieport 0000:00:07.3:   bridge window [mem 0x6060000000-0x607bffffff 64bit pref]
[   40.743176] pcieport 0000:7d:00.0: enabling device (0000 -> 0003)
[   40.743763] pcieport 0000:7e:02.0: enabling device (0000 -> 0003)
[   40.745141] pci 0000:7f:00.0: enabling device (0000 -> 0002)
[   40.745856] xhci_hcd 0000:7f:00.0: xHCI Host Controller
[   40.745865] xhci_hcd 0000:7f:00.0: new USB bus registered, assigned bus number 5
[   40.747194] xhci_hcd 0000:7f:00.0: hcc params 0x200077c1 hci version 0x110 quirks 0x0000000200009810
[   40.747676] xhci_hcd 0000:7f:00.0: xHCI Host Controller
[   40.747680] xhci_hcd 0000:7f:00.0: new USB bus registered, assigned bus number 6
[   40.747684] xhci_hcd 0000:7f:00.0: Host supports USB 3.1 Enhanced SuperSpeed
[   40.747748] usb usb5: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.00
[   40.747751] usb usb5: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   40.747753] usb usb5: Product: xHCI Host Controller
[   40.747755] usb usb5: Manufacturer: Linux 6.0.11-arch1-1 xhci-hcd
[   40.747757] usb usb5: SerialNumber: 0000:7f:00.0
[   40.747917] hub 5-0:1.0: USB hub found
[   40.747930] hub 5-0:1.0: 2 ports detected
[   40.748518] usb usb6: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 6.00
[   40.748523] usb usb6: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[   40.748527] usb usb6: Product: xHCI Host Controller
[   40.748530] usb usb6: Manufacturer: Linux 6.0.11-arch1-1 xhci-hcd
[   40.748532] usb usb6: SerialNumber: 0000:7f:00.0
[   40.749485] hub 6-0:1.0: USB hub found
[   40.749498] hub 6-0:1.0: 2 ports detected
[   40.997297] usb 5-2: new high-speed USB device number 2 using xhci_hcd
[   41.141712] usb 5-2: New USB device found, idVendor=043e, idProduct=9a61, bcdDevice=52.50
[   41.141731] usb 5-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[   41.141737] usb 5-2: Product: USB2.1 Hub
[   41.141742] usb 5-2: Manufacturer: LG Electronics Inc.
[   41.143329] hub 5-2:1.0: USB hub found
[   41.146651] hub 5-2:1.0: 4 ports detected
[   41.261121] usb 6-1: new SuperSpeed USB device number 2 using xhci_hcd
[   41.284734] usb 6-1: New USB device found, idVendor=043e, idProduct=9a60, bcdDevice=52.50
[   41.284764] usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[   41.284777] usb 6-1: Product: USB3.1 Hub
[   41.284785] usb 6-1: Manufacturer: LG Electronics Inc.
[   41.287870] hub 6-1:1.0: USB hub found
[   41.288404] hub 6-1:1.0: 4 ports detected
[   41.450654] usb 5-2.4: new high-speed USB device number 3 using xhci_hcd
[   41.565158] usb 5-2.4: New USB device found, idVendor=043e, idProduct=9a73, bcdDevice= 1.00
[   41.565173] usb 5-2.4: New USB device strings: Mfr=0, Product=0, SerialNumber=1
[   41.565178] usb 5-2.4: SerialNumber: A40B0061C847
[   41.567136] hub 5-2.4:1.0: USB hub found
[   41.567243] hub 5-2.4:1.0: 3 ports detected
[   41.637506] usb 6-1.4: new SuperSpeed USB device number 3 using xhci_hcd
[   41.655223] usb 6-1.4: New USB device found, idVendor=043e, idProduct=9a71, bcdDevice= 1.00
[   41.655236] usb 6-1.4: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[   41.657671] hub 6-1.4:1.0: USB hub found
[   41.657731] hub 6-1.4:1.0: 3 ports detected
[   41.847253] usb 5-2.4.1: new high-speed USB device number 4 using xhci_hcd
[   41.960599] usb 5-2.4.1: New USB device found, idVendor=043e, idProduct=9a66, bcdDevice= 0.03
[   41.960619] usb 5-2.4.1: New USB device strings: Mfr=3, Product=1, SerialNumber=0
[   41.960627] usb 5-2.4.1: Product: LG UltraFine Display Audio
[   41.960632] usb 5-2.4.1: Manufacturer: LG Electronics Inc.
[   42.014028] usb 6-1.4.3: new SuperSpeed USB device number 4 using xhci_hcd
[   42.031212] usb 6-1.4.3: LPM exit latency is zeroed, disabling LPM.
[   42.031885] usb 6-1.4.3: New USB device found, idVendor=043e, idProduct=9a68, bcdDevice= 2.23
[   42.031896] usb 6-1.4.3: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[   42.031902] usb 6-1.4.3: Product: LG UltraFine Display Camera
[   42.031907] usb 6-1.4.3: Manufacturer: LG Electronlcs Inc.
[   42.035574] usb 6-1.4.3: Found UVC 1.10 device LG UltraFine Display Camera (043e:9a68)
[   42.051284] input: LG UltraFine Display Camera as /devices/pci0000:00/0000:00:07.3/0000:7d:00.0/0000:7e:02.0/0000:7f:00.0/usb6/6-1/6-1.4/6-1.4.3/6-1.4.3:1.0/input/input27
[   42.054253] hid-generic 0003:043E:9A68.0008: hiddev97,hidraw3: USB HID v1.01 Device [LG Electronlcs Inc. LG UltraFine Display Camera] on usb-0000:7f:00.0-1.4.3/input2
[   42.120555] usb 5-2.4.2: new full-speed USB device number 5 using xhci_hcd
[   42.213812] usb 5-2.4.2: New USB device found, idVendor=043e, idProduct=9a70, bcdDevice= 4.13
[   42.213837] usb 5-2.4.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[   42.213845] usb 5-2.4.2: Product: LG UltraFine Display Controls
[   42.213846] usb 5-2.4.2: Manufacturer: LG Electronics Inc.
[   42.234467] hid-generic 0003:043E:9A70.0009: hiddev98,hidraw4: USB HID v1.11 Device [LG Electronics Inc. LG UltraFine Display Controls] on usb-0000:7f:00.0-2.4.2/input0
[   42.235992] hid-generic 0003:043E:9A70.000A: hiddev99,hidraw5: USB HID v1.11 Device [LG Electronics Inc. LG UltraFine Display Controls] on usb-0000:7f:00.0-2.4.2/input1
[   42.237879] hid-generic 0003:043E:9A70.000B: hiddev100,hidraw6: USB HID v1.11 Device [LG Electronics Inc. LG UltraFine Display Controls] on usb-0000:7f:00.0-2.4.2/input2

Also firmware version of the display:

$ cat /sys/bus/thunderbolt/devices/1-3/nvm_version
43.0
1 Like

Hmm, given that battery not charging (thus not pulling current from the port) results in the screen working, it may be that the laptop power design pulls too much current on PD connection and LG UltraFine 5K is particularly sensitive to this sudden draw and protects itself by resetting the port.

I’m gonna try two things:

  • Use an oscilloscope to see how the voltage changes on VBUS when connecting with Framework vs Macboook/iPad.
  • Hook up the laptop to the screen with battery disconnected.

Will report back.

EDIT: @Kieran_Levin let me know if there’s anything else I should be trying.

OK. Quite a bit of experiments follow:

Power, current, CCx lines

Using a PD analyzer which measures VBUS voltage and current, as well as voltage on USB 2 data lines and PD CC lines, I captured the first few seconds of connecting an iPad, a Macbook and the Framework 12th Gen to the LG UltraFine 5K using Apple’s TB4 Pro 2m cable. Both iPad and the Macbook connected and displayed content on the monitor without issues, every time. Framework failed every time.

Macbook

CCx lines

D+/- lines

iPad

CCx lines

D+/- lines

Framework 12th Gen

Overview

Framework keeps going through a loop. This is an overview of the Voltage+Current. Further down, only the part in the middle where there is a dip is zoomed in and shown.

CCx lines at the dip

D+/- lines at the dip

USB-PD packets

Right before the dip, Framework asks the monitor to enter alt mode and right after it receives the acknowledgement, there is a detach and attach event which seems to be equivalent to pulling and reinserting the plug.

In contrast, Macbook continues on without issues:

Since this happens even when the system is turned off, it must be a bug in the EC firmware (or in the hardware). I spent a short time going through the firmware code guessing where this may be happening. I think it may be right after the USB mux is configured for Thunderbolt that the detach happens.

EDIT: hmm, maybe not, it takes more than a second for the detach to happen since the alt mode request.

/cc @Kieran_Levin @DHowett

Excellent analysis @oxplot – hopefully we can track down the cause in firmware. I’m pretty keen to look at the EC code myself and see what’s going on.

I’m still wondering if this is somehow a distro specific issue as @B_Hellman is not having any issues. Maybe there’s some kind of tweak or override that can be done on the software side.

@B_Hellman - when you have the display connected are you getting power delivery or just the display + accessories?

@oxplot - did you try with battery disconnected? I’ve disconnected the battery twice and the display works every time.

I do get accessories, however if the laptop needs to charge the screen flickers on and off and is unusable. When the laptop is at full power I can plug in and use everything without issue. I’m more than happy to provide whatever I can, please just let me know what. It would be awesome to be able to use this as intended without having to worry about being at full charge.

It would be awesome to be able to use this as intended without having to worry about being at full charge.

When it miraculously worked that one time for me, the display was working perfectly even at 8% battery charge. I think the laptop glitched and thought it was always connected to mains power even when the display was the only thing connected. Oh how I would love to return to those wonderful crazy times when the display just worked perfectly – then I could work on dumping USB packets to control sound and brightness.

Is this something you just discovered since the last time you posted or has it always been like that. I had the impression that your setup worked perfectly all the time.

That part is already done :slight_smile: :

EDIT: I’ve been using this for a long time. Works great, and works with pretty much any screen that was produced in last 10+ years. Works over HDMI, DP, VGA as well.

I’ve CCed Kieran from Framework Systems team and DHowett who’s done custom EC firmware work (and seems quite knowledgeable in the area in general). I don’t know if @ing people on discourse notifies them or not.

Also,

UPDATE: Windows has the same exact problem. I just got lucky back when posting the above.