I have a MacBook Pro (2015, with OS Sierra). I was not having issues with my ports at all, and then about a week ago every time I unplugged and then plugged in my Uno I would have to specify the port again. Today, I tried plugging in a Mega, and the port is gone entirely.
To fix the problem I've tried:
Unplugging and plugging back in the Arduino
Re-setting the Arduino using the reset button on the board
Restarting the Arduino IDE
Restarting the computer
Using two different Unos and two different Megas
testing both USB ports on my laptop
Looking here (but I didn't see anything that looked like it might help--did I miss it?)
Are they official Arduino boards or cheap knock-offs?
Cheap knock-offs require drivers, which depends on the USB-to-Serial chip they are using.
For official boards, if the OS doesn’t see them, the IDE doesn’t matter.
Open System Information (Apple Menu > About This Mac > System Report, or use Spotlight.) Look at the USB section. If you don’t see Uno, Mega, or ATmega16u2 listed there, the devices aren’t being enumerated.
No enumeration means bad cable (or data only cable) or the firmware on the ATmega16u2 is corrupted and needs to be reloaded.
In the end, I checked with two more cords, more Arduinos, and they still didn't work. I then checked the System Report. It did not show the Arduino devices on the list. Not knowing how to reload the firmware, I realized that I hadn't yet tried to plug in the Arduino I used when everything was working last. Presto! It worked. And then all the others have worked after that. I still have no idea what the problem was, but perhaps it doesn't matter what the issue was if it's now solved.