QuoteI thought the arduino IDE (or is it AVRDUDE?) AVRDUDE is the culprit.Quotedid perform an explicit DTR pulse The Windows version pulses DTR and CTS for the "arduino" programmer type; the type used by Arduino 0022. I'll investigate the *nix version tonight.
I thought the arduino IDE (or is it AVRDUDE?)
did perform an explicit DTR pulse
bool CurrentDTRState = (CDCInterfaceInfo->State.ControlLineStates.HostToDevice & CDC_CONTROL_LINE_OUT_DTR);
the biggest problem is backwards compatibility - the IDE still needs to be able to communicate with EVERY existing arduino board out there, containing various bootloaders, firmware, and hardware configurations.
the whole auto-reset is an admirable intention that has, over time, and with various 'tweaks' become an absolute nightmare. the problem has been compounded by attempts to stick to a single codebase across several OS platforms, each OS with it's own level of access to and support for the usb and/or serial hardware.personally, i'd do away with the auto-reset completely. instead i'd use a far more robust manual reset system:1. IDE pops up a window saying "PRESS and HOLD reset button..." with a counter going from 5 seconds down to 02. IDE then closes that window and pops up another window saying "RELEASE reset button NOW".during the above two steps the IDE would send repeatedly a query command to the bootloader, monitoring for a bootloader response. when the correct response came back the IDE would know that a communications channel with the bootloader had been established. if no response is seen within 5 seconds of the second window being popped up, a 3rd window could be popped up saying "Unable to Communicate". all very simple.if someone is bright enough to program an arduino, they should be bright enough to press and release a single button as instructed!
For a board like an official Arduino board like an UNO, if it were up to me, I'd puta set of holes for a 2 pin header that has a trace between them. That way if a personreally wants to disable auto-reset for good, they can cut the trace.If they want to use a jumper, they cut the trace and solder in a 2 pin header.
There will be a post on the blog on friday about this
i have some people who need more direct and non-technical info than this thread.
swapping the resistor with diode is a better fix anyway.
Isn't the 10k resistor part of a resistor network on Uno boards? That makes "simply replacing it with a diode" a bit problematic.I diode from reset to +5V can easily be inserted in the "power" connector; no soldering required.
Please enter a valid email to subscribe
We need to confirm your email address.
To complete the subscription, please click the link in the
email we just sent you.
Thank you for subscribing!
via Egeo 16