Not able to upload neopixel code to Arduino Uno or Mega

I have a simple WS2812B (neopixel) string set up, and wrote a code to do some fun patterns. However, when I got upload, I only have some random Bluetooth or other ports, not the one I need appearing. I am on MacOS Mojave on a MacBook pro using arduino 1.8.9. When I upload, I get this message:
^
Sketch uses 5982 bytes (18%) of program storage space. Maximum is 32256 bytes.
Global variables use 373 bytes (18%) of dynamic memory, leaving 1675 bytes for local variables. Maximum is 2048 bytes.
avrdude: ser_open(): can't open device "/dev/cu.usbmodem14101": No such file or directory
Problem uploading to board. See Arduino Help Center for suggestions.

The USBmodem14101 I think is the port I should use, but that port only pops up randomly, no rhyme or reason when it comes available randomly, very rarely. Then when I go to upload when I have selected that port when it comes up, it disappears and the upload fails.

I have two bluetooth options for ports which obviously aren't correct, and one which is iPad_wire, I guess from my iPad, but I get this message when I attempt to use that:

avrdude: ser_open(): can't open device "/dev/cu.SamuelSchmittsiPad-Wire": Resource busy
Problem uploading to board. See Arduino Help Center for suggestions.

I have tried 3 different cables also to see if my cable was bad, all three cant be bad.I also tried a few different drivers suggested from posts here and on GitHub, to no avail. Though I don't know if I uninstalled or installed those new ones correctly.

I hope someone has a good fix. I would prefer not to do console commands and terminal stuff since I am not a huge programmer and uncomfortable messing with the computer's system. thanks for the assistance.

JekyllandHyde:
that port only pops up randomly, no rhyme or reason when it comes available randomly, very rarely.

Does the same problem occur if you have the Uno or Mega connected to your computer with no Neopixels, or any other external circuitry/components/shields attached to the board?

I figured the whole thing out in the stupidest manner. I saw online to try unplugging all wires from the arduino then upload code and replug them back in, and that worked. The magical missing port that I needed appeared immediately when I had all wires disconnected and worked perfectly, Though I had downloaded a few drivers like the 340 one or the FTDI one, maybe that had a part in it, but I dont think so since that was early in my troubleshooting process with no discernible success

@JekyllandHyde, please do not cross-post. Threads merged.

It is not normal behavior for it to be necessary to unplug things from your Arduino board in order for the port to appear. This indicates there is a problem with the circuit attached to your board. Likely that it is drawing too much current from the board.

what is the remedy for drawing too much current? what should I do? Add an additional power supply?

Power the LED strip using a power supply that can provide enough current. At full brightness, the LEDs each draw somewhere around 50-60 mA. That can add up to a lot of current very fast with those LED strips.

I ordered a 5v adapter that can do up to 20A. that should be plenty. by my math I need 18A to power the entire strip full brightness, which I won't need, but I definitely need more than I have

pert:
Power the LED strip using a power supply that can provide enough current. At full brightness, the LEDs each draw somewhere around 50-60 mA. That can add up to a lot of current very fast with those LED strips.

Thanks, I was having the exact same issue with one of my LED strip test. That was driving me crazy. Will try to power the strip separately.