Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
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)

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>

home | help