Restart USB hubs without restarting the whole computer

bootusb

I am running MacBook pro OS Catalina 10.15.7. When I unplug my USB-C modem, sometimes it will no longer work again when plugged in, even after having the computer sleep. The only solution I have found that works is to restart my computer.

The following question is very similar. In my case, the USB works the first time it is plugged in, but may or may not work if unplugged and replugged in. If the following questions was answered, this one would probably be answered too, but there is no answer to this question yet:
Refresh USB port / restart usb service

Both ports have the same behavior, and even when the hub stops working it still passes power to the computer (can charge through the hub). So my issue is different from this one:
Macbook Pro: One USB-C port only works for charging devices

It seems this may relate to the SMC, but I don't know why, just that others seem to think that one cannot reset the SMC without rebooting.
https://www.imore.com/how-troubleshoot-dead-usb-c-ports-your-macbook
Reset SMC without power button

Is there any way to reset the USB ports without rebooting my computer. (Or is it possible to demonstrate that the problem is linked to the SMC?)

The only way I have found to prevent the problem is to not run my power through the USB-C hub (note that an answer to this question suggests this should be acceptable practice: USB C HUB delivery safe?), but rather to plug them separately into the two USB-C ports. But this is prevention, not the "cure" I am looking for.

Best Answer

Try this (you may need to disable SIP first):

sudo nvram boot-args="usb=0x20"

This will prevent your USB hubs from entering low power mode, which is one possible cause of unreliable reenumeration for noncompliant devices. It’s just a hunch since we haven’t done a deep dive but it’s a good quick first pass. If that doesn’t help, we can also try disabling deep idle:

sudo nvram boot-args="usb=0x60"

Make sure you reboot after running either one.