I have an Arduino Uno attached over USB, using the
cdc_acm driver. It is available at
The convention for the Arduino's serial interface is for the
DTR signal to be used for a reset signal—when using the integrated serial-to-USB adapter, the DTR/RTS/DSR/CTS signal; or, when using an RS-232 cable, pins 4 or 5 (and possibly 6 or 8) are wired to the
This reset avenue has the important advantage of being, if not truly out-of-band, at least very near-failsafe (due to being implemented via the always-out-of-band serial controller in conjunction with the not-normally-user-controllable watchdog circuit), and while it can be physically disabled (via wiring either a capacitor or a resistor, depending on the model, to the
RESET pin), to do so completely ruins this important killswitch and all associated utility.
Unfortunately, it seems that, currently, Linux absolutely always sends this signal when any program attaches to an ACM device for any reason, and (unlike Windows,) provides no even-vaguely-known-reliable way to prevent this.
-hupcl, "send a hangup signal when the last process closes the tty" and
-clocal, "disable modem control signals" do not prevent this signal from being sent every time the device is opened.)