diff --git a/libraries/AP_HAL_PX4/UARTDriver.cpp b/libraries/AP_HAL_PX4/UARTDriver.cpp index 9f1313828c..516016c0c8 100644 --- a/libraries/AP_HAL_PX4/UARTDriver.cpp +++ b/libraries/AP_HAL_PX4/UARTDriver.cpp @@ -418,6 +418,11 @@ void PX4UARTDriver::_timer_tick(void) if (!_initialised) return; + // don't try IO on a disconnected USB port + if (strcmp(_devpath, "/dev/ttyACM0") == 0 && !hal.gpio->usb_connected()) { + return; + } + _in_timer = true; // write any pending bytes