UPERFECT X Mini lapdock works with Librem 5

It seems to be charging my Android phone just fine (an OnePlus 7). Will try and see if I can find any logs from dmesg or journalctl.

1 Like

I did “sudo journalctl -f” while putting in the dock, this was the result. The prints from bq25890-charger looks a bit suspicious, but I don’t know how to interpret what they might mean.

Jan 15 13:06:15 johan-librem5 sudo[8170]:   purism : TTY=pts/0 ; PWD=/home/purism ; USER=root ; COMMAND=/usr/bin/journalctl -f
Jan 15 13:06:15 johan-librem5 sudo[8170]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=1000)
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: xhci-hcd xhci-hcd.5.auto: xHCI Host Controller
Jan 15 13:06:17 johan-librem5 kernel: xhci-hcd xhci-hcd.5.auto: new USB bus registered, assigned bus number 3
Jan 15 13:06:17 johan-librem5 kernel: xhci-hcd xhci-hcd.5.auto: hcc params 0x0220fe6c hci version 0x110 quirks 0x0000000000010010
Jan 15 13:06:17 johan-librem5 kernel: xhci-hcd xhci-hcd.5.auto: irq 64, io mem 0x38100000
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:17 johan-librem5 kernel: usb usb3: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.17
Jan 15 13:06:17 johan-librem5 kernel: usb usb3: New USB device strings: Mfr=3, Product=2, SerialNumber=1
Jan 15 13:06:17 johan-librem5 kernel: usb usb3: Product: xHCI Host Controller
Jan 15 13:06:17 johan-librem5 kernel: usb usb3: Manufacturer: Linux 5.17.0-1-librem5 xhci-hcd
Jan 15 13:06:17 johan-librem5 kernel: usb usb3: SerialNumber: xhci-hcd.5.auto
Jan 15 13:06:17 johan-librem5 kernel: hub 3-0:1.0: USB hub found
Jan 15 13:06:17 johan-librem5 kernel: hub 3-0:1.0: 1 port detected
Jan 15 13:06:17 johan-librem5 kernel: xhci-hcd xhci-hcd.5.auto: xHCI Host Controller
Jan 15 13:06:17 johan-librem5 kernel: xhci-hcd xhci-hcd.5.auto: new USB bus registered, assigned bus number 4
Jan 15 13:06:17 johan-librem5 kernel: xhci-hcd xhci-hcd.5.auto: Host supports USB 3.0 SuperSpeed
Jan 15 13:06:17 johan-librem5 kernel: usb usb4: We don't know the algorithms for LPM for this host, disabling LPM.
Jan 15 13:06:17 johan-librem5 kernel: usb usb4: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.17
Jan 15 13:06:17 johan-librem5 kernel: usb usb4: New USB device strings: Mfr=3, Product=2, SerialNumber=1
Jan 15 13:06:17 johan-librem5 kernel: usb usb4: Product: xHCI Host Controller
Jan 15 13:06:17 johan-librem5 kernel: usb usb4: Manufacturer: Linux 5.17.0-1-librem5 xhci-hcd
Jan 15 13:06:17 johan-librem5 kernel: usb usb4: SerialNumber: xhci-hcd.5.auto
Jan 15 13:06:17 johan-librem5 kernel: hub 4-0:1.0: USB hub found
Jan 15 13:06:17 johan-librem5 kernel: hub 4-0:1.0: 1 port detected
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:17 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:18 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:18 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:18 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:18 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:18 johan-librem5 kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:06:18 johan-librem5 kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:06:19 johan-librem5 kernel: [drm] hpd irq
Jan 15 13:06:19 johan-librem5 kernel: [drm] Connector status: 1
Jan 15 13:06:19 johan-librem5 kernel: [drm] HDMI/DP Cable Plug In
Jan 15 13:06:19 johan-librem5 kernel: [drm] Connector status: 1
Jan 15 13:06:19 johan-librem5 kernel: cdns-mhdp-imx 32c00000.hdmi: 0,ff,ff,ff,ff,ff,ff,0
Jan 15 13:06:19 johan-librem5 phoc[6215]: Output 'DP-1' added ('Unknown'/'uperfect'/'8R33926O00QS'), 290mm x 170mm
Jan 15 13:06:19 johan-librem5 kernel: [drm] Mode: 1920x1080p138750
Jan 15 13:06:19 johan-librem5 kernel: cdns-mhdp-imx 32c00000.hdmi: [drm:cdns_mhdp_set_host_cap [cdns_mhdp_drmcore]] Using 4 lanes
Jan 15 13:06:19 johan-librem5 kernel: cdns-mhdp-imx 32c00000.hdmi: [drm:cdns_mhdp_train_link [cdns_mhdp_drmcore]] Starting link training
Jan 15 13:06:19 johan-librem5 kernel: usb 3-1: new high-speed USB device number 2 using xhci-hcd
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: failed to get edid: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 gsd-xsettings[6343]: Failed to get current UI legacy scaling factor
Jan 15 13:06:19 johan-librem5 gsd-xsettings[6343]: Failed to get current UI legacy scaling factor
Jan 15 13:06:19 johan-librem5 gsd-xsettings[6343]: Failed to get current UI legacy scaling factor
Jan 15 13:06:19 johan-librem5 gsd-xsettings[6343]: Failed to get current UI legacy scaling factor
Jan 15 13:06:19 johan-librem5 gsd-xsettings[6343]: Failed to get current UI legacy scaling factor
Jan 15 13:06:19 johan-librem5 gsd-xsettings[6343]: Failed to get current UI legacy scaling factor
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: unable to get EDID for xrandr-DP-1: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: unable to get EDID for xrandr-DSI-1: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: unable to get EDID for xrandr-DP-1: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: unable to get EDID for xrandr-DSI-1: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: unable to get EDID for xrandr-DP-1: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: unable to get EDID for xrandr-DSI-1: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 gsd-color[6329]: unable to get EDID for xrandr-DP-1: unable to get EDID for output
Jan 15 13:06:19 johan-librem5 kernel: usb 3-1: New USB device found, idVendor=1a40, idProduct=0101, bcdDevice= 1.00
Jan 15 13:06:19 johan-librem5 kernel: usb 3-1: New USB device strings: Mfr=0, Product=1, SerialNumber=0
Jan 15 13:06:19 johan-librem5 kernel: usb 3-1: Product: USB2.0 HUB
Jan 15 13:06:19 johan-librem5 kernel: hub 3-1:1.0: USB hub found
Jan 15 13:06:19 johan-librem5 kernel: hub 3-1:1.0: 4 ports detected
Jan 15 13:06:19 johan-librem5 upowerd[787]: treating change event as add on /sys/devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1
Jan 15 13:06:20 johan-librem5 kernel: usb 3-1.1: new full-speed USB device number 3 using xhci-hcd
Jan 15 13:06:20 johan-librem5 kernel: usb 3-1.1: New USB device found, idVendor=1c4f, idProduct=007c, bcdDevice= 1.00
Jan 15 13:06:20 johan-librem5 kernel: usb 3-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Jan 15 13:06:20 johan-librem5 kernel: usb 3-1.1: Product: USB Keyboard
Jan 15 13:06:20 johan-librem5 kernel: usb 3-1.1: Manufacturer: SIGMACHIP
Jan 15 13:06:20 johan-librem5 kernel: input: SIGMACHIP USB Keyboard as /devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.1/3-1.1:1.0/0003:1C4F:007C.0015/input/input36
Jan 15 13:06:20 johan-librem5 kernel: hid-generic 0003:1C4F:007C.0015: input,hidraw0: USB HID v1.10 Keyboard [SIGMACHIP USB Keyboard] on usb-xhci-hcd.5.auto-1.1/input0
Jan 15 13:06:20 johan-librem5 kernel: input: SIGMACHIP USB Keyboard Mouse as /devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.1/3-1.1:1.1/0003:1C4F:007C.0016/input/input37
Jan 15 13:06:20 johan-librem5 kernel: input: SIGMACHIP USB Keyboard Consumer Control as /devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.1/3-1.1:1.1/0003:1C4F:007C.0016/input/input38
Jan 15 13:06:20 johan-librem5 kernel: input: SIGMACHIP USB Keyboard System Control as /devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.1/3-1.1:1.1/0003:1C4F:007C.0016/input/input39
Jan 15 13:06:20 johan-librem5 kernel: input: SIGMACHIP USB Keyboard Wireless Radio Control as /devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.1/3-1.1:1.1/0003:1C4F:007C.0016/input/input40
Jan 15 13:06:20 johan-librem5 kernel: hid-generic 0003:1C4F:007C.0016: input,hiddev96,hidraw1: USB HID v1.10 Mouse [SIGMACHIP USB Keyboard] on usb-xhci-hcd.5.auto-1.1/input1
Jan 15 13:06:20 johan-librem5 systemd-logind[573]: Watching system buttons on /dev/input/event6 (SIGMACHIP USB Keyboard System Control)
Jan 15 13:06:20 johan-librem5 systemd-logind[573]: Watching system buttons on /dev/input/event5 (SIGMACHIP USB Keyboard Consumer Control)
Jan 15 13:06:20 johan-librem5 systemd-logind[573]: Watching system buttons on /dev/input/event3 (SIGMACHIP USB Keyboard)
Jan 15 13:06:20 johan-librem5 kernel: usb 3-1.2: new high-speed USB device number 4 using xhci-hcd
Jan 15 13:06:20 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:20 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:20 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:20 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:20 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:20 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phosh[8222]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Jan 15 13:06:21 johan-librem5 phosh[8222]: > Warning:          Unsupported maximum keycode 569, clipping.
Jan 15 13:06:21 johan-librem5 phosh[8222]: >                   X11 cannot support keycodes above 255.
Jan 15 13:06:21 johan-librem5 phosh[8222]: Errors from xkbcomp are not fatal to the X server
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2: New USB device found, idVendor=1a40, idProduct=0101, bcdDevice= 1.00
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2: New USB device strings: Mfr=0, Product=1, SerialNumber=0
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2: Product: USB2.0 HUB
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 kernel: hub 3-1.2:1.0: USB hub found
Jan 15 13:06:21 johan-librem5 kernel: hub 3-1.2:1.0: 4 ports detected
Jan 15 13:06:21 johan-librem5 upowerd[787]: treating change event as add on /sys/devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.1
Jan 15 13:06:21 johan-librem5 upowerd[787]: treating change event as add on /sys/devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.2
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phosh[8231]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Jan 15 13:06:21 johan-librem5 phosh[8231]: > Warning:          Unsupported maximum keycode 569, clipping.
Jan 15 13:06:21 johan-librem5 phosh[8231]: >                   X11 cannot support keycodes above 255.
Jan 15 13:06:21 johan-librem5 phosh[8231]: Errors from xkbcomp are not fatal to the X server
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2.1: new full-speed USB device number 5 using xhci-hcd
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phosh[8234]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Jan 15 13:06:21 johan-librem5 phosh[8234]: > Warning:          Unsupported maximum keycode 569, clipping.
Jan 15 13:06:21 johan-librem5 phosh[8234]: >                   X11 cannot support keycodes above 255.
Jan 15 13:06:21 johan-librem5 phosh[8234]: Errors from xkbcomp are not fatal to the X server
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2.1: New USB device found, idVendor=27c6, idProduct=0818, bcdDevice= 1.28
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2.1: Product: TouchScreen
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2.1: Manufacturer: WingCool Inc.
Jan 15 13:06:21 johan-librem5 kernel: usb 3-1.2.1: SerialNumber: 9LQ0172005164
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 kernel: input: WingCool Inc. TouchScreen as /devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.2/3-1.2.1/3-1.2.1:1.0/0003:27C6:0818.0017/input/input41
Jan 15 13:06:21 johan-librem5 kernel: hid-multitouch 0003:27C6:0818.0017: input,hiddev97,hidraw2: USB HID v1.10 Device [WingCool Inc. TouchScreen] on usb-xhci-hcd.5.auto-1.2.1/input0
Jan 15 13:06:21 johan-librem5 kernel: hid-generic 0003:27C6:0818.0018: hiddev98,hidraw3: USB HID v1.10 Device [WingCool Inc. TouchScreen] on usb-xhci-hcd.5.auto-1.2.1/input1
Jan 15 13:06:21 johan-librem5 kernel: input: WingCool Inc. TouchScreen Mouse as /devices/platform/soc@0/38100000.usb/xhci-hcd.5.auto/usb3/3-1/3-1.2/3-1.2.1/3-1.2.1:1.2/0003:27C6:0818.0019/input/input42
Jan 15 13:06:21 johan-librem5 kernel: hid-generic 0003:27C6:0818.0019: input,hidraw4: USB HID v1.10 Mouse [WingCool Inc. TouchScreen] on usb-xhci-hcd.5.auto-1.2.1/input2
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:21 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:22 johan-librem5 phosh[8248]: The XKEYBOARD keymap compiler (xkbcomp) reports:
Jan 15 13:06:22 johan-librem5 phosh[8248]: > Warning:          Unsupported maximum keycode 569, clipping.
Jan 15 13:06:22 johan-librem5 phosh[8248]: >                   X11 cannot support keycodes above 255.
Jan 15 13:06:22 johan-librem5 phosh[8248]: Errors from xkbcomp are not fatal to the X server
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:22 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:23 johan-librem5 kernel: redpine_91x: Packet Dropped as Key ID not matched with both current and previous Key ID
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:223] Failed to get cursor display formats
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:269] Failed to pick cursor format
Jan 15 13:06:24 johan-librem5 phoc[6215]: [types/output/cursor.c:354] Failed to render cursor buffer

This needs to be proved there as well:

EDIT: @johan-bjareholt, my method (based on yours) was to have my Librem 5 connected to some power supply, execute sudo journalctl -f thereafter, and now disconnect charging cable from Librem 5 and got there: Upstream supply changed: 0. (disconnected), as shown:

Jan 15 13:28:09 pureos sudo[19034]:   purism : TTY=pts/0 ; PWD=/home/purism ; USER=root ; COMMAND=/usr/bin/journalctl -f
Jan 15 13:28:09 pureos sudo[19034]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=1000)
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 0.
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:45 pureos kernel: tps6598x 0-003f: The interrupt is masked , how did it fire ?? 380100a
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 0.
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 0.
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 0.
Jan 15 13:28:45 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:28:51 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:28:57 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:28:57 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin
Jan 15 13:29:02 pureos kernel: bq25890-charger 3-006a: Upstream supply changed: 1.
Jan 15 13:29:02 pureos kernel: bq25890-charger 3-006a: Disabling OTG_EN pin

I can’t speak for the battery icon part, but even though you are getting 500mA from the dock to the Librem 5, if the Librem 5 is currently using more power than that (which is quite possible when docked and doing things), then it could very well be discharging (it is using more than 500mA power, therefore it has to get that power from the battery).

You need more cat /sys/class/... to look at the actual current flow with the battery, rather than the option negotiated with the (potential) power source (over USB).

e.g. cat /sys/class/power_supply/max170xx_battery/current_now

should be negative if discharging.

1 Like

It is negative, so it is discharging.

purism@johan-librem5 ~ $ cat /sys/class/power_supply/max170xx_battery/current_now
-145283

Thanks for the tip. After some more investigation it seems like the dock is providing less power than the phone is consuming, so it’s technically true that the battery is discharging (at the same time as it is being charged).

When having the “Power” section open in Settings, it jumps for 4-5 hours expected battery life to 6-10 hours when I plug in the dock. I also found gnome-power-manager which clearly states that while the battery is in “discharge” mode, the “AC adapter” has “Online” set to “yes” when the dock gets plugged in. So I guess that phosh and the battery icon probably just looks at the battery “state” which is “discharging”, which was the only thing that confused me (also the fact that i saw 6-7 hours estimated battery life when plugged in the first few times when I looked at the battery stats, which is what I’d expect from a phone when it’s not plugged in…). I’d prefer if phosh looked at if the charger was “online” rather than if the battery is discharging, would make more sense to me.

Hey Kyle I asked this in the other dock thread, but I noticed with my Nexdock that if I have my samsung connected, even if the phone and dock screen go into screen saver mode the phone continues to charge and the screen can awaken with mouse/keyboard.

With the Librem 5 once it blanks, shortly thereafter the nexdoc shuts down completely and can only be woken with the power button and as a result is also not charging the phone. I discovered this when I left the L5 connected to it thinking it would continue to charge but it just drained as if it was not plugged in. Is this a hardware issue or is it a driver/kernel/whatever issue?

1 Like

I suspect when the L5 screen blanks it disables not only its own display (to save power) but any displays it is connected to, so the Nexdock thinks it has been disconnected and starts the timer for shutdown.

I personally have automatic blank screen disabled on my own L5, but I do have “Dim Screen When Inactive” enabled.

1 Like

Ah ok good tip I’ll give that a try. I guess I can turn off the screen manually with the power button.

Another useful thing is to turn off the phone screen and use only the dock one while plugged, I was trying to do it nicely for a while, you can see the discussion here Initial Librem5/Nexdock360 impression but now I just created a .desktop file that calls a script to disable the phone display when open using wlr-randr --output DSI-1 --off then to go back to the phone I just unplug it and it crash and reload phosh to the phone display, not ideal but it works.

1 Like

Interesting. I am also looking for a way to easily use the lapdock screen as the main screen and turn the phone screen off when I don’t need it. Doing this through gnome-settings is rather cumbersome.

1 Like

I have noticed when you do this and unplug the phone it does tend to crash. I should inspect the logs to see what’s going on when this happens.

I’d agree that would be important for any setup there not to skip this:

That’s why here linking specifications (again and as orientation) of the one (length is important usage consideration as well) that @Kyle_Rankin already recommended (while it works): https://www.dockcase.com/category/cables.

EDIT: @johan-bjareholt, how about connecting there and powering Librem 5 through REVOXEN − twin USB-C bi-directional switcher?

That is what I said on my comment, my plan was to create a udev rule so every time the nexdock is connected or disconnected it will trigger a script but I couldn’t manage, so I’m just doing it like that by the time being.

So, I finally received my UPERFECT lapdock.
Things mostly work but I’m a bit puzzled about the touch screen as it seems to work for everyone after enabling in the mobile settings…
But here it doesn’t! Touching the screen will trigger the corresponding point on the phone screen. Basically what @Altor said in that post but for another device: when I touch the right side of the lapdock screen it’s as if I touched the right side of the phone screen, if the left of the lapdock screen then the left of the phone screen, and so on. Dragging a finger on the lapdock screen will scroll whatever is on the phone screen.
What does that mobile-settings option do? I don’t see any difference when I enable it or not. Can I somehow configure that by hand? What is the gsetting command that @Kyle_Rankin mentioned?

So in the PureOS Mobile Settings application under convergence you have map built in touch screen enabled?

I will update my initial post. Unfortunately, I can’t open an issue on the git to update mobile setting.

for me, the working gsetting command is

gsettings set org.gnome.desktop.peripherals.touchscreen:/org/gnome/desktop/peripherals/touchscreens/2d1f:524c/ output “[‘Lenovo Group Limited’,‘M14t’,‘V307G6CZ’]”

the touchscreens identification (in my case 2d1…) is found thanks to lsubs (here aftter my output line)

Bus 003 Device 004: ID 2d1f:524c Wacom Taiwan Information Co. Ltd. Pen and multitouch sensor

and the output ([’Lenov…]) is found thanks to journalctl -b 0 _COMM=phoc and then search for Output ‘DP-1’

Output ‘DP-1’ added (‘Lenovo Group Limited’/‘M14t’/‘V307G6CZ’)

just change the / by , in the gsetting command.

3 Likes

Awesome! Thank you @Altor that works. (I’m wondering how you found out how to do all that)

Actually I don’t have the mini, I guess that’s why it wasn’t working (I wanted the mini but it wasn’t in stock so they sent me another one, not sure which model exactly). Maybe mobile settings detects a uperfect something and tries to configure the touchpad of the mini and it doesn’t because it’s not the same ids…

This is the command I ran:

gsettings set org.gnome.desktop.peripherals.touchscreen:/org/gnome/desktop/peripherals/touchscreens/27c0:0819/ output "['Unknown','uperfect','8R33926O00QS']"
1 Like

I finally got around to learning how udev works and using that to switch off the phone screen when the lapdock is connected.

  1. apt install wlr-randr to be able to change screen configuration from scripts
  2. Look for a suitable device in lsusb to trigger the rule. I used this line from the output: Bus 003 Device 004: ID 27c0:0819 Cadwell Laboratories, Inc. WingCoolTouch, i.e. the lapdock touch screen.
  3. Create file /etc/udev/rules.d/99-lapdock-then-phone-screen-off.rules with following contents:
ACTION=="add" \
, ATTRS{idVendor}=="27c0" \
, ATTRS{idProduct}=="0819" \
, ENV{XDG_RUNTIME_DIR}="/run/user/1000" \
, RUN+="/usr/bin/wlr-randr --output DSI-1 --off"

Adapt the vendor and product id to what you found in lsusb if you don’t have the same model as me, and the RUN+= lines if you want to do other stuff when the lapdock is connected.

Hope this helps!

4 Likes

I would bring to other readers’ attention though the following caveats from the man page

This can only be used for very short-running foreground tasks. Running an event process for a long period of time may block all further events for this or a dependent device.

So for any command that you choose to run, you should consider a) how long it would take to execute under normal circumstances, and b) whether there are any abnormal circumstances under which the command would block.

Also

Note that running programs that access the network or mount/unmount filesystems is not allowed inside of udev rules, due to the default sandbox that is enforced on systemd-udevd.service.

(Accessing the network would in many circumstances violate the first quoted paragraph anyway.)

and

Starting daemons or other long-running processes is not allowed; the forked processes, detached or not, will be unconditionally killed after the event handling has finished. In order to activate long-running processes from udev rules, provide a service unit and pull it in from a udev device using the SYSTEMD_WANTS device property. See systemd.device(5) for details.

None of this necessarily applies to the one specific command that you have chosen but other readers may be tempted to get creative ;-), since you invite them to do so, in which case a service is probably a better approach.

2 Likes