jung6717 / arduino

Automatically exported from code.google.com/p/arduino
0 stars 0 forks source link

Support shorter bootloader delay #296

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
  The standard multi-second boot delay makes sense for boards that require manual reset. For newer boards configured with auto-reset, this long delay no longer seems like it should be considered mandatory.    

  For many Arduino projects-- particularly field-deployed projects -- it would be very convenient if the bootloader delay were allowed to be much shorter, allowing the Arduino to be instantly (or nearly instantly) responsive once powered on.  

  While it's trivial to change this boot-delay in the bootloader on the AVR, the Arduino IDE has a relatively slow response and is not presently capable of reliably programming boards that have their boot-delay set to (say) 250 ms, or even 1 second. There is no reason that modern PCs could not support a shorter delay here.  If the timing of the programming sequence in the IDE was refined slightly, it would be fairly easy to support short boot-delays on Arduino devices.  

 This change to the IDE would be fully backwards compatible, as it would still support all existing boards with longer bootloader delays.  Future Arduino devices programmed with a shorter boot delay would of course need to indicate that the user should work with the latest-version Arduino IDE.

Original issue reported on code.google.com by windell@oskay.net on 19 Jul 2010 at 8:54

GoogleCodeExporter commented 9 years ago
Occasionally, people still seem to have problems with the auto-reset not 
working, which is why the delay is as long as it is.  (It gives them the 
ability to upload w/ a manual reset, if they time it carefully.)  Also, because 
in some situations the auto-reset currently happens in the IDE, not in avrdude, 
there could be problems if the bootloader timeout was too short (it seems like 
launching an external program from Java can sometimes take a while).  In 
theory, the next version of avrdude should provide reliable auto-reset across 
operating systems and boards, in which case it probably does make sense to 
lower the delay.  

Or did you have another method in mind for better timing of the programming 
sequence?

Also, are there particular situations in which the bootloader delay causes 
problems?  Other ways to address those (e.g. overwrite the bootloader when 
deploying an exhibition)?

Original comment by dmel...@gmail.com on 2 Aug 2010 at 7:33

GoogleCodeExporter commented 9 years ago
optiboot fixes (changes) this, right?

Original comment by wes...@gmail.com on 3 Jan 2011 at 8:18

GoogleCodeExporter commented 9 years ago
I'm going to mark this as fixed, since with the "arduino" programmer type in 
the new avrdude (5.11, I think), the auto-reset using DTR/RTS is done in 
avrdude, and can therefore work with bootloaders with shorter delays.

Original comment by dmel...@gmail.com on 11 Mar 2012 at 5:15