dritcey / optiboot

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

Sketch started with inconsistant "side-effects." #37

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
What steps will reproduce the problem?
1. Send serial traffic during or immediately after reset
2.
3.

What is the expected output? What do you see instead?
In most cases (simple timeout, "Go" command), optiboot causes the sketch to 
start by allowing a watchdog timeout to occur, and then immediately running the 
sketch (having noticed that it was a WDT or powerup that reset the chip.)  Thus 
the sketch is started with the AVR in its "reset" configuration of all IO 
registers/etc.  However in the verifySpace() function appstart() is called 
directly, which means that if serial data (that is NOT valid bootloader 
traffic) is received after a reset, the sketch could be started with the timer 
and uart still configured with the bootloader settings.  (other cases where 
this could happen were fixed previously.)

What version of the product are you using? On what operating system?
This is with the latest mercurial source distribution.

Please provide any additional information below.
found by code inspection; I don't know if this has caused visible problems.

Original issue reported on code.google.com by wes...@gmail.com on 21 Apr 2011 at 10:37

GoogleCodeExporter commented 8 years ago
tentative patch.

Original comment by wes...@gmail.com on 21 Apr 2011 at 10:48

Attachments:

GoogleCodeExporter commented 8 years ago

Original comment by wes...@gmail.com on 29 Oct 2011 at 5:27

GoogleCodeExporter commented 8 years ago
Fixed as part of the great optiboot/Arduino sync-up
http://code.google.com/p/optiboot/source/detail?r=8559b64fd093d3976cae58778a1540
256cde5c8e

Original comment by wes...@gmail.com on 30 Oct 2011 at 8:19