1DFU-PROGRAMMER(1)                                            DFU-PROGRAMMER(1)
2
3
4

NAME

6       dfu-programmer - USB firmware upgrading for Atmel microcontrollers
7

SYNOPSIS

9       dfu-programmer target command [options] [parameters]
10

DESCRIPTION

12       dfu-programmer  is  a  Linux command line Device Firmware Upgrade (DFU)
13       based programmer for the flash memory  on  Atmel  AVR  and  8051  based
14       microcontrollers  which  ship  with  a USB boot loader.  It supports In
15       System Programming (ISP) for developers and potentially product updates
16       in  the field.  Those boot loaders are patterned after the standard USB
17       DFU 1.0 class specification, but depend on extensions defined by  Atmel
18       to the extent that standard DFU drivers will not work.
19
20       To use it, first connect the device to be programmed and ensure that it
21       comes up in DFU mode.  The microcontrollers come up  in  that  mode  as
22       shipped  by  Atmel;  or  they  may  reenter  that  mode after a special
23       hardware reset.  Then invoke this program to  issue  one  or  more  DFU
24       commands.   You  will  normally  need  to  start by issuing the "erase"
25       command; the default security policies prevent extracting firmware,  to
26       prevent reverse engineering of what is usually proprietary code.
27

SUPPORTED MICROCONTROLLERS

29       These chip names are used as the command line "target" parameter.
30
31       8051 based controllers:
32              at89c51snd1c, at89c5130, at89c5131, and at89c5132.
33
34       AVR based controllers:
35              at90usb1287, at90usb1286, at90usb162, at90usb647, at90usb646 and
36              at90usb82.
37

USAGE

39       There are no mechanisms for selecting which  single  device  should  be
40       programmed,  or  to  implement gang programming.  Accordingly, you will
41       usually avoid connecting more than one device of a given family (AVR or
42       8051) at a time.
43
44       All  of  these  commands  support  the  "global  options".   Unless you
45       override it, commands which write to the microcontroller will perform a
46       validation step that rereads the data which was written, compares it to
47       the expected result, and reports any errors.
48
49       configure register [--suppress-validation] data
50              Bootloaders for 8051 based controllers support  writing  certain
51              configuration bytes.
52
53       dump
54              Reads  all  the  available flash memory, and writes it as binary
55              data to stdout.
56
57       erase [--suppress-validation]
58              Erases all the  flash  memory.   This  is  required  before  the
59              bootloader will perform other commands.
60
61       flash [--suppress-validation] file
62              Writes  flash  memory.   The input file must use the "ihex" file
63              format convention for a memory image.
64
65       get register
66              Displays various product identifier bytes.
67
68       reset
69              Resets microcontroller using watchdog timer
70
71       start
72              Starts the application firmware by  having  the  microcontroller
73              jump to address zero.
74
75       version
76              This prints a string identifying the version of this utility.
77
78   Global Options
79       --quiet - minimizes the output
80
81       --debug level - enables verbose output at the specified level
82
83   Configure Registers
84       The  standard  bootloader  for  8051  based chips supports writing data
85       bytes which are not relevant for the AVR based chips.
86
87       BSB - boot status byte
88       SBV - software boot vector
89       SSB - software security byte
90       EB  - extra byte
91       HSB - hardware security byte
92
93   Get Register
94       bootloader-version - currently flashed bootloader version
95       ID1 - device boot identification 1
96       ID2 - device boot identification 2
97       manufacturer - the hardware manufacturer code
98       family - the product family code
99       product-name - the product name
100       product-revision - the product revision
101       HSB - same as the configure_register version
102       BSB - same as the configure_register version
103       SBV - same as the configure_register version
104       SSB - same as the configure_register version
105       EB  - same as the configure_register version
106

BUGS

108       None known.
109

KNOWN ISSUES

111       The at90usb series chips do not make available any  read/write  protect
112       flags  so  the  dump or flash command may fail with a less than helpful
113       error message.
114
115       To remove any write or read protection from  any  chips,  a  full  chip
116       erasure is required.
117

AUTHOR

119       Weston Schmidt <weston_schmidt@alumni.purdue.edu>
120

SEE ALSO

122       http://dfu-programmer.sourceforge.net
123
125       Copyright (C) 2005, 2006 Weston Schmidt
126
127       This program is free software; you can redistribute it and/or modify it
128       under the terms of the GNU General Public License as published  by  the
129       Free  Software Foundation; either version 2 of the License, or (at your
130       option) any later version.
131
132       This program is distributed in the hope that it  will  be  useful,  but
133       WITHOUT   ANY   WARRANTY;   without   even   the  implied  warranty  of
134       MERCHANTABILITY or FITNESS FOR  A  PARTICULAR  PURPOSE.   See  the  GNU
135       General Public License for more details.
136
137       You should have received a copy of the GNU General Public License along
138       with this program; if not, write to the Free Software Foundation, Inc.,
139       51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
140
141
142
143DFU-PROGRAMMER                  April 25, 2007               DFU-PROGRAMMER(1)
Impressum