user43808: Once I plugin an arduino to my linux machine the following response is retrieved (via dmesg):
[ 7250.906241] perf: interrupt took too long (2504 > 2500), lowering kernel.perf_event_max_sample_rate to 79750
[ 9517.599165] usb 1-3: new full-speed USB device number 5 using xhci_hcd
[ 9517.749504] usb 1-3: New USB device found, idVendor=2341, idProduct=0043, bcdDevice= 0.01
[ 9517.749510] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=220
[ 9517.749513] usb 1-3: Manufacturer: Arduino (www.arduino.cc)
[ 9517.749516] usb 1-3: SerialNumber: 7533131313335170A061
[ 9517.780753] cdc_acm 1-3:1.0: ttyACM0: USB ACM device
[ 9517.781046] usbcore: registered new interface driver cdc_acm
[ 9517.781047] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters


The last line from dmesg caught my attention:
[ 9517.781047] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

Also as far as I remember in order to communicate with arduino my user needs to be into dialout group. Does that mean that a modem communication protocol is used in order to communicate from/to arduino in order to communicate via USB?

user55698: The answer to that is one of history.
There was a time when the main purpose of the serial port (RS-232/UART) was to "dial out"; i.e. it had a serial connection to a modem, fax machine or a mainframe attached. Whatever it was, the primary function was to provide a data connection to the outer world, possibly incurring charges on a phone line. So, it is the other way round than you guessed: The computer communicated with the modem using a serial protocol named RS-232 or UART.
Therefore, all serial ports have been secured to not allow access, except for the user group "dialout". This has been retained as default, even for emulated and virtual serial ports -- like, for example, serial port over USB.

43808: <p>Once I plugin an arduino to my linux machine the following response is retrieved (via <code>dmesg</code>):</p>
<pre><code>[ 7250.906241] perf: interrupt took too long (2504 &gt; 2500), lowering kernel.perf_event_max_sample_rate to 79750
[ 9517.599165] usb 1-3: new full-speed USB device number 5 using xhci_hcd
[ 9517.749504] usb 1-3: New USB device found, idVendor=2341, idProduct=0043, bcdDevice= 0.01
[ 9517.749510] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=220
[ 9517.749513] usb 1-3: Manufacturer: Arduino (www.arduino.cc)
[ 9517.749516] usb 1-3: SerialNumber: 7533131313335170A061
[ 9517.780753] cdc_acm 1-3:1.0: ttyACM0: USB ACM device
[ 9517.781046] usbcore: registered new interface driver cdc_acm
[ 9517.781047] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters

</code></pre>
<p>The last line from dmesg caught my attention:</p>
<pre><code>[ 9517.781047] cdc_acm: USB Abstract Control Model driver for USB modems and ISDN adapters
</code></pre>
<p>Also as far as I remember in order to communicate with arduino my user needs to be into <code>dialout</code> group. Does that mean that a modem communication protocol is used in order to communicate from/to arduino in order to communicate via USB?</p>
 55698: <p>The answer to that is one of history.</p>
<p>There was a time when the main purpose of the serial port (RS-232/UART) was to &quot;dial out&quot;; i.e. it had a serial connection to a modem, fax machine or a mainframe attached. Whatever it was, the primary function was to provide a data connection to the outer world, possibly incurring charges on a phone line. So, it is the other way round than you guessed: The computer communicated with the modem using a serial protocol named RS-232 or UART.</p>
<p>Therefore, all serial ports have been secured to not allow access, except for the user group &quot;dialout&quot;. This has been retained as default, even for emulated and virtual serial ports -- like, for example, serial port over USB.</p>
