An open source program for controlling the MiniPRO TL866xx series of chip programmers
Objective-C C Other
Switch branches/tags
Nothing to show
Clone or download
DavidGriffith Merge pull request #120 from AJPoulter-Soton/master
Add fix to detect TL866II+ and report incompatability
Latest commit 50a70d4 Jun 3, 2018
Permalink
Failed to load latest commit information.
bash_completion.d Remove the shebang from the completion file Sep 30, 2014
debian Renamed Debian udev rules file Mar 15, 2018
man Change return val when listing parts and add help option. Mar 19, 2018
udev Added Centos udev rules and updated installation instructions. Mar 15, 2018
.gitignore Added .gitignore Apr 10, 2015
LICENSE Added a license Mar 1, 2014
Makefile Turn on -Wall for now. May 1, 2018
README.md use standard Makefile on macOS Apr 26, 2018
byte_utils.c Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
byte_utils.h Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
database.c Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
database.h Change size usages of int and such to size_t. Should satisfy #115. May 1, 2018
devices.h Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
easyconfig.c Add fuse support for ATtiny85 Sep 5, 2017
easyconfig.h Add fuse support for ATtiny85 Sep 5, 2017
error.h Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
fuses.c Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
fuses.h Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
main.c Change size usages of int and such to size_t. Should satisfy #115. May 1, 2018
main.h Added/rewrote leading comments about the file, its purpose, and GPL n… Apr 19, 2018
minipro-query-db.c Change size usages of int and such to size_t. Should satisfy #115. May 1, 2018
minipro.c Add fix to detect TL866II+ and report incompatability Jun 3, 2018
minipro.h Change size usages of int and such to size_t. Should satisfy #115. May 1, 2018
minipro.spec add .spec file to create .RPM packages for Fedora and CentOS Apr 4, 2018
miniprohex Avoid mangling quotes around device name. Also fixed typo in usage info. Feb 4, 2018

README.md

minipro

An open source program for controlling the MiniPRO TL866xx series of chip programmers

Features

  • Compatibility with Minipro TL866CS and Minipro TL866A from Autoelectric (http://www.autoelectric.cn/en/tl866_main.html)
  • More than 13000 target devices (including AVRs, PICs, various BIOSes and EEPROMs)
  • ZIF40 socket and ISP support
  • Vendor-specific MCU configuration bits
  • Chip ID verification
  • Overcurrent protection
  • System testing

Synopsis

$ minipro -p ATMEGA48 -w atmega48.bin
$ minipro -p ATMEGA48 -r atmega48.bin

Prerequisites

You'll need some sort of Linux or MacOS machine. Other Unices may work, though that is untested. You will need version 1.0.16 or greater of libusb.

Installation on Linux

Install build dependencies

Debian/Ubuntu

sudo apt-get install build-essential pkg-config git libusb-1.0-0-dev

CentOS 7

sudo yum install gcc make pkgconfig git libusbx-devel

Checkout source code and compile

git clone https://github.com/vdudouyt/minipro.git
cd minipro
make
sudo make install

Udev configuration (recommended)

If you want to access the programmer as a regular user, you'll have to configure udev to recognize the programmer and set appropriate access permissions.

Debian/Ubuntu

sudo cp udev/debian/60-minipro.rules /etc/udev/rules.d/
sudo udevadm trigger

You'll also have to add your regular user to the plugdev system group:

sudo usermod -a -G plugdev YOUR-USER

Note that this change will only become effective after your next login.

CentOS 7

sudo cp udev/centos7/80-minipro.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules

The CentOS rules file currently make the programmer device writable for all users.

Bash completion (optional)

Bash users may want to optionally install the provided completion file:

sudo cp bash_completion.d/minipro /etc/bash_completion.d/

Making a .deb package

Building a Debian package directly from this repository is easy. Make sure you have the build dependencies installed as described above. Be sure it all builds, then do this:

sudo apt-get install fakeroot debhelper dpkg-dev
fakeroot dpkg-buildpackage -b -us -uc

You should then have a .deb package for you to install with dpkg -i. Note that the .deb package will already provide the udev and bash-completion configurations for you.

Making a .rpm package

You can build RPM packages for Fedora and CentOS with the supplied minipro.spec.

First make sure you have a RPM build environment set up. You need to have the rpmdevtools package installed and a rpmbuild directory tree within your homedir. Use the rpmdev-setuptree command to create the rpmbuild directory tree if it does not exist yet.

Since minipro does not yet make official releases with version numbers and tags, you have to choose a specific git commit to build. Open the minipro.spec file and adapt the "commit" and "commitdate" definitions. You can get these either with git log or from the github project page.

Then use these commands to download the source tarballs from github and build the package:

spectool -g -R minipro.spec
rpmbuild -ba minipro.spec

The final RPMs can be found below ~/rpmbuild/RPMS/

Installation on macOS

Install dependencies

Install pkg-config and libusb using brew or MacPorts:

brew install pkg-config
brew install libusb
brew link libusb

or:

port install pkgconfig
port install libusb

Checkout source code and compile

git clone https://github.com/vdudouyt/minipro.git
cd minipro
make
sudo make install