Making Game: What can a program find out about a USB-C cable attached to the computer?

Original Source Link

I plug an unknown USB-C cable into my computer.
Theoretically, could a program read information about that cable? In particular:

  1. What version of USB it supports: 2.0, 3.1, etc.
  2. Whether it supports Thunderbolt, etc.
  3. Whether it supports Power Delivery, Quick Charge, VOOC, SuperCharge, Pump Express, Super FlashCharge, etc.
  4. Up to what speed it can transfer data.
  5. Up to what wattage/amperage it can charge a high-spec device.

Notes:

  • I am on Linux, but answers for other OSes are fine too.
  • Let’s say nothing is connected at the other end of the cable. But if really necessary, we can say a recent rooted Android phone is connected and can run whatever code is needed.

All answers of what Type-C connector can do and can’t are given in its specifications.

In brief, Type-C cable specs are nearly independent from USB data and USB Power Delivery (Type-C can support anything).

By specs, Type-C connector/cable provides two methods of self-identification.

First one is by combination of resistor pulls-up and pulls-down on both sides of CC wires. Since there are two CC pins in Type-C connectors, and several analog levels, many combinations are available. Other than connect function itself and basic determination of source-sink roles and power capacity, several “alternate” functions are defined, as Display Port, Audio, and Debug mode.

The second amendment to Type-C is the mandatory embedding of e-markers into every C-C cable. The information in e-marker contains name of manufacturer and current carrying capability of particular cable.

The state of CC1/CC2 pins is usually acquired by a special CC-controller chip. The CC-controller communicates with main system by I2C interface. The register-based interface is standardized in Intel document USB Type-C Connector System Software Interface Specification

Microsoft provides a special UCSI driver to communicate the state of Type-C connector to Windows. I am certain that Linux does have the corresponding driver as well, take a look at this article.

So, partial answer your set of questions can be found in the following EE article. #1 and #5 is supported. #4 is the same as #1. Regarding #3, Type-C connector supports only one “charging signature”, which is Power Delivery specification. Regarding the second part of your notes, if nothing is connected on the other end of CC cable, I am not sure if presence of Ra alone will trigger any detection of the cable, need to check on this.

Tagged : / / / /

Ubuntu HowTo: Reboot or shutdown hangs at “Reached target Reboot”. task kworker/2:2:214 blocked for more than 120 seconds

Original Source Link

This suddenly started happening today on my Lenovo Thinkpad X1 Extreme Gen 2. The system configuration has not changed from when this issue did not occur.

I’m using NVIDIA’s proprietary driver 440.82+really.440.64-0ubuntu6 to drive a Philips 276E8V plugged in via a USBC-DP cable, and a Dell WD15 dock with USB devices and headphones attached.

This issue does not occur if the display is never plugged in, but occurs if the display is unplugged before I press ‘reboot’.

Distro & kernel: Kubuntu 20.04 LTS, kernel 5.4.0-31-generic

Specs: i7-9850H, GTX1650 Max-Q, 16GB DDR4-2666, HP EX920 NVMe SSD

May 26 16:06:09 jordan-ThinkPad kernel: INFO: task kworker/11:1:209 blocked for more than 120 seconds.
May 26 16:06:09 jordan-ThinkPad kernel:       Tainted: P           O      5.4.0-31-generic #35-Ubuntu
May 26 16:06:09 jordan-ThinkPad kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
May 26 16:06:09 jordan-ThinkPad kernel: kworker/11:1    D    0   209      2 0x80004000
May 26 16:06:09 jordan-ThinkPad kernel: Workqueue: events dp_altmode_work [typec_displayport]
May 26 16:06:09 jordan-ThinkPad kernel: Call Trace:
May 26 16:06:09 jordan-ThinkPad kernel:  __schedule+0x2e3/0x740
May 26 16:06:09 jordan-ThinkPad kernel:  schedule+0x42/0xb0
May 26 16:06:09 jordan-ThinkPad kernel:  schedule_preempt_disabled+0xe/0x10
May 26 16:06:09 jordan-ThinkPad kernel:  __mutex_lock.isra.0+0x182/0x4f0
May 26 16:06:09 jordan-ThinkPad kernel:  ? __switch_to_asm+0x34/0x70
May 26 16:06:09 jordan-ThinkPad kernel:  ? __switch_to_asm+0x34/0x70
May 26 16:06:09 jordan-ThinkPad kernel:  ? __switch_to_asm+0x40/0x70
May 26 16:06:09 jordan-ThinkPad kernel:  ? __switch_to_asm+0x40/0x70
May 26 16:06:09 jordan-ThinkPad kernel:  __mutex_lock_slowpath+0x13/0x20
May 26 16:06:09 jordan-ThinkPad kernel:  mutex_lock+0x2e/0x40
May 26 16:06:09 jordan-ThinkPad kernel:  ucsi_send_command+0x2a/0x60 [typec_ucsi]
May 26 16:06:09 jordan-ThinkPad kernel:  ucsi_displayport_enter+0x90/0x180 [typec_ucsi]
May 26 16:06:09 jordan-ThinkPad kernel:  typec_altmode_enter+0x4f/0x60 [typec]
May 26 16:06:09 jordan-ThinkPad kernel:  dp_altmode_work+0xde/0xf0 [typec_displayport]
May 26 16:06:09 jordan-ThinkPad kernel:  process_one_work+0x1eb/0x3b0
May 26 16:06:09 jordan-ThinkPad kernel:  worker_thread+0x4d/0x400
May 26 16:06:09 jordan-ThinkPad kernel:  kthread+0x104/0x140
May 26 16:06:09 jordan-ThinkPad kernel:  ? process_one_work+0x3b0/0x3b0
May 26 16:06:09 jordan-ThinkPad kernel:  ? kthread_park+0x90/0x90
May 26 16:06:09 jordan-ThinkPad kernel:  ret_from_fork+0x1f/0x40

Tagged : / / /

Linux HowTo: What can a program find out about a USB-C cable attached to the computer?

Original Source Link

I plug an unknown USB-C cable into my computer.
Theoretically, could a program read information about that cable? In particular:

  1. What version of USB it supports: 2.0, 3.1, etc.
  2. Whether it supports Thunderbolt, etc.
  3. Whether it supports Power Delivery, Quick Charge, VOOC, SuperCharge, Pump Express, Super FlashCharge, etc.
  4. Up to what speed it can transfer data.
  5. Up to what wattage/amperage it can charge a high-spec device.

Notes:

  • I am on Linux, but answers for other OSes are fine too.
  • Let’s say nothing is connected at the other end of the cable. But if really necessary, we can say a recent rooted Android phone is connected and can run whatever code is needed.

All answers of what Type-C connector can do and can’t are given in its specifications.

In brief, Type-C cable specs are nearly independent from USB data and USB Power Delivery (Type-C can support anything).

By specs, Type-C connector/cable provides two methods of self-identification.

First one is by combination of resistor pulls-up and pulls-down on both sides of CC wires. Since there are two CC pins in Type-C connectors, and several analog levels, many combinations are available. Other than connect function itself and basic determination of source-sink roles and power capacity, several “alternate” functions are defined, as Display Port, Audio, and Debug mode.

The second amendment to Type-C is the mandatory embedding of e-markers into every C-C cable. The information in e-marker contains name of manufacturer and current carrying capability of particular cable.

The state of CC1/CC2 pins is usually acquired by a special CC-controller chip. The CC-controller communicates with main system by I2C interface. The register-based interface is standardized in Intel document USB Type-C Connector System Software Interface Specification

Microsoft provides a special UCSI driver to communicate the state of Type-C connector to Windows. I am certain that Linux does have the corresponding driver as well, take a look at this article.

So, partial answer your set of questions can be found in the following EE article. #1 and #5 is supported. #4 is the same as #1. Regarding #3, Type-C connector supports only one “charging signature”, which is Power Delivery specification. Regarding the second part of your notes, if nothing is connected on the other end of CC cable, I am not sure if presence of Ra alone will trigger any detection of the cable, need to check on this.

Tagged : / / / /

Ubuntu HowTo: High-res monitor support, 5120×2160, LG 34WK95

Original Source Link

I have a new Dell Precission 5540 laptop that I connect to my LG 34WK95 display. In windows I get the full 5120×[email protected] resolution, but in Ubuntu the best I can get is 3440×1440. The monitor is connect over thunderbolt (usb-c).

Does anyone know how to fix this? Or at least where I should file a bugreport.

The only relevant things I can find while googling are these links

https://unix.stackexchange.com/questions/486350/using-displayport-over-usb-c-thunderbolt-3-to-drive-external-5120×2160-monitor

https://www.phoronix.com/scan.php?page=news_item&px=Linux-USB-Type-C-Port-DP-Driver

UPDATE 1:
Using xrandr I’m able to force a 5120×[email protected] setting, so this might indicate it’s somehow operating in USB-C mode even though connected with the same thunberbolt cable that works in Windows?
https://www.lg.com/uk/monitors/lg-34WK95U

60 Hz still doesn’t work.

UPDATE 2:
attaching xrandr --verbose output as requested

$ xrandr --verbose
Screen 0: minimum 320 x 200, current 8192 x 3456, maximum 16384 x 16384
eDP-1 connected (normal left inverted right x axis y axis)
    Identifier: 0x42
    Timestamp:  3453569
    Subpixel:   unknown
    Clones:    
    CRTCs:      1 0 2
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
    _MUTTER_PRESENTATION_OUTPUT: 0 
    EDID: 
        00ffffffffffff004d10ba1400000000
        161d0104a52213780ede50a3544c9926
        0f505400000001010101010101010101
        010101010101ac3780a070383e403020
        350058c2100000180000000000000000
        00000000000000000000000000fe004d
        57503154804c513135364d3100000000
        0002410332001200000a010a202000d3
    scaling mode: Full aspect 
        supported: Full, Center, Full aspect
    max bpc: 12 
        range: (6, 12)
    Broadcast RGB: Automatic 
        supported: Automatic, Full, Limited 16:235
    link-status: Good 
        supported: Good, Bad
    CONNECTOR_ID: 86 
        supported: 86
    non-desktop: 0 
        range: (0, 1)
  1920x1080 (0x47) 142.520MHz -HSync -VSync +preferred
        h: width  1920 start 1968 end 2000 total 2080 skew    0 clock  68.52KHz
        v: height 1080 start 1083 end 1088 total 1142           clock  60.00Hz
  1920x1080 (0x48) 266.500MHz +HSync -VSync DoubleScan
        h: width  1920 start 1944 end 1960 total 2000 skew    0 clock 133.25KHz
        v: height 1080 start 1081 end 1084 total 1111           clock  59.97Hz
  1920x1080 (0x49) 173.000MHz -HSync +VSync
        h: width  1920 start 2048 end 2248 total 2576 skew    0 clock  67.16KHz
        v: height 1080 start 1083 end 1088 total 1120           clock  59.96Hz
  1920x1080 (0x4a) 138.500MHz +HSync -VSync
        h: width  1920 start 1968 end 2000 total 2080 skew    0 clock  66.59KHz
        v: height 1080 start 1083 end 1088 total 1111           clock  59.93Hz
  1680x1050 (0x4b) 146.250MHz -HSync +VSync
        h: width  1680 start 1784 end 1960 total 2240 skew    0 clock  65.29KHz
        v: height 1050 start 1053 end 1059 total 1089           clock  59.95Hz
  1680x1050 (0x4c) 119.000MHz +HSync -VSync
        h: width  1680 start 1728 end 1760 total 1840 skew    0 clock  64.67KHz
        v: height 1050 start 1053 end 1059 total 1080           clock  59.88Hz
  1600x1024 (0x4d) 103.125MHz +HSync +VSync
        h: width  1600 start 1600 end 1656 total 1664 skew    0 clock  61.97KHz
        v: height 1024 start 1024 end 1029 total 1030           clock  60.17Hz
  1400x1050 (0x4e) 122.000MHz +HSync +VSync
        h: width  1400 start 1488 end 1640 total 1880 skew    0 clock  64.89KHz
        v: height 1050 start 1052 end 1064 total 1082           clock  59.98Hz
  1600x900 (0x4f) 246.000MHz -HSync +VSync DoubleScan
        h: width  1600 start 1728 end 1900 total 2200 skew    0 clock 111.82KHz
        v: height  900 start  901 end  904 total  932           clock  59.99Hz
  1600x900 (0x50) 186.500MHz +HSync -VSync DoubleScan
        h: width  1600 start 1624 end 1640 total 1680 skew    0 clock 111.01KHz
        v: height  900 start  901 end  904 total  926           clock  59.94Hz
  1600x900 (0x51) 118.250MHz -HSync +VSync
        h: width  1600 start 1696 end 1856 total 2112 skew    0 clock  55.99KHz
        v: height  900 start  903 end  908 total  934           clock  59.95Hz
  1600x900 (0x52) 97.500MHz +HSync -VSync
        h: width  1600 start 1648 end 1680 total 1760 skew    0 clock  55.40KHz
        v: height  900 start  903 end  908 total  926           clock  59.82Hz
  1280x1024 (0x53) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1440x900 (0x54) 106.500MHz -HSync +VSync
        h: width  1440 start 1520 end 1672 total 1904 skew    0 clock  55.93KHz
        v: height  900 start  903 end  909 total  934           clock  59.89Hz
  1400x900 (0x55) 103.500MHz -HSync +VSync
        h: width  1400 start 1480 end 1624 total 1848 skew    0 clock  56.01KHz
        v: height  900 start  903 end  913 total  934           clock  59.96Hz
  1400x900 (0x56) 86.500MHz +HSync -VSync
        h: width  1400 start 1448 end 1480 total 1560 skew    0 clock  55.45KHz
        v: height  900 start  903 end  913 total  926           clock  59.88Hz
  1280x960 (0x57) 108.000MHz +HSync +VSync
        h: width  1280 start 1376 end 1488 total 1800 skew    0 clock  60.00KHz
        v: height  960 start  961 end  964 total 1000           clock  60.00Hz
  1440x810 (0x58) 198.125MHz -HSync +VSync DoubleScan
        h: width  1440 start 1548 end 1704 total 1968 skew    0 clock 100.67KHz
        v: height  810 start  811 end  814 total  839           clock  60.00Hz
  1440x810 (0x59) 151.875MHz +HSync -VSync DoubleScan
        h: width  1440 start 1464 end 1480 total 1520 skew    0 clock  99.92KHz
        v: height  810 start  811 end  814 total  833           clock  59.97Hz
  1368x768 (0x5a) 85.250MHz -HSync +VSync
        h: width  1368 start 1440 end 1576 total 1784 skew    0 clock  47.79KHz
        v: height  768 start  771 end  781 total  798           clock  59.88Hz
  1368x768 (0x5b) 72.250MHz +HSync -VSync
        h: width  1368 start 1416 end 1448 total 1528 skew    0 clock  47.28KHz
        v: height  768 start  771 end  781 total  790           clock  59.85Hz
  1360x768 (0x5c) 84.750MHz -HSync +VSync
        h: width  1360 start 1432 end 1568 total 1776 skew    0 clock  47.72KHz
        v: height  768 start  771 end  781 total  798           clock  59.80Hz
  1360x768 (0x5d) 72.000MHz +HSync -VSync
        h: width  1360 start 1408 end 1440 total 1520 skew    0 clock  47.37KHz
        v: height  768 start  771 end  781 total  790           clock  59.96Hz
  1280x800 (0x5e) 174.250MHz -HSync +VSync DoubleScan
        h: width  1280 start 1380 end 1516 total 1752 skew    0 clock  99.46KHz
        v: height  800 start  801 end  804 total  829           clock  59.99Hz
  1280x800 (0x5f) 134.250MHz +HSync -VSync DoubleScan
        h: width  1280 start 1304 end 1320 total 1360 skew    0 clock  98.71KHz
        v: height  800 start  801 end  804 total  823           clock  59.97Hz
  1280x800 (0x60) 83.500MHz -HSync +VSync
        h: width  1280 start 1352 end 1480 total 1680 skew    0 clock  49.70KHz
        v: height  800 start  803 end  809 total  831           clock  59.81Hz
  1280x800 (0x61) 71.000MHz +HSync -VSync
        h: width  1280 start 1328 end 1360 total 1440 skew    0 clock  49.31KHz
        v: height  800 start  803 end  809 total  823           clock  59.91Hz
  1152x864 (0x62) 81.620MHz -HSync +VSync
        h: width  1152 start 1216 end 1336 total 1520 skew    0 clock  53.70KHz
        v: height  864 start  865 end  868 total  895           clock  60.00Hz
  1280x720 (0x63) 156.125MHz -HSync +VSync DoubleScan
        h: width  1280 start 1376 end 1512 total 1744 skew    0 clock  89.52KHz
        v: height  720 start  721 end  724 total  746           clock  60.00Hz
  1280x720 (0x64) 120.750MHz +HSync -VSync DoubleScan
        h: width  1280 start 1304 end 1320 total 1360 skew    0 clock  88.79KHz
        v: height  720 start  721 end  724 total  740           clock  59.99Hz
  1280x720 (0x65) 74.500MHz -HSync +VSync
        h: width  1280 start 1344 end 1472 total 1664 skew    0 clock  44.77KHz
        v: height  720 start  723 end  728 total  748           clock  59.86Hz
  1280x720 (0x66) 63.750MHz +HSync -VSync
        h: width  1280 start 1328 end 1360 total 1440 skew    0 clock  44.27KHz
        v: height  720 start  723 end  728 total  741           clock  59.74Hz
  1024x768 (0x67) 133.475MHz -HSync +VSync DoubleScan
        h: width  1024 start 1100 end 1212 total 1400 skew    0 clock  95.34KHz
        v: height  768 start  768 end  770 total  794           clock  60.04Hz
  1024x768 (0x68) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  960x720 (0x69) 117.000MHz -HSync +VSync DoubleScan
        h: width   960 start 1024 end 1128 total 1300 skew    0 clock  90.00KHz
        v: height  720 start  720 end  722 total  750           clock  60.00Hz
  928x696 (0x6a) 109.150MHz -HSync +VSync DoubleScan
        h: width   928 start  976 end 1088 total 1264 skew    0 clock  86.35KHz
        v: height  696 start  696 end  698 total  719           clock  60.05Hz
  896x672 (0x6b) 102.400MHz -HSync +VSync DoubleScan
        h: width   896 start  960 end 1060 total 1224 skew    0 clock  83.66KHz
        v: height  672 start  672 end  674 total  697           clock  60.01Hz
  1024x576 (0x6c) 98.500MHz -HSync +VSync DoubleScan
        h: width  1024 start 1092 end 1200 total 1376 skew    0 clock  71.58KHz
        v: height  576 start  577 end  580 total  597           clock  59.95Hz
  1024x576 (0x6d) 78.375MHz +HSync -VSync DoubleScan
        h: width  1024 start 1048 end 1064 total 1104 skew    0 clock  70.99KHz
        v: height  576 start  577 end  580 total  592           clock  59.96Hz
  1024x576 (0x6e) 46.500MHz -HSync +VSync
        h: width  1024 start 1064 end 1160 total 1296 skew    0 clock  35.88KHz
        v: height  576 start  579 end  584 total  599           clock  59.90Hz
  1024x576 (0x6f) 42.000MHz +HSync -VSync
        h: width  1024 start 1072 end 1104 total 1184 skew    0 clock  35.47KHz
        v: height  576 start  579 end  584 total  593           clock  59.82Hz
  960x600 (0x70) 96.625MHz -HSync +VSync DoubleScan
        h: width   960 start 1028 end 1128 total 1296 skew    0 clock  74.56KHz
        v: height  600 start  601 end  604 total  622           clock  59.93Hz
  960x600 (0x71) 77.000MHz +HSync -VSync DoubleScan
        h: width   960 start  984 end 1000 total 1040 skew    0 clock  74.04KHz
        v: height  600 start  601 end  604 total  617           clock  60.00Hz
  960x540 (0x72) 86.500MHz -HSync +VSync DoubleScan
        h: width   960 start 1024 end 1124 total 1288 skew    0 clock  67.16KHz
        v: height  540 start  541 end  544 total  560           clock  59.96Hz
  960x540 (0x73) 69.250MHz +HSync -VSync DoubleScan
        h: width   960 start  984 end 1000 total 1040 skew    0 clock  66.59KHz
        v: height  540 start  541 end  544 total  555           clock  59.99Hz
  960x540 (0x74) 40.750MHz -HSync +VSync
        h: width   960 start  992 end 1088 total 1216 skew    0 clock  33.51KHz
        v: height  540 start  543 end  548 total  562           clock  59.63Hz
  960x540 (0x75) 37.250MHz +HSync -VSync
        h: width   960 start 1008 end 1040 total 1120 skew    0 clock  33.26KHz
        v: height  540 start  543 end  548 total  556           clock  59.82Hz
  800x600 (0x76) 81.000MHz +HSync +VSync DoubleScan
        h: width   800 start  832 end  928 total 1080 skew    0 clock  75.00KHz
        v: height  600 start  600 end  602 total  625           clock  60.00Hz
  800x600 (0x77) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  800x600 (0x78) 36.000MHz +HSync +VSync
        h: width   800 start  824 end  896 total 1024 skew    0 clock  35.16KHz
        v: height  600 start  601 end  603 total  625           clock  56.25Hz
  840x525 (0x79) 73.125MHz -HSync +VSync DoubleScan
        h: width   840 start  892 end  980 total 1120 skew    0 clock  65.29KHz
        v: height  525 start  526 end  529 total  544           clock  60.01Hz
  840x525 (0x7a) 59.500MHz +HSync -VSync DoubleScan
        h: width   840 start  864 end  880 total  920 skew    0 clock  64.67KHz
        v: height  525 start  526 end  529 total  540           clock  59.88Hz
  864x486 (0x7b) 32.500MHz -HSync +VSync
        h: width   864 start  888 end  968 total 1072 skew    0 clock  30.32KHz
        v: height  486 start  489 end  494 total  506           clock  59.92Hz
  864x486 (0x7c) 30.500MHz +HSync -VSync
        h: width   864 start  912 end  944 total 1024 skew    0 clock  29.79KHz
        v: height  486 start  489 end  494 total  500           clock  59.57Hz
  800x512 (0x7d) 51.562MHz +HSync +VSync DoubleScan
        h: width   800 start  800 end  828 total  832 skew    0 clock  61.97KHz
        v: height  512 start  512 end  514 total  515           clock  60.17Hz
  700x525 (0x7e) 61.000MHz +HSync +VSync DoubleScan
        h: width   700 start  744 end  820 total  940 skew    0 clock  64.89KHz
        v: height  525 start  526 end  532 total  541           clock  59.98Hz
  800x450 (0x7f) 59.125MHz -HSync +VSync DoubleScan
        h: width   800 start  848 end  928 total 1056 skew    0 clock  55.99KHz
        v: height  450 start  451 end  454 total  467           clock  59.95Hz
  800x450 (0x80) 48.750MHz +HSync -VSync DoubleScan
        h: width   800 start  824 end  840 total  880 skew    0 clock  55.40KHz
        v: height  450 start  451 end  454 total  463           clock  59.82Hz
  640x512 (0x81) 54.000MHz +HSync +VSync DoubleScan
        h: width   640 start  664 end  720 total  844 skew    0 clock  63.98KHz
        v: height  512 start  512 end  514 total  533           clock  60.02Hz
  720x450 (0x82) 53.250MHz -HSync +VSync DoubleScan
        h: width   720 start  760 end  836 total  952 skew    0 clock  55.93KHz
        v: height  450 start  451 end  454 total  467           clock  59.89Hz
  700x450 (0x83) 51.750MHz -HSync +VSync DoubleScan
        h: width   700 start  740 end  812 total  924 skew    0 clock  56.01KHz
        v: height  450 start  451 end  456 total  467           clock  59.96Hz
  700x450 (0x84) 43.250MHz +HSync -VSync DoubleScan
        h: width   700 start  724 end  740 total  780 skew    0 clock  55.45KHz
        v: height  450 start  451 end  456 total  463           clock  59.88Hz
  640x480 (0x85) 54.000MHz +HSync +VSync DoubleScan
        h: width   640 start  688 end  744 total  900 skew    0 clock  60.00KHz
        v: height  480 start  480 end  482 total  500           clock  60.00Hz
  640x480 (0x86) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
  720x405 (0x87) 22.500MHz -HSync +VSync
        h: width   720 start  744 end  808 total  896 skew    0 clock  25.11KHz
        v: height  405 start  408 end  413 total  422           clock  59.51Hz
  720x405 (0x88) 21.750MHz +HSync -VSync
        h: width   720 start  768 end  800 total  880 skew    0 clock  24.72KHz
        v: height  405 start  408 end  413 total  419           clock  58.99Hz
  684x384 (0x89) 42.625MHz -HSync +VSync DoubleScan
        h: width   684 start  720 end  788 total  892 skew    0 clock  47.79KHz
        v: height  384 start  385 end  390 total  399           clock  59.88Hz
  684x384 (0x8a) 36.125MHz +HSync -VSync DoubleScan
        h: width   684 start  708 end  724 total  764 skew    0 clock  47.28KHz
        v: height  384 start  385 end  390 total  395           clock  59.85Hz
  680x384 (0x8b) 42.375MHz -HSync +VSync DoubleScan
        h: width   680 start  716 end  784 total  888 skew    0 clock  47.72KHz
        v: height  384 start  385 end  390 total  399           clock  59.80Hz
  680x384 (0x8c) 36.000MHz +HSync -VSync DoubleScan
        h: width   680 start  704 end  720 total  760 skew    0 clock  47.37KHz
        v: height  384 start  385 end  390 total  395           clock  59.96Hz
  640x400 (0x8d) 41.750MHz -HSync +VSync DoubleScan
        h: width   640 start  676 end  740 total  840 skew    0 clock  49.70KHz
        v: height  400 start  401 end  404 total  415           clock  59.88Hz
  640x400 (0x8e) 35.500MHz +HSync -VSync DoubleScan
        h: width   640 start  664 end  680 total  720 skew    0 clock  49.31KHz
        v: height  400 start  401 end  404 total  411           clock  59.98Hz
  576x432 (0x8f) 40.810MHz -HSync +VSync DoubleScan
        h: width   576 start  608 end  668 total  760 skew    0 clock  53.70KHz
        v: height  432 start  432 end  434 total  447           clock  60.06Hz
  640x360 (0x90) 37.250MHz -HSync +VSync DoubleScan
        h: width   640 start  672 end  736 total  832 skew    0 clock  44.77KHz
        v: height  360 start  361 end  364 total  374           clock  59.86Hz
  640x360 (0x91) 31.875MHz +HSync -VSync DoubleScan
        h: width   640 start  664 end  680 total  720 skew    0 clock  44.27KHz
        v: height  360 start  361 end  364 total  370           clock  59.83Hz
  640x360 (0x92) 18.000MHz -HSync +VSync
        h: width   640 start  664 end  720 total  800 skew    0 clock  22.50KHz
        v: height  360 start  363 end  368 total  376           clock  59.84Hz
  640x360 (0x93) 17.750MHz +HSync -VSync
        h: width   640 start  688 end  720 total  800 skew    0 clock  22.19KHz
        v: height  360 start  363 end  368 total  374           clock  59.32Hz
  512x384 (0x94) 32.500MHz -HSync -VSync DoubleScan
        h: width   512 start  524 end  592 total  672 skew    0 clock  48.36KHz
        v: height  384 start  385 end  388 total  403           clock  60.00Hz
  512x288 (0x95) 23.250MHz -HSync +VSync DoubleScan
        h: width   512 start  532 end  580 total  648 skew    0 clock  35.88KHz
        v: height  288 start  289 end  292 total  299           clock  60.00Hz
  512x288 (0x96) 21.000MHz +HSync -VSync DoubleScan
        h: width   512 start  536 end  552 total  592 skew    0 clock  35.47KHz
        v: height  288 start  289 end  292 total  296           clock  59.92Hz
  480x270 (0x97) 20.375MHz -HSync +VSync DoubleScan
        h: width   480 start  496 end  544 total  608 skew    0 clock  33.51KHz
        v: height  270 start  271 end  274 total  281           clock  59.63Hz
  480x270 (0x98) 18.625MHz +HSync -VSync DoubleScan
        h: width   480 start  504 end  520 total  560 skew    0 clock  33.26KHz
        v: height  270 start  271 end  274 total  278           clock  59.82Hz
  400x300 (0x99) 20.000MHz +HSync +VSync DoubleScan
        h: width   400 start  420 end  484 total  528 skew    0 clock  37.88KHz
        v: height  300 start  300 end  302 total  314           clock  60.32Hz
  400x300 (0x9a) 18.000MHz +HSync +VSync DoubleScan
        h: width   400 start  412 end  448 total  512 skew    0 clock  35.16KHz
        v: height  300 start  300 end  301 total  312           clock  56.34Hz
  432x243 (0x9b) 16.250MHz -HSync +VSync DoubleScan
        h: width   432 start  444 end  484 total  536 skew    0 clock  30.32KHz
        v: height  243 start  244 end  247 total  253           clock  59.92Hz
  432x243 (0x9c) 15.250MHz +HSync -VSync DoubleScan
        h: width   432 start  456 end  472 total  512 skew    0 clock  29.79KHz
        v: height  243 start  244 end  247 total  250           clock  59.57Hz
  320x240 (0x9d) 12.587MHz -HSync -VSync DoubleScan
        h: width   320 start  328 end  376 total  400 skew    0 clock  31.47KHz
        v: height  240 start  245 end  246 total  262           clock  60.05Hz
  360x202 (0x9e) 11.250MHz -HSync +VSync DoubleScan
        h: width   360 start  372 end  404 total  448 skew    0 clock  25.11KHz
        v: height  202 start  204 end  206 total  211           clock  59.51Hz
  360x202 (0x9f) 10.875MHz +HSync -VSync DoubleScan
        h: width   360 start  384 end  400 total  440 skew    0 clock  24.72KHz
        v: height  202 start  204 end  206 total  209           clock  59.13Hz
  320x180 (0xa0)  9.000MHz -HSync +VSync DoubleScan
        h: width   320 start  332 end  360 total  400 skew    0 clock  22.50KHz
        v: height  180 start  181 end  184 total  188           clock  59.84Hz
  320x180 (0xa1)  8.875MHz +HSync -VSync DoubleScan
        h: width   320 start  344 end  360 total  400 skew    0 clock  22.19KHz
        v: height  180 start  181 end  184 total  187           clock  59.32Hz
DP-1 connected primary 8192x3456+0+0 (0x5dd) normal (normal left inverted right x axis y axis) 800mm x 330mm
    Identifier: 0x43
    Timestamp:  3453569
    Subpixel:   unknown
    Gamma:      1.0:1.0:1.0
    Brightness: 1.0
    Clones:    
    CRTC:       0
    CRTCs:      1 0 2
    Transform:  1.599991 0.000000 0.000000
                0.000000 1.599991 0.000000
                0.000000 0.000000 1.000000
               filter: bilinear
    EDID: 
        00ffffffffffff001e6d2177d3ad0200
        091d0104b55021789e09c1ae5044af26
        0e50542108007140818081c0a9c0d1c0
        810001010101e77c70a0d0a029503020
        3a00204a3100001a9d6770a0d0a02250
        30203a00204a3100001a000000fd0030
        3d1e874c000a202020202020000000fc
        004c472048445220354b0a202020033d
        02031971449004030123090707830100
        00e305c000e30605014dd000a0f0703e
        803020650c204a3100001a286800a0f0
        703e800890650c204a3100001a000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        000000000000000000000000000000e3
        701279030001000c401fe40c00147008
        90788999030014e07c00086f0d9f002f
        801f009f052800020009000000000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000002590
        701279030012001682100000ff096f08
    _MUTTER_PRESENTATION_OUTPUT: 0 
    Content Protection: Undesired 
        supported: Undesired, Desired, Enabled
    max bpc: 12 
        range: (6, 12)
    Broadcast RGB: Automatic 
        supported: Automatic, Full, Limited 16:235
    audio: auto 
        supported: force-dvi, off, auto, on
    link-status: Good 
        supported: Good, Bad
    CONNECTOR_ID: 92 
        supported: 92
    non-desktop: 0 
        range: (0, 1)
  3440x1440 (0x5df) 319.750MHz +HSync -VSync +preferred
        h: width  3440 start 3488 end 3520 total 3600 skew    0 clock  88.82KHz
        v: height 1440 start 1443 end 1453 total 1481           clock  59.97Hz
  3840x2160 (0x5e0) 533.250MHz +HSync -VSync
        h: width  3840 start 3888 end 3920 total 4000 skew    0 clock 133.31KHz
        v: height 2160 start 2214 end 2219 total 2222           clock  60.00Hz
  3840x2160 (0x5e1) 266.640MHz +HSync -VSync
        h: width  3840 start 3848 end 3992 total 4000 skew    0 clock  66.66KHz
        v: height 2160 start 2214 end 2219 total 2222           clock  30.00Hz
  3440x1440 (0x5e2) 319.680MHz +HSync -VSync
        h: width  3440 start 3488 end 3520 total 3600 skew    0 clock  88.80KHz
        v: height 1440 start 1443 end 1453 total 1481           clock  59.96Hz
  3440x1440 (0x5e3) 265.250MHz +HSync -VSync
        h: width  3440 start 3488 end 3520 total 3600 skew    0 clock  73.68KHz
        v: height 1440 start 1443 end 1453 total 1474           clock  49.99Hz
  1920x1080 (0x5e4) 148.500MHz -HSync -VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz
  1920x1080 (0x5e5) 148.500MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz
  1920x1080 (0x5e6) 148.352MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.43KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  59.94Hz
  1600x900 (0x5e7) 108.000MHz +HSync +VSync
        h: width  1600 start 1624 end 1704 total 1800 skew    0 clock  60.00KHz
        v: height  900 start  901 end  904 total 1000           clock  60.00Hz
  1280x1024 (0x53) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1280x800 (0x60) 83.500MHz -HSync +VSync
        h: width  1280 start 1352 end 1480 total 1680 skew    0 clock  49.70KHz
        v: height  800 start  803 end  809 total  831           clock  59.81Hz
  1152x864 (0x5e8) 81.579MHz -HSync +VSync
        h: width  1152 start 1216 end 1336 total 1520 skew    0 clock  53.67KHz
        v: height  864 start  865 end  868 total  895           clock  59.97Hz
  1280x720 (0x5e9) 74.250MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  45.00KHz
        v: height  720 start  725 end  730 total  750           clock  60.00Hz
  1280x720 (0x5ea) 74.176MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  44.96KHz
        v: height  720 start  725 end  730 total  750           clock  59.94Hz
  1024x768 (0x68) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  800x600 (0x77) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  720x480 (0x5eb) 27.027MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.50KHz
        v: height  480 start  489 end  495 total  525           clock  60.00Hz
  720x480 (0x5ec) 27.000MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.47KHz
        v: height  480 start  489 end  495 total  525           clock  59.94Hz
  640x480 (0x5ed) 25.200MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.50KHz
        v: height  480 start  490 end  492 total  525           clock  60.00Hz
  640x480 (0x86) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
  5120x2160_30.00 (0x5dd) 452.750MHz -HSync +VSync *current
        h: width  5120 start 5448 end 5992 total 6864 skew    0 clock  65.96KHz
        v: height 2160 start 2163 end 2173 total 2200           clock  29.98Hz
  5120x2160_60.00 (0x5f1) 949.000MHz -HSync +VSync
        h: width  5120 start 5536 end 6096 total 7072 skew    0 clock 134.19KHz
        v: height 2160 start 2163 end 2173 total 2237           clock  59.99Hz
DP-2 connected (normal left inverted right x axis y axis)
    Identifier: 0x44
    Timestamp:  3453569
    Subpixel:   unknown
    Clones:    
    CRTCs:      1 0 2
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
    EDID: 
        00ffffffffffff001e6d2177d3ad0200
        091d0104b55021789e09c1ae5044af26
        0e505420000001010101010101010101
        01010101010100000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000fd0030
        3d1e874c000a202020202020000000fc
        004c472048445220354b0a202020017a
        701279030001000c401fe40c00147008
        9078899912001680101000ff096f0800
        0000000047534d217701010101030014
        f0890008ff094f0007801f006f085100
        00000700000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000000000
        00000000000000000000000000003290
    TILE: 1 1 2 1 1 0 2560 2160 
    Content Protection: Undesired 
        supported: Undesired, Desired, Enabled
    max bpc: 12 
        range: (6, 12)
    Broadcast RGB: Automatic 
        supported: Automatic, Full, Limited 16:235
    audio: auto 
        supported: force-dvi, off, auto, on
    link-status: Good 
        supported: Good, Bad
    CONNECTOR_ID: 100 
        supported: 100
    non-desktop: 0 
        range: (0, 1)
  2560x2160 (0x5de) 353.120MHz +HSync -VSync
        h: width  2560 start 2568 end 2600 total 2640 skew    0 clock 133.76KHz
        v: height 2160 start 2161 end 2169 total 2242           clock  59.66Hz
  640x480 (0x86) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
DP-3 disconnected (normal left inverted right x axis y axis)
    Identifier: 0x45
    Timestamp:  3453569
    Subpixel:   unknown
    Clones:    
    CRTCs:      1 0 2
    Transform:  1.000000 0.000000 0.000000
                0.000000 1.000000 0.000000
                0.000000 0.000000 1.000000
               filter: 
    Content Protection: Undesired 
        supported: Undesired, Desired, Enabled
    max bpc: 12 
        range: (6, 12)
    Broadcast RGB: Automatic 
        supported: Automatic, Full, Limited 16:235
    audio: auto 
        supported: force-dvi, off, auto, on
    link-status: Good 
        supported: Good, Bad
    CONNECTOR_ID: 106 
        supported: 106
    non-desktop: 0 
        range: (0, 1)

UPDATE 3:
I tried running mainline kernel 5.6.7 in the hope that TB lane bonding support would fix the issue, but it did not.

I was able to get it working by copying the specific mode from macOS with SwitchResX. It did not require using both DisplayPorts with xrandr for me. I’ve got DisplayPort 1.2 selected in my OSD.

Use xrandr to find the first output for the monitor and put that below in place of DisplayPort-2

xrandr --newmode "5120x2160" 703.75 5120 5168 5200 5280 2160 2163 2173 2222 +HSync -VSync
xrandr --addmode DisplayPort-2 5120x2160
xrandr --output DisplayPort-2 --mode 5120x2160

Note I’m on 5.4.0 kernel and Gnome 3.36.2

Tagged : / / / /

Linux HowTo: Should I distribute my devices among USB-C ports, or is it ok to have one port to rule them all?

Original Source Link

I’m buying a 16″ MacBookPro which only has USB-C ports. I currently have no USB-C devices, so I am thinking of buying a hub/docking station with a few different ports and 85W+ pass-through charging and then attaching to one of those USB 3.0 ports another USB only hub (perhaps 12 ports) to attach all my devices to (e.g. HDD, drawing tablet, mic etc.).

Is it damaging to have all these devices + charging attaching to only one port? Should I instead spread them out in different ports through different dongles? Do I have any meaningful hit in performance for my HDD read/write or my audio interface and such that I should worry about?

The 16″ MacBook Pro has Four Thunderbolt-3 ports. Each TB3 port can do 40 Gbps transfer rate, or 4X of the top-grade USB 3.1 Gen2 link. Although the TB3 can encapsulate USB3 traffic, it is quite more powerful than USB-C. So you better carefully consider buying a native TB3 docking station, with all bells and whistles, with regular USB3 downstream ports. It is very likely that a single TB3 port from MacBook will be sufficient for all your needs, although splitting heavy traffic over different ports might improve aggregate system performance.

First off, you should not have fear of damage. Assuming the hubs are properly made, USB has a safety feature in that if any single port drawing too much current it will be disabled.

As for performance, USBv3 is extremely fast. Other than your hard drive, data demands from the devices you listed are near non-existent. You might want to keep the hard drive on its own port, but even that is probably not necessary.

Tagged : / /

Making Game: Should I distribute my devices among USB-C ports, or is it ok to have one port to rule them all?

Original Source Link

I’m buying a 16″ MacBookPro which only has USB-C ports. I currently have no USB-C devices, so I am thinking of buying a hub/docking station with a few different ports and 85W+ pass-through charging and then attaching to one of those USB 3.0 ports another USB only hub (perhaps 12 ports) to attach all my devices to (e.g. HDD, drawing tablet, mic etc.).

Is it damaging to have all these devices + charging attaching to only one port? Should I instead spread them out in different ports through different dongles? Do I have any meaningful hit in performance for my HDD read/write or my audio interface and such that I should worry about?

The 16″ MacBook Pro has Four Thunderbolt-3 ports. Each TB3 port can do 40 Gbps transfer rate, or 4X of the top-grade USB 3.1 Gen2 link. Although the TB3 can encapsulate USB3 traffic, it is quite more powerful than USB-C. So you better carefully consider buying a native TB3 docking station, with all bells and whistles, with regular USB3 downstream ports. It is very likely that a single TB3 port from MacBook will be sufficient for all your needs, although splitting heavy traffic over different ports might improve aggregate system performance.

First off, you should not have fear of damage. Assuming the hubs are properly made, USB has a safety feature in that if any single port drawing too much current it will be disabled.

As for performance, USBv3 is extremely fast. Other than your hard drive, data demands from the devices you listed are near non-existent. You might want to keep the hard drive on its own port, but even that is probably not necessary.

Tagged : / /

Linux HowTo: Mini Display Port to USB-C

Original Source Link

I have an external monitor with only USB-C as input (Lenovo M14), and i have an old laptop (Lenovo 2017) with only HDMI and Min Display port as output.

I seek for an adapter in internet but and i dont found, any idea ?

“i want use it with an another laptop, and i don’t understand why they
isn’t found an adapter :)”

Full-featured USB-C port usually does have the capability to switch into Displayport mode, but the DisplayPort cannot turn itself into ALT-DP Type-C mode. That’s why you can see a lot of dongles that connect Type-C port to DP cable (direction from Type-C-host to DP-monitor), and not the other way around.

While it is technically possible to bridge the DP output to Type-C cable electrically, you need to negotiate the ALT-DP mode with your monitor. To do so the driving port must have special Power Delivery messaging capability. The DP alone does not have this capability, so there must be an intelligent controller to drive the Type-C receptacle port and make the monitor to think that it is connected to a real full-featured USB-C port with DP support. This old thread illustrates the challenge to make it happen. See also this youtube video. It looks like the DELOCK 63928 device is only the one in the market to implement this idea. However, you might need an external Type-C AC-DC adapter to provide the power to your monitor; the DP will unlikely to supply it.

I am aware of two possible solutions:
DELOCK 63928 + mDP to Dp Cable
and
Wacom Link Plus

Search was mildly frustrating, all other adapters I found work backwards, connecting HDMI/Dp monitor to USB-C device.

Tagged : / /

Ubuntu HowTo: How do I add a USB-C OTG network interface in 20.04 LTS?

Original Source Link

I am trying to add a USB OTG networking interface to Ubuntu 20.04 LTS on a Raspberry PI 4. I know the hardware is capable of supporting this because this guide works with the debian-based Raspbian OS, which I have successfully tested. The definition of the usb networking interface seems to be the issue, as the rest of the steps in the guide align fairly well between Raspian and Ubuntu.

Specifically, since Ubuntu 20.04 is using cloud-init, I’m attempting to add the usb0 ethernet interface by changing /etc/netplan/50-cloud-init.yaml to the following:

network:
ethernets:
    eth0:
        dhcp4: true
        optional: true
    usb0:
        dhcp4: false
        addresses: [172.25.25.25/29]
version: 2

I never see the usb0 interface in ifconfig after generating and applying netplan or rebooting. Is there another way to properly add the interface other than adding to this yaml file since the /etc/network/interfaces.d/ is not used in 20.04?

Tagged : / / /

Making Game: Mini Display Port to USB-C

Original Source Link

I have an external monitor with only USB-C as input (Lenovo M14), and i have an old laptop (Lenovo 2017) with only HDMI and Min Display port as output.

I seek for an adapter in internet but and i dont found, any idea ?

“i want use it with an another laptop, and i don’t understand why they
isn’t found an adapter :)”

Full-featured USB-C port usually does have the capability to switch into Displayport mode, but the DisplayPort cannot turn itself into ALT-DP Type-C mode. That’s why you can see a lot of dongles that connect Type-C port to DP cable (direction from Type-C-host to DP-monitor), and not the other way around.

While it is technically possible to bridge the DP output to Type-C cable electrically, you need to negotiate the ALT-DP mode with your monitor. To do so the driving port must have special Power Delivery messaging capability. The DP alone does not have this capability, so there must be an intelligent controller to drive the Type-C receptacle port and make the monitor to think that it is connected to a real full-featured USB-C port with DP support. This old thread illustrates the challenge to make it happen. See also this youtube video. It looks like the DELOCK 63928 device is only the one in the market to implement this idea. However, you might need an external Type-C AC-DC adapter to provide the power to your monitor; the DP will unlikely to supply it.

I am aware of two possible solutions:
DELOCK 63928 + mDP to Dp Cable
and
Wacom Link Plus

Search was mildly frustrating, all other adapters I found work backwards, connecting HDMI/Dp monitor to USB-C device.

Tagged : / /

Linux HowTo: Why can’t I find a USB-C hub with multiple USB-C ports?

Original Source Link

My computer only has one USB-C port and I want to connect multiple USB-C devices to it.

I have trawled through Amazon but am amazed that I cannot find a single one. There are many hubs that have USB 3.1 USB-A ports but not USB-C ones.

Is there a limitation in the spec that prevents this being possible?

The chips needed to produce one-to-many USB-C hubs essentially do not currently exist.

Some of the same complaints are outlined here:

https://mjtsai.com/blog/2017/10/14/the-impossible-dream-of-usb-c/

None of these USB-C “hubs” actually give you more USB-C ports.

There is supposedly news for 2019/2020 that suggests hub chips may be coming soon:

Update (2018-07-30): Accidental Tech Podcast reports on a rumor that next year Intel will finally ship the chip that’s needed for making a USB-C that adds additional type-C ports.

http://atp.fm/episodes/284

We’ve heard from an anonymous person that Intel is finally releasing a hub chip for USB-C next year. We may not see products based on it until 2020.

Also search a lot and only found one :

The Belkin 4-Port Mini USB-C Hub with Two USB-C

All four ports support only USB 3.0 speed (5 Gbps = 300 MB/sec effective).

However please note:

The USB-C 4-Port Mini Hub does not support pass-through charging and
video output to monitor. This hub is only intended to use with USB-A
and USB-C peripherals.

Update:

Found a 2nd one from Sitecom:

Turn your USB-C port into 3 ultrafast USB-C ports and 1 USB-C Power
Delivery Port

  • USB 3.1 Type-C input
  • 3 x USB 3.1 Type-C Output (10Gbps data and 7.5W power)
  • 1 x USB Type-C Power Delivery (100W power)
  • Supports USB SuperSpeed 10Gbps, downwards compatible with USB 3.0 / 2.0
  • Supports USB Battery Charging (BC) 1.2 up to 7.5W (5V / 1.5A)

In Belgium 4 usbc ports in a usbc in hub

https://www.mediamarkt.be/nl/product/_sitecom-hub-usb-c-4-poorten-cn-386-1838308.html?rbtc=%7c%7c%7c%7cp%7c%7c&gclid=EAIaIQobChMIqN_x1aeE6AIVV4jVCh1tZAWTEAQYASABEgKEAPD_BwE&gclsrc=aw.ds

https://www.sitecom.com/en/usb-c-hub-4-port/cn-386/p/1881

SPECIFICATIONS

USB 3.1 Type-C input
3 x USB 3.1 Type-C Output (10Gbps data and 7.5W power)
1 x USB Type-C Power Delivery  (100W power)
Supports USB SuperSpeed 10Gbps, downwards compatible with USB 3.0 / 2.0
Supports USB Battery Charging (BC) 1.2 up to 7.5W (5V / 1.5A)
USB Power Delivery 2.0 up to 100W (5A / 20V)
Plug-and-play, no driver software required
Integrated USB Type-C Cable
Compact, aluminum design

One of the only shipping one-to-many USB-C hubs I’ve seen is in the LG UltraFine 5K Display, introduced by Apple alongside their USB-C / Thunderbolt 3 MacBook Pro in 2016.

A single Thunderbolt 3 cable (included) provides up to 85W of charging power to your MacBook Pro with Thunderbolt 3 (USB-C) ports. And three downstream USB-C ports (5 Gbps) offer additional connectivity and power to compatible devices and accessories.

This part is unique in that it is not a multi-port “dock” but a true one-to-many “hub”.

It would be interesting to see if this part could be harvested from a damaged display and used independently.

four USB-C ports, one cable to the Mac

Here are some. I’ll update this list as I find more.

Please feel free to add to this list. I’ll only add products that offer something different, better, or cheaper than other products listed here, so as not to create a list of garbage.

This question is old, but I have just found a solution that works for me and I believe works for others looking for such a beast… The IOGEAR GUH3C22P:

It has four ports total: USB-A and USB-C ports.

  • The USB-A ports are 3.0.
  • But the USB-C ports are 3.1 Gen 2 with power delivery (PD 3.0) pass-through up to 100W (85W max with 15W going to the hub itself).

This is exactly what I was looking for for my MacBook Air! Works quite well and speeds from external USB drives are really great.

enter image description here

My search pulled up these, altho I haven’t pulled the trigger:

I found the following product “USB C Hub, Wakio 12-in-1” on amazon that add two additional USB-C ports. However, both ports are USB C 2.0 and not 3.0; so, the speed will be magnitudes slower.

Product showing two USB C ports in addition to the third USB C for the main power source.

I found one with four USB-C ports! The Sitecom CN-385. It only goes up to 5GBit/s, but judging by the (admittedly just two) reviews on amazon, it is more reliable than its big brother, the CN-386, which has Power Delivery and 10GBit/s support.

enter image description here

Tagged :