FreeBSD Manual Pages
MINIPRO(1) General Commands Manual MINIPRO(1) NAME minipro - A free and open TL866XX programmer. DESCRIPTION minipro is an Open Source tool intended to become a complete cross- platform replacement for the proprietary utility from Autoelectric. Currently it supports more than 13000 of target devices - including AVRs, PICs as well as a huge number of other microcontrollers and vari- ous memory chips. GENERAL OPTIONS -l, --list List all supported devices. -L, --search <search> List devices like this. -q, --programmer <version> Force a programmer version when listing devices. Possible values: TL866A TL866II. -Q, --query_supported Query supported programmers. -k, --presence_check Query the programmer version currently connected. -d, --get_info <device> Show device information. -D, --get_id FIXME Just read the chip ID and do nothing else (like reading the whole chip contents). This is for use in scripts where you have for example several similar chips with different IDs and want to check if the currently inserted chip is one in your list of allowed ones. Also useful to detect if a chip is inserted at all when using the -y option. -r, --read <filename> Read from the device and write the contents to this file. -w, --write <filename> Write to the device using this file. -m, --verify <filename> Verify memory in the device against this file. -c, --page <type> Specify memory type (optional). Possible values: code, data, config, user, calibration. The calibration byte(s) are Atmel AVR family specific and are read-only. User memory type is implemented as user row or en- cryption table on some devices like Atmel AT89S8253. Use -c user to read or write this page. -f, --format <format> Specify file format. Possible values: ihex, srec. -b, --blank_check Blank check. Optionally, you can use -c to specify a memory type. -a <type>, --auto_detect Auto-detect SPI 25xx devices. Possible values: 8, 16. -z, --pin_check Check for bad pin contact. -e, --skip_erase Do NOT erase device. -E, --erase Just erase device. -o <option> Specify various options. For multiple options, use -o multiple times. For example: -o vpp=12 -o vcc=5.5 or long options: -vpp=12 --vcc=5.5 Valid options are: -o vpp=<value>, --vpp <value> Set the programming voltage. For TL866A/CS: 10, 12.5, 13.5, 14, 15.5, 16, 17, 18, 21. For TL866II+: 9, 9.5, 10, 11, 11.5, 12, 12.5, 13, 13.5, 14, 14.5, 15.5, 16, 16.5, 17, 19. -o vdd=<value>, --vdd <value> Set the VDD write voltage (3.3, 4, 4.5, 5, 5.5, 6.5). -o vcc=<value>, --vcc <value> For setting the VCC verify voltage (3.3, 4, 4.5, 5, 5.5, 6.5). For setting the VCC logic test voltage (1.8, 2.5, 3.3, 5). -o pulse=<value>, --pulse <value> Programming pulse delay (0-65535 usec). -u, --unprotect Disable protection before programming. -P, --protect Enable protection after programming. -v, --skip_verify Do NOT verify after write. -p, --device Specify device (use quotes). -T, --logic_test Logic IC test. Erroneous states are reported with a "-" (minus) sign next to the expected pin state. -i, --icsp_vcc Use ICSP. Not useful for TL866CS. -I, --icsp_no_vcc Use ICSP (without enabling Vcc). Not useful for TL866CS. -s, --no_size_error Do NOT error on file size mismatch (only a warning). -S, --no_size_warning No warning message for file size mismatch (can't combine with -s). -x, --skip_id Do NOT attempt to read ID (only valid in read mode). -y, --no_id_error Do NOT error on ID mismatch -V, --version Show version information -t, --hardware_check Start hardware check -F, --update <filename> Update firmware. See UPDATING FIRMWARE below. --infoic <filename> Set custom infoic.xml file. --logicic <filename> Set custom logicic.xml file. -h, --help Show brief help and quit. NOTES FOR READING AND WRITING If -c is omitted and -r is specified then the code, data (if applica- ble) and config (if applicable) will be written to filename.$ext, file- name.eeprom.bin and filename.fuses.conf correspondingly. If -c is omit- ted and -w is specified, then -c code is assumed. By default, when in write mode and -c config is specified, no erase is performed to preserve the already programmed data. However, you can force an erase in this case with the -E option. --fuses, --uid, --lock flags will read/write/verify/blank check fuses, user id or lock config section. User ID is Microchip PIC MPU family specific. For example: minipro -p atmega32 -b --fuses will check if fuse bits are in their default state (that is, blank state) Use --pulse, --vpp, --vdd, --vcc or -o <option> to specify various pro- gramming options. These options are available only in write mode ( -w ) and only for some devices like UV erasable EPROMs and GAL/ATF PLDs. Also you can specify --vcc or -o vcc with -T to specify the logic test voltage. Use -d <device> to view if those options are supported. UPDATING FIRMWARE Firmware update files can be obtained from the manufacturer's website: http://www.autoelectric.cn. They can also be downloaded and extracted from the following reposi- tory: https://github.com/Kreeblah/XGecu_Software. For the TL866A/CS, use the "update.dat" file. For the TL866IOI+, use the "updateII.dat" file. ==== EDIT LINE ==== When writing chips, this is not necessary because the file format is automatically detected. There is no need to specify the exact Intex hex format (ihex8, ihex16, or ihex32) as the format is automatically detected. If this option is not used, then the file will be saved as a raw binary file. When reading chips and the ihex format is chosen, if the data size is up to 64Kb the file will be saved in ihex8 format. Just plain hex records are used -- no segment/linear address records are inserted. If the data size exceeds 64Kb then the ihex32 format is used. The ihex16 format is not used when reading chips. The same strategy is used for the Motorola srecord format. -F <filename> Update firmware (should be update.dat). -h Show help and quit. NOTES If -c is omitted and -r is specified then the code, data (if applica- ble) and config (if applicable) will be written to filename.$ext, file- name.eeprom.bin and filename.fuses.conf correspondingly. If -c is omit- ted and -w is specified, then -c code is assumed. PIPES Minipro supports reading and writing to standard input and output. To do this, use a dash (-) as a filename for the -w or -r options. For example: head -c 256k < /dev/urandom | srec_cat - -bin -o - -intel -Ad- dress_Length=4 -obs=16 | minipro -p w49f002u -w- This is how the hex/srec parsers were tested for reading from stdin. 256kb of random binary data is generated then converted from binary to intel hex by the srec_cat utility. Finally the converted data is passed to our minipro which will read this data, convert it to binary by de- coding the intel hex format from stdin and write it to the specified chip. Note the -r- which tells to read from stdin instead from a regu- lar file. This is just a test command to test the ihex/srec parsers. Don't use this in real life (convert from binary to ihex then from ihex to binary). You can also read a chip and write the data to the stdout like this: minipro -p w49f002u -r- -f ihex. You can then pass the output to another command line tool with | for other processing, etc. FUSES Fuses can be read and written with the -c config option. Fuse data is exchanged in a text format. When writing fuses all fuses on your device must be assigned a value. To see what fuses are supported by your de- vice use -r with -c config to get your current fuse values. This also shows you what the text format looks like. EXAMPLES minipro -p 7404 -T Check whether a 74(LS/HC/...)04 hex NOT gate chip. AUTHOR minipro was written by Valentin Dudouyt and is copyright 2014. Many others have contributed code and bug reports. Development is currently coordinated by David Griffith. HARDWARE The Minipro TL866xx series of chip programmers is distributed by Auto- electric. Their website is http://www.autoelectric.cn. DISTRIBUTION The canonical repository for minipro is at Gitlab: https://gitlab.com/DavidGriffith/minipro/ It is distributed under the GNU General Public License version 3 or (at your option) any later version. https://www.gnu.org/licenses/gpl-3.0.en.html This software is offered as-is with no warranty or liability. If you find a bug or would like minipro to do something it doesn't currently do, please visit the above Gitlab website and report your concerns. 17 September 2022 (v0.6) MINIPRO(1)
NAME | DESCRIPTION | GENERAL OPTIONS | NOTES FOR READING AND WRITING | UPDATING FIRMWARE | NOTES | PIPES | FUSES | EXAMPLES | AUTHOR | HARDWARE | DISTRIBUTION
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=minipro&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>
