9

Sorry if this is obvious, but I am a bit of a novice. I am using an Acer Nitro 5 laptop with a dual boot (Windows 10 and Ubuntu 18.04.1 LTS using Budgie). I have 2 fast charging ports (one usb-3 and one usb-c) that are indicated with a battery icon next to the port. When I boot into Windows, if my phone is plugged into either port it will charge rapidly at 1.5 amps. When I boot into Ubuntu I can only charge slowly at .5 amps using same cords etc. Is there anything I can do to get the fast charging under Ubuntu? Ubuntu does recognize my phone and has the correct model number for it when I plug it in, and allows data transfer.

lspci -d ::0c03 -k gives me the following:

00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31)
    Subsystem: Acer Incorporated [ALI] Sunrise Point-H USB 3.0 xHCI Controller
    Kernel driver in use: xhci_hcd

and lsmod | grep typec gives me: typec 24576 0

Legacy USB is not turned on in BIOS.

Mark Smith
  • 91
  • 1
  • 3
  • Does your USB-C port need proprietary drivers to enable the fast charging (aka forwarding more electricity to this port)? – dadexix86 Oct 02 '18 at 21:01
  • I did a clean install of Windows on a new drive in the laptop and did not install any drivers other than for the GPU. Unless Windows installed one through windows update, I shouldn't be using anything proprietary. – Mark Smith Oct 02 '18 at 21:05
  • Attach to your question the output of `lspci -d ::0c03 -k` please – dadexix86 Oct 02 '18 at 21:13
  • Great. What is the output of `lsmod | grep typec`? (again, add it to your question, and this time use the code formatting please) – dadexix86 Oct 02 '18 at 21:19
  • About `lsmod`, this means that the kernel module for USB-C is not loaded. Try lo load it with `sudo modprobe typec`, wait some time and then see if the phone starts charging at top speed. – dadexix86 Oct 02 '18 at 21:31
  • Also, you want to make sure that in your BIOS the option `Legacy USB` is turned off ([source](https://askubuntu.com/a/997292/29595)) – dadexix86 Oct 02 '18 at 21:34
  • While I now have output from `lsmod | grep typec`, I am still only charging slowly at .5 amps (phone estimates 8 hours for a complete charge). – Mark Smith Oct 02 '18 at 21:55
  • You still had output after rebooting to check the bios? – dadexix86 Oct 02 '18 at 22:18
  • I only get the output if I do `sudo modprobe typec` after rebooting as well. What is curious is that when rebooting, the phone starts to charge rapidly while booting, in bios, or in grub. The second I get to the login screen in Ubuntu, it starts charging slowly. – Mark Smith Oct 02 '18 at 22:37
  • This must be Linux issue. Some USB chipsets support BC (battery charging), which OS kernel USB driver must support to operate as expected. Apparently, Windows driver properly supports USB BC, while Linux doesn't. You might have better luck if you upgrade Ubuntu to latest kernel. – mvp Oct 04 '18 at 07:10
  • 1
    Relevant LWN article: https://lwn.net/Articles/693095. Basically, 1.5A charging should work if Linux can detect your USB port as CDP (charging downstream port). I believe it detects it as SDP now (standard downstream port). – mvp Oct 04 '18 at 07:26

2 Answers2

0

You can use this command to see how much amperage Linux is providing to the port:

sudo lsusb -v

This will print out a detailed report of your USB system. You want to look for areas with the MaxPower sign, you can filter and see them only using:

sudo lsusb -v | grep -i power

You should see output with lines like this:

MaxPower              500mA

There are tools and kernel modules that allow you to manually change how much power the USB port is given, but these tools could damage your system or hardware connected to those ports. One such tool is ipad-charge another is uhubctl (you have been warned)

Kristopher Ives
  • 5,419
  • 2
  • 27
  • 36
  • 5
    uhubctl can change how much power is provided, but only off and back on. It cannot change output from 0.5A to 1.5A, and cannot damage anything (I am uhubctl author). – mvp Oct 04 '18 at 07:04
-4

Some USB cables are used only for transferring data, others only for charging, and others allow both. I think you need to unplug other things from your laptop to make sure more power goes to the phone.

CentaurusA
  • 2,652
  • 1
  • 21
  • 27
Ivan-Petrov
  • 5
  • 1
  • 4
  • In both Windows and Ubuntu the only thing I have plugged into my laptop, besides the power cord, is either my phone by usb-c to usb-c cable, or my phone by usb-c to usb-a. Both cords allow both fast charging and data transfer under Windows, so I don't think the cords are the issue. – Mark Smith Oct 02 '18 at 21:31