USB cooling pad causes USB-A port to die, requiring an eject and re-insert

I wonder if the fan is pulling too much current or something. Which OS is this under? If Linux, does the journal/syslog have anything interesting around that time?

3 Likes

If you’re linux running powertop would also be a good idea to get an estimate of the current pulled by the cooling pad.

I’m running Windows 10. I tried using USBDeview to get a power reading, but it wasn’t giving me anything when I connected the USB cooling pad.

I went out, bought another cooling pad from the store and it works fine. Connected for a few hours now without issue. It must be the power draw on the old cooling pad I’ve had.

I wasn’t aware that a device could draw too much power from a USB port – I thought the USB port itself would control the amount of draw allowed… I guess that’s incorrect?

It’s limited to a extent, with fans they can have reasonably high current draw. I cannot remember if the ports are 2.4 or 1 amp ports. Was it being suffocated as that can cause more current draw? The only exception to it being limited is if it’s directly connected between the plug and switch then the fans as there is no control circuitry. Does the old cooling pad have a current draw on the pad?

Unfortunately not… The port is usually just shut down by the USB controller if it exceeds the current limit. For USB2 that is 500mA, for USB3 it was 900mA (I have no idea what it is now).

Some desktop computers I’ve used don’t care about the limits, but laptops tend to be especially picky.

Depending on your drivers (if you’re on Windows) there used to be a pop-up notifying you that a port was shut down due to a power surge

I modified my Targus and am running two Noctua NF-A12x25 (5V version) off a single USB-A module continuously without any problem. The fans I removed from the Targus were lower spec’d.

Can you elaborate more here? I have the exact same issue with a “Havit” branded cooling pad and would be interested to fix the issue.

The Targus cooler I had been using had two tiny fans inside connected to the USB hub built into the cooler. I removed those fans and replaced them with two Noctua fans. The framework USB module connects to the Targus; which has an internal USB hub that drives both fans.

Thank you @malachid. Interesting, I thought the fans you replaced would have been of higher power draw than the Nocuta. There goes the theory of overloading the port then.

My current solution is using a USB 3.0 hub which 100% solves the issue. Really strange as I have tested with about 8 other devices and only the FW has this issue. Another quirk of the machine perhaps.

We have a user reporting the same issue on a Havit HV-F2056 cooling pad as well. And we purchased this cooling pad, however we cannot reproduce the issue with the cooling pad alone.
Do you plug additional devices into your cooling pad?
Looking inside the Havit cooling pad, it passively passes the usb-2 signals from one connector to another without any hub IC. Also there are no capacitors to smooth current spikes from the fans. I do wonder if there is a peak current from the pad that exceeds the port current rating.
I did measure the average current, and it is pretty low, only about 600mA, and each port will deliver at least 1.5A.

4 Likes

That’s me! :slight_smile:

No additional devices. I didn’t have a non destructive method to measure current directly but got a value of 760mA using software for battery reported drain and a multimeter on the PCB at 4.72V so similarly low current. I have recently sent a video demo and some images of the PCB via support. I hope to be able to understand why this happens, my concern is if this could happen with devices that could loose data.

1 Like

@E_B for your targus cooling pad, was this a recent purchase or an older device?
I suspect the cooling pad has a high current ripple, and may trip our over current protection circuit on the port.
Looking at another cooling pad I have, I see the cooling pad does not include any capacitance to smooth out current ripple from the fans.

1 Like

@Kieran_Levin It was an older device – at least several years old. Per above, the newer replacement cooling pad (different brand) worked fine.

Is the current draw issue more likely to affect older devices?

@E_B
I really don’t know without having an old and new device to replicate the issue. But I did pickup the same model that @Usernames reported having issues and I cannot reproduce. I suspect they may have improved the design over the years to fix this.

Our laptop implements a load switch IC on each usb-c port with current monitoring and will trip a fault condition if overcurrent happens for a predefined threshold and time.

A lot of hubs and even laptops do not implement per port overcurrent protection, so I suspect that other systems may work ok if devices are in the over current region for a low duty cycle. However since we have 4 type-c ports, we need to make sure that we do not exceed the current available from the laptop.

Right now just a theory, as we have not been able to reproduce and dig in more. I would suggest not using a cooling pad if it has this issue, or just unplugging it and using it as a passive stand instead, as the internal fan is designed to keep the system cool.

3 Likes

Wouldn’t the current need to exceed the 1.5A limit even briefly for that to happen?

I don’t have an oscilloscope but would a multimeter be able to register this ripple?

Support has closed the ticket without watching the video and I suspect the pictures of the PCB either so I decided to get destructive.

I measured 0.65A (multimeter) peak draw when starting up the fans and 0.58A constant either via the USB 3 hub or directly into the port.

The power loss is never instant, it always flickers at least once before it stops working, this was the purpose of sending the video nobody has watched.

1 Like

@Usernames Yeah when we looked at your ticket i measured the cooling pad you had and got similar measurements.

If it was generating high current spikes they might be too short to show up on a multimeter, as they are usually pretty slow.

One other idea I just thought you could try is, what happens if you plug a low power usb-a device into the second usb-a port on your cooling pad like a mouse. Does the problem still happen?

1 Like

Yeah I figured and mine is no Fluke, thanks.

Actually higher power draw devices seem to stop it happening like charging a devices battery (1A total at the laptop port) or even the RF dongle for my old wireless mouse.

Low power devices like flash drives and my USB mouse perhaps extended the time a bit before the port eventually dies.

Additional draw perhaps stabilising the spikes?

An update. I installed BIOS 3.09 excited by

Unfortunately not a fix for this issue.

If we can figure out the cause maybe we can turn it into a feature, disabling USB A ports stopping them draining power when you don’t need them avoiding the need to remove them to get better runtime/standby duration. :smiley:

Hi @Kieran_Levin - I am running into overcurrent protection regularly at the moment now :-/

I think it is self-inflicted but would like to know if this could be amplified by the BIOS change.

  1. Tried to flash an ESP32
  2. Mixed up PROG and TX lines (oops)
  3. Triggered overcurrent protection (potentially a quick short :-/ )

I might have half-fried a port, but I am unsure given this discussion here, especially a slower debounce sounds risky both for the port safety and for the recovery.

Let me quickly explain what I am seeing now (it only happened yesterday, so all fresh):

  1. I am running into overcurrent protection regularly
  2. Once hit I can not recover except for “Disconnect Battery” in the BIOS (to be verified more, today I had an issue while charging)
  3. Linux (Ubuntu 22.05 / kernel 5.17) reports overcurrent protection triggered, but the reset fails, causing an infinite loop on either _pm or _usb_wq kernel threads making the device run HOT (80°C)

If this continues / gets worse then I’ll probably have to swap the mainboard (haven’t upgraded to 12th gen yet anyway).

My main question is if this stuck on overcurrent condition could be related to this debounce change. I am on BIOS version 3.10.

PS: I love that framework is so transparent in those regards…

Hi @Rene_Treffer that is interesting. the port should recover from OCP.
You can fully power off the system and pd controller by shutting down, unplugging ac and waiting about 1 minute without having to trigger battery disconnect.

Also this specific issue we saw was only reproduced on some ESP32 dev boards. So it could be related more to the device than anything else. If you are using your board with a type-A expansion card, does unplugging your expansion card and plugging it in again fix the issue?