avrdude-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avrdude-dev] W32 possible improvements


From: Martin Thomas
Subject: [avrdude-dev] W32 possible improvements
Date: Sun, 4 Jul 2004 19:31:09 +0200

Hallo,

Some additional changes for avrdude (based on
a cvs-checkout from Jun, 29 2004)

(1)
The butterfly-programmer did not work reliably in 
the W32-native version. I've changed the code a little
and at least on my W2k-Box it works much better:

--- butterfly_old.c Sun May  2 18:54:22 2004
+++ butterfly.c Sat Jul  3 12:42:56 2004
@@ -213,9 +213,8 @@
 
   no_show_func_info();
 
-  /* send some ESC to activate butterfly bootloader */
-  butterfly_send(pgm, "\033\033\033\033", 4);
-  butterfly_drain(pgm, 0);
+  /* send one ESC to login to butterfly bootloader */
+  butterfly_send(pgm, "\033", 1);
 
   /* Get the programmer identifier. Programmer returns exactly 7 chars
      _without_ the null.*/
@@ -342,7 +341,13 @@
   /*
    * drain any extraneous input
    */
-  butterfly_drain (pgm, 0);
+  /* mthomas 20040703
+     mimic AVRProg - user presses joystick on BF and
+     waits until AVRDude starts target operation.
+  Since the BF continously sends '?' when the
+  joystick is pressed drais intended function will fail
+  TODO(?): extend serial drain-functions by a "ignore char"
+  butterfly_drain (pgm, 0); */
 
   return 0;
 }

Could someone please test if this breaks something on *nix?
I do not understand how the butterfly-programmer-code
could work before - anyway.

(2) 
The timeout value in ser_w32.c/serial_drain might be lower.
Should be a "smoother" startup and should not break
anything.

 /*  serial_w32SetTimeOut(hComPort,250); */
 serial_w32SetTimeOut(hComPort,25);

(3) 
some test-results:
System:
- Window 2000 SP4 on PII/400
- AVRDude "Win32-Native"

ATmega16 - around 15kB firmware
-------------------------------
on  STK500,   16MHz Crystal , only lock/fuse-bits w : OK (*1)
on  STK500,   16MHz Crystal , flash r/w             : OK
on  STK500,   16MHz Crystal , flash/eeprom r/w      : OK
on  STK500,   16MHz Crystal , lock/fuse/flash       : OK
on  STK500,   Int R/C 8MHz  , lock/fuse/flash       : OK
ext STK500,   7,2MHz Crystal, flash r/w             : OK
ext STK500,   7,2MHz Crystal, only lock/fuse-bits w : OK (*1)
ext STK500,   16MHz Crystal , only lock/fuse-bits w : OK (*1)
pony-stk200,  7,2MHz Crystal, flash r/w             : (OK) 

ATmega8535 - around 8kB firmware
--------------------------------
ATmega8535, ext STK500,  3,6MHz Crystal, flash r/w  : OK
ATmega8835, pony-STK200, 3,6MHz Crystal, flash r/w  : OK

AVR Butterfly, ATmega169V, 16 kB fw
-----------------------------------
STK500 ISP,   flash r/w   : OK
Butterfly BL, flash r/w   : OK (*2)


(*1) several times repeated
(*2) with patched butterfly.c 


I have added an "avrdude W32 V0.6" (source/w32-binary) on
www.siwawai.arubi.uni-kl.de/avr_projects for testing.


Martin Thomas






reply via email to

[Prev in Thread] Current Thread [Next in Thread]