This problem for people about "Not in sync" error. Any updates?

retrolefty:
Well that is a 'tweaked IDE by a 3rd party, not an official arduino IDE release that one downloads from the Arduino site.

One of the many useful enhancements that Erwin Ried's tweaked version has is a wrapper for avrdude that resets the com port if there is a communication error ("port not found") when called by the IDE, which is probably the the leading cause of the "sync" problem, at least in Window systems.

The "sync" error from avrdude is pretty generic, and really just indicates it failed to get the response back it expected for whatever reason.

Surprisingly perhaps, Java has something of a checkered history, regarding being able to access serial ports reliably in a platform portable way. The saga dates back to the 1990s. Things weren't improved when Oracle decided a few years ago to drop support for the de facto standard method (commapi) that had been used for Java in Windows since then, possibly because the original solution originated from IBM way back when, although I'm not aware there was ever an "official" explanation from Oracle.

It appears the method (rxtxSerial) the "official" IDE uses still isn't particularly robust or reliable on many systems, unfortunately.