Before you mark as duplicate I have read everything I can find, and done the following.
1) I have added myself to dialout group, then logged out, then back in, chmod 0666, even 0777 /dev/ttyUSB0.
2) I have done this, as suggested in ESP8266 warning: espcomm_sync failed error: espcomm_open failed UBUNTU 18.04:
~$ esptool.py --port /dev/ttyUSB0 chip_id
esptool.py v2.5.1
Serial port /dev/ttyUSB0
Connecting....
Detecting chip type... ESP8266
Chip is ESP8266EX
Features: WiFi
MAC: 60:01:94:5d:4d:9d
Uploading stub...
Running stub...
Stub running...
Chip ID: 0x005d4d9d
Hard resetting via RTS pin...
Passing grade there!
3) I have tried 7 different boards that were pulled from new packages.
4) I have tried every baud rate in settings.
5) I have tried every possible combination of settings for NodeMCU v1 and v0.9, just in case.
6) Board temps and wiring pass all checks, this is not a duplicate issue because all the steps in your linked issue have been tested, yet the error persists.
I still get the following error every time I try to upload via Arduino 1.8.5
error: cannot access /dev/ttyUSB0
An error occurred while uploading the sketch
error: espcomm_open failed
error: espcomm_upload_mem failed
Why? Is Arduino app 1.8.5 buggy in Ubuntu 18.04?
Frustration level is at smash with hammer. Please tell me there is something I missed.
Oh the kicker, these boards will flash on a Mac Pro perfectly, so I know it's isolated to the Arduino app on Ubuntu only.