1MINIPRO(1) General Commands Manual MINIPRO(1)
2
3
4
6 minipro - programs various chips using the Minipro TL866XX series of
7 programmers.
8
10 minipro -l | -L search | -d device | -D | [-p device] [-c
11 code|data|config] [-o option ... ] [-r|-w filename]
12 [-e][-u][-P][-i|-I][-v][-s|-S][-x][-y][-V][-t] [-T] [-f ihex|srec] [-F
13 filename] [-h]
14
15
17 minipro is an Open Source tool intended to become a complete cross-
18 platform replacement for the proprietary utility from Autoelectric.
19 Currently it supports more than 13000 of target devices - including
20 AVRs, PICs as well as a huge number of other microcontrollers and vari‐
21 ous memory chips.
22
23
24
26 -l Get a list of supported devices.
27
28
29 -L <search>
30 List devices beginning with this string.
31
32
33 -d <device>
34 Show device information.
35
36
37 -D Just read the chip ID and do nothing else (like reading the
38 whole chip contents). This is for use in scripts where you have
39 for example several similar chips with different IDs and want to
40 check if the currently inserted chip is one in your list of al‐
41 lowed ones. Also useful to detect if a chip is inserted at all
42 when using the -y option.
43
44
45 -p <device>
46 Specify the device name. If the desired device name contains a
47 space, parenthesis, or at sign; the device name MUST be sur‐
48 rounded by quotes.
49
50
51 -c <type>
52 Optionally specify memory type. Possible values include "code",
53 "data", and "config". The "config" memory type is used to access
54 fuses, see FUSES below.
55
56
57 -o <option>
58
59 Specify various programming options. For multiple options use -o
60 multiple times. Valid options are:
61
62
63 • vpp=<value>
64
65 Set the programming voltage (10, 12.5, 13.5, 14, 16, 18,
66 21).
67
68
69 • vdd=<value>
70
71 Set the VDD write voltage (3.3, 4, 4.5, 5, 5.5, 6.25).
72
73
74 • vcc=<value>
75
76 Set the VCC verify voltage (3.3, 4, 4.5, 5, 5.5, 6.25).
77
78
79 • pulse=<value>
80
81 Set the programming pulse delay (0-65535 usec).
82
83
84 -r <filename>
85 Read from the device and write the contents to this file.
86
87
88 -w <filename>
89 Write to the device using this file.
90
91
92 -e Do NOT erase device.
93
94
95 -u Do NOT disable write-protect.
96
97
98 -P Do NOT enable write-protect.
99
100
101 -v Do NOT verify after write.
102
103
104 -i Use ICSP.
105
106
107 -I Use ICSP (without enabling Vcc).
108
109
110 -s Do NOT error on file size mismatch (only a warning).
111
112
113 -S No warning message for file size mismatch (can't combine with
114 -s).
115
116
117 -x Do NOT attempt to read ID (only valid in read mode). Avoids
118 sending high Chip ID read voltages to unknown pins.
119
120
121 -y Do NOT error on ID mismatch.
122
123
124 -T Run a logic IC test.
125
126 Errorneous states are reported with a "-" (minus) sign next to
127 the expected pin state.
128
129
130 -V Show version information.
131
132
133 -t Start hardware check.
134
135
136 -f <ihex | srec>
137 Specify the file format: either Intel ihex or Motorola srecord.
138
139 When writing chips, this is not necessary because the file for‐
140 mat is automatically detected. There is no need to specify the
141 exact Intex hex format (ihex8, ihex16, or ihex32) as the format
142 is automatically detected. If this option is not used, then the
143 file will be saved as a raw binary file.
144
145 When reading chips and the ihex format is chosen, if the data
146 size is up to 64Kb the file will be saved in ihex8 format. Just
147 plain hex records are used -- no segment/linear address records
148 are inserted. If the data size exceeds 64Kb then the ihex32
149 format is used. The ihex16 format is not used when reading
150 chips. The same strategy is used for the Motorola srecord for‐
151 mat.
152
153
154 -F <filename>
155 Update firmware (should be update.dat).
156
157
158 -h Show help and quit.
159
160
162 If -c is omitted and -r is specified then the code, data (if applica‐
163 ble) and config (if applicable) will be written to filename.$ext, file‐
164 name.eeprom.bin and filename.fuses.conf correspondingly. If -c is omit‐
165 ted and -w is specified, then -c code is assumed.
166
167 The -i and -I options enable use of ICSP port for TL866A and TL866II+
168 models. The former enables the voltage supply on the Vcc pin of the
169 ICSP port while the latter leaves it off. These options are of no use
170 for the TL866CS.
171
172 The Minipro TL866xx series of chip programmers is distributed by Auto‐
173 electric. Their website is http://www.autoelectric.cn.
174
175
177 Minipro supports reading and writing to standard input and output. To
178 do this, use a dash (-) as a filename for the -w or -r options.
179
180 For example:
181
182 head -c 256k < /dev/urandom | srec_cat - -bin -o - -intel -Ad‐
183 dress_Length=4 -obs=16 | minipro -p w49f002u -w-
184
185 This is how the hex/srec parsers were tested for reading from stdin.
186 256kb of random binary data is generated then converted from binary to
187 intel hex by the srec_cat utility. Finally the converted data is passed
188 to our minipro which will read this data, convert it to binary by de‐
189 coding the intel hex format from stdin and write it to the specified
190 chip. Note the -r- which tells to read from stdin instead from a regu‐
191 lar file. This is just a test command to test the ihex/srec parsers.
192 Don't use this in real life (convert from binary to ihex then from ihex
193 to binary).
194
195 You can also read a chip and write the data to the stdout like this:
196
197 minipro -p w49f002u -r- -f ihex.
198
199 You can then pass the output to another command line tool with | for
200 other processing, etc.
201
202
204 Fuses can be read and written with the -c config option. Fuse data is
205 exchanged in a text format. When writing fuses all fuses on your device
206 must be assigned a value. To see what fuses are supported by your de‐
207 vice use -r with -c config to get your current fuse values. This also
208 shows you what the text format looks like.
209
210
212 minipro -p 7404 -T
213 Check whether a 74(LS/HC/...)04 hex NOT gate chip.
214
215
217 minipro was written by Valentin Dudouyt and is copyright 2014. Many
218 others have contributed code and bug reports. Development is currently
219 coordinated by David Griffith.
220
221
223 The canonical repository for minipro is at Gitlab:
224 https://gitlab.com/DavidGriffith/minipro/
225 It is distributed under the GNU General Public License version 3 or (at
226 your option) any later version.
227 https://www.gnu.org/licenses/gpl-3.0.en.html
228 This software is offered as-is with no warranty or liability. If you
229 find a bug or would like minipro to do something it doesn't currently
230 do, please visit the above Gitlab website and report your concerns.
231
232
233
234 14 August 2018 (v0.3) MINIPRO(1)