From fa901e2ba4c47e6eefb7f62a8d7da111c82e605f Mon Sep 17 00:00:00 2001 From: Zach Eveland Date: Tue, 6 Sep 2011 20:58:00 -0400 Subject: [PATCH] changed auto-reset trigger condition to fix auto-reset-and-upload for Windows. now reboots when a port, opened at 1200 bps, is closed. --- hardware/arduino/cores/arduino/CDC.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/hardware/arduino/cores/arduino/CDC.cpp b/hardware/arduino/cores/arduino/CDC.cpp index 3ad3e9849..5059ceca5 100644 --- a/hardware/arduino/cores/arduino/CDC.cpp +++ b/hardware/arduino/cores/arduino/CDC.cpp @@ -95,14 +95,13 @@ bool WEAK CDC_Setup(Setup& setup) if (CDC_SET_LINE_CODING == r) { USB_RecvControl((void*)&_usbLineInfo,7); - if (1200 == _usbLineInfo.dwDTERate) // auto-reset is triggered when avrdude opens the port at 1200 bps - Reboot(); - return true; } if (CDC_SET_CONTROL_LINE_STATE == r) { + if (0 != _usbLineInfo.lineState && 1200 == _usbLineInfo.dwDTERate) // auto-reset is triggered when the port, already open at 1200 bps, is closed + Reboot(); _usbLineInfo.lineState = setup.wValueL; return true; }