0

I'm developing on the Arduino platform (ESP8266 with USB -> serial) and sometimes the USB port that is being used stops working and gets frozen. Then I need to plug the device into another USB port. It happens again and once all the USB ports stop working I have to restart the machine, which is really annoying.

As far as I remember there is a command that can restart the USB subsystem individually, but I can't remember. How to restart USBs without restarting the entire system? Thanks.

I'm using Mac OS X Sierra.

3
  • Is that the same problem that was being reported here? Commented Aug 28, 2017 at 10:52
  • I'm using a USB to serial converter, not an Arduino board. Also, the device disappears from /dev/cu.SLAB_USBtoUART and not even a USB drive can be connected from that point on.
    – haxpanel
    Commented Aug 28, 2017 at 11:08
  • I see you asked the question here: apple.stackexchange.com/questions/295993/… and they sent you to Arduino.SE. Did you try the USB Prober.app?
    – VE7JRO
    Commented Aug 29, 2017 at 20:06

2 Answers 2

1

You are using a USB to UART adaptor. The Arduino has no concept of what that is - it just sends and receives UART data. The adaptor is completely separate and the Arduino can do absolutely noting at all with it.

If you are powering the whole circuit through that adaptor it may well be that it only requests 50mA from the computer. If you draw more than that (which you most likely are) the computer is free to shut the port down. It sounds like that may be what is happening.

What can you do? Well, two things:

  1. Use an adaptor that requests enough current for your needs (may be hard to find)
  2. Power your circuit separately using another power source.

Of the two I would suggest external power.

1
  • Thanks, I'll try your suggestion and come back with the result.
    – haxpanel
    Commented Aug 29, 2017 at 13:36
0

You're probably thinking of kext[un]load.

sudo kextunload /Library/Extensions/SiLabsUSBDriver.kext
sudo kextload /Library/Extensions/SiLabsUSBDriver.kext

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.