USB Serial Broken by Default?

I'm running Linux, user in dialout group, no issues with permissions at all. Basic sketch with nothing in it.

On first upload attempt it says /dev/ttyACM0 can't be opened. I immediately retry and it works. This pattern repeats consistently, it's annoying but I can live with it.

When running the sketch and opening Serial Monitor I get an error with the URL pointing to the permissions for Linux, but of course it's just uploaded to the same port. This is going to be annoying - without breakpoint/inspection and the serial monitor it's rather restrictive!

Any clues?

Maybe it's modemmanager?

You can remove it:

Or if you really have a need to keep that thing, try to set up udev rules to make it not interfere:

It's not that, tried both.

It seems Arduino IDE or an underlying library is opening the port for transfer and doesn't share it (or something like that) for serial access.

processing.app.SerialException: Error opening serial port '/dev/ttyACM0'. Try consulting the documentation at Arduino Playground - All
at processing.app.Serial.(Serial.java:150)
at processing.app.Serial.(Serial.java:82)
at processing.app.SerialMonitor$2.(SerialMonitor.java:132)
at processing.app.SerialMonitor.open(SerialMonitor.java:132)
at processing.app.AbstractMonitor.resume(AbstractMonitor.java:132)
at processing.app.Editor.resumeOrCloseSerialMonitor(Editor.java:2120)
at processing.app.Editor.access$1300(Editor.java:117)
at processing.app.Editor$UploadHandler.run(Editor.java:2089)
at java.lang.Thread.run(Thread.java:748)
Error opening serial port '/dev/ttyACM0'. Try consulting the documentation at Arduino Playground - All

Got it, it forgets to say modemmanager must be restarted, that did it.

Actually it briefly did it - now it's back to not working. ModemManager is disabled as well.