Welcome to MattairTech!

Your Shopping cart is empty.

Skip to Main Content »

ZeptoProg II USB AVRISP mkII compatible Programmer and Multitool ( AVR ISP / XMEGA PDI / TPI )

Availability: In stock

Accepting MC, VISA, AMEX, Discover, PayPal

Quick Overview

Updated July 17, 2017: New firmware update fixes "Failed to enter programming mode" error during some PDI programming attempts.

ZeptoProg II Manual

Optional 30cm (~1ft) 6-pin programming cable and four 30cm single pin cables

   This item ships VAT free to most EU countries   
   if total is less than about $24.00 (€22.00).   

ZeptoProg II USB AVRISP mkII compatible Programmer and Multitool ( AVR ISP / XMEGA PDI / TPI )

Double click on above image to view full picture

Zoom Out
Zoom In

More Views

* Required Fields




The ZeptoProg II™ is an AVRISP mkII compatible USB AVR programmer that supports chips with the ISP, PDI, or TPI programming interfaces, which includes most megaAVR®, tinyAVR®, and XMEGA™ series devices. It supports high-speed in-system programming of the AVR flash, EEPROM, fuses, lock bits, and more using AVR Studio 4 and 5, Atmel Studio 6 and 7, or AVRDUDE. Target boards operating at 2V to 5.5V are supported. A jumper can be installed to provide 5V through a polyfuse to the target board. Additionally, a mutitool mode implements a simple 4-channel logic analyzer, GPIO, PWM, frequency output, frequency measurement, a SPI interface, and configuration, all accessible using the ZeptoProg II Java application or the command line using a terminal emulator. Finally, the USB to serial bridge can be used to connect the target to a computer over USB (virtual COM port) at up to 2Mbps*.

* Not recommended for 115.2Kbps or 230.4Kbps. At these speeds and higher, choose a baud rate that the 8MHz cpu clock can be divided down to (ie: 125Kbps).


AVRISPmkII compatible AVR Programmer
■ Supports all AVRs with ISP, PDI, or TPI programming interface using standard pinouts
○ Includes megaAVR, tinyAVR, XMEGA, and USB, PWM, and CAN AVRs
Optional 5V output via headers to target board, with standard jumper and polyfuse
■ Up to 8MHz programming speed with optional recovery clock
■ Program flash, EEPROM, fuses, lock bits, and more
Works with AVR Studio 4 and 5, Atmel Studio 6 and 7, AVRDUDE, Codevision, and BASCOM
● Multitool
Interface using Java GUI application or command line (via terminal emulator)
Logic Analyzer (GUI only)
○ 4 channels, trigger on any combination of pins (or immediately)
○ Fast mode: 1024 samples at 2Msps
○ Auto mode: samples on external clock, up to 60Ksps, up to 10K samples
○ Manual mode: configurable sample rate up to 100Ksps, up to 10K samples
○ Pre-trigger buffer (up to 10K samples) and post-trigger delay (up to 50K samples)
GPIO / PWM / frequency input & output
○ 7 TTL inputs, 9 outputs (5 level shifted)
○ 2 PWM outputs with separate duty cycles
○ 1 frequency output
○ 1 frequency measurement input
○ 4 pattern generator outputs *
SPI Interface
○ Up to 8MHz clock, ZeptoProg II is master, Modes 03, MSB or LSB
○ 4 chip select outputs (pushpull or opendrain w/ optional pullup)
Serial Bridge
■ Separate serial pins (simultaneous connection of programming cable and serial RX/TX)
■ Up to 2MHz baud rate, synchronous or asynchronous operation (not recommended for 115200 or 230400 baud)
■ Optional flow control via _CTS_ and _RTS_ pins, 9bit support
● Upgradeable firmware / USB bus powered
● 2 buttons for control / 2 LEDs for status indication
Target board voltage support of 2V to 5.5V via levelshifted pins on two main headers
Reverse polarity protection on Vtgt and GND pins
Overcurrent protection on all output pins via series resistors (signal) and polyfuse (power)
● Measures 5.9cm x 1.8cm x 1.2cm, 1.57mm (0.063”) PCB thickness
● Compatible with Windows XP/Vista/7/8/10 (32 and 64) and Linux, with Mac support in progress.

● Uses the AVRISP mkII clone and LUFA library by Dean Camera (http://www.lufa-lib.org).

Troubleshooting / FAQ

● If Atmel Studio wants you to upgrade the firmware, first check that you are not in AVRDUDE programming mode, which can trigger this warning. If you are in AVR/Atmel Studio mode and still get the message, please check the website for firmware updates or email support if you are already using the latest version.

● If you cannot run the java application, be sure to install the 32-bit version of Java, which can co-exist with the 64-bit version. A beta 64-bit version is available at https://www.mattairtech.com/software/ZeptoProg_II/ZeptoProg_II_64.jar. (Updated 140302)

● Updating the firmware with recent versions of FLIP (ie: 3.4.7) may fail. If so, try using the batchisp command line tool included with FLIP: C:\Program Files\Atmel\Flip 3.4.7\bin>batchisp -device ATMEGA32U2 -hardware USB -operation erase F loadbuffer "C:\ZeptoProg_II.hex" program start reset 0

● If BASCOM or AVRDUDE does not work, be sure to put the programmer into AVRDUDE mode.

● Prior to releasing the signed driver on January 28, 2015, Windows 8 users needed to disable driver signing to use Tool mode (terminal emulator or Java app.).

● AVRDUDE 6.x does not yet support the ZeptoProg II. A working patched version can be found at https://www.mattairtech.com/software/avrdude_6.0.1_patched_windows.zip. Thanks to Larry Viesse. For support on Linux 64-bit, download https://www.mattairtech.com/software/avrdude_6.0.1_patched_Linux_64.zip. For support on other Linux (especially with xhci (USB 3.0)), replace the usb_libusb.c file from 6.0.1 with https://www.mattairtech.com/software/usb_libusb.c.

● If you are having problems communicating with the programmer using Atmel Studio 6.x, download the Zadig USB driver manager at http://zadig.akeo.ie/. Under options, List All Devices. The AVRISP mkII should show up in the list. Replace the current driver with libusb-win32 (v1.2.6.0), which comes embedded with Zadig. Alternatively, please use the procedure at https://www.olimex.com/forum/index.php?topic=4188.0

● Prior to firmware version 150815, if the PDI/TPI connection to the target board was bad, then Atmel Studio would experience connection issues to the programmer itself for some time after the initial failure. Restarting AS would not immediately restore communications (however, after several attempts / time waited, it will come back). Firmware 150815 solves this by lowering the programmer<->target timeout (AS ignored the timeout response after a certain period of time).

● If you are having problems communicating with the programmer using Atmel Studio 7.x, please ensure that you are using the new AVRISPmkII driver, which now must be downloaded separately below. Prior versions of Atmel Studio included this driver.

● If you are having problems writing the FLASH of the Tiny4/5/9/10 (timeout using Atmel Studio), please update the firmware to at least 160808.

● Updated July 17, 2017: New firmware update fixes "Failed to enter programming mode" error during some PDI programming attempts.



        Before using the ZeptoProg II, you must install at least the AVRISP mkII driver and the MattairTech CDC (virtual COM port) driver. A third DFU driver is available for firmware updates (see Firmware Updates section). If using Atmel Studio 7, the AVRISPmkII driver must now be downloaded separately (see below). Extract the archive to any directory, then plug in the ZeptoProg II. Windows will prompt for drivers, so direct the installer to the new directory. Prior versions of Atmel Studio bundled the AVRISP mkII driver. In these cases, point the installer to "Program Files/Atmel/AVR Jungo USB" and choose the 32 or 64 bit directory. Once the AVRISPmkII driver is installed, press the TOOL button. Point the installer to the directory where you extracted the CDC driver. Remember to rename the file from .txt to .inf if the installer does not see it.





ZeptoProg II AVRISPmkII Driver


AVRISPmkII driver


ZeptoProg II Tool mode CDC Driver


CDC driver


ZeptoProg II Application



https://www.mattairtech.com/software/ZeptoProg_II/ZeptoProg_II.jar  for 32-bit JRE (version 120308) RECOMMENDED

https://www.mattairtech.com/software/ZeptoProg_II/ZeptoProg_II_64.jar  for 64-bit JRE (Updated 140302) BETA

ZeptoProg II Firmware



https://www.mattairtech.com/software/ZeptoProg_II/ZeptoProg_II.hex  (version 170711) * OR
https://www.mattairtech.com/software/ZeptoProg_II/ZeptoProg_II_PG.hex  (version 170711) *

AVR Studio /
Atmel Studio

4.19, 5.x, 6.x, 7.x


http://www.atmel.com/tools/atmelstudio.aspx OR http://www.atmel.com/tools/studioarchive.aspx (for AVR Studio)

* Firmware update 120812 fixes bug related to multitool timer prescaler
* Firmware update 121015 fixes SPI bugs
* Firmware update 130303 adds Atmel Studio 6.1 support
* Firmware update 130501 Atmel Studio 6.1 updates
* Firmware update 140126 adds ability to change PDI/TPI programming speed
* Firmware update 150815 reduces timeout so that Atmel Studio works better when PDI/TPI connection is bad
* Firmware update 160808 increases timeout to fix Tiny4/5/9/10, PDI XMEGANVM_ReadMemory() improvement.
* Firmware update 170711 fixes "Failed to enter programming mode" error during some PDI programming attempts.
* The ZeptoProg_II_PG.hex firmware contains the pattern generator but lacks the SPI commands (see docs).


        The Multitool currently includes a simple logic analyzer, GPIO, PWM, frequency generation, frequency measurement, a SPI interface, and configuration. The ZeptoProg II Java application or the command line (via terminal emulator) can be used to interface with the multitool. The Java application runs under Windows and Linux (Mac support included but untested) and should be intuitive enough to learn without much documentation. Features include auto-calculation of the prescaler, top value, PWM resolution, and the actual frequency (due to quantization error). The frequency measurement displays quantization error as well. The inputs and frequency measurement can be automatically polled.

AVRISP mkII Compatible Programmer

        The AVRISP mkII compatible programmer is compatible with AVR Studio 4.19, 5.x, and Atmel Studio 6.x. AVR Studio 4.19 can be used with older hardware. All versions can be installed simultaneously. AVRDUDE is also supported. To use AVRDUDE, you may need to install an update to libusb-win32 available at http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/. Choose the libusb-win32-devel-filter-x.x.x.x.exe file. Do this only after installing AVR Studio. Then, you must switch the programmer to AVRDUDE mode in the configuration tab of the ZeptoProg II application.

        While in programmer mode, LED B will pulse slowly. Connecting a powered target board to either programming header will cause the LED to pulse quickly. Use this to verify that the target board is powered. A jumper can be placed across the 5V and Vtgt pins to output USB 5V to the target board. This line has a polyfuse (500mA trip, 200mA hold). Use caution when setting this jumper. DO NOT install the jumper when connecting to an XMEGA or any board that cannot withstand 5V. Also be sure that the target board can be powered in this way (ie: if there is a power supply on the target, can it be powered on the output side?). It is easy to forget that the jumper is installed. If the jumper is installed, the LED will pulse quickly regardless of whether a target board is connected. Always check the state of this LED before connecting a board.

Simple Logic Analyzer

        The 4-channel Logic Analyzer has 3 modes. In fast mode, 1024 samples are taken at 2Msps. Manual mode allows user selection of the sampling rate up to 100Ksps, with up to 10K samples. Auto mode makes use of one of the four pins as a sampling clock, either rising or falling edge, at up to 60Ksps and with up to 10K samples. In all modes, any combination of pins can be used as triggers to start the capture. If no triggers are selected, the capture starts immediately. In all modes, a post-trigger delay of up to 50K samples can be enabled. A pre-trigger buffer of up to 10K samples is available in manual and auto modes.

Serial Bridge

        The serial bridge is a USB to TTL serial converter that can be used to connect the target board serial pins to a computer over USB, where it will show up as a virtual COM port. The serial bridge is configured in the configuration tab of the application. The bridge can run at up to 2Mbps, and supports asynchronous and synchronous modes, optional flow control via _RTS_ and_CTS_ pins, and support for 5-9 data bits. All pins are level-shifted to the Vtgt voltage. While the RX and TX lines are dedicated, the optional clock and flow control lines are shared on the PDI header. Additionally, a ground connection must be made. The ISP cable can provide this ground, or a single jumper wire can be connected to the ground pin on the PDI header (closest pin to TX). Because the outputs are level-shifted, Vtgt must also be provided , which can also be supplied via the programming cable or a single jumper wire.

Optional 30cm (~1ft) programming cable and 4 individual jumper wires



Added April 29, 2016: Atmel Studio 7.x now requires a separate driver for third-party AVRISPmkII compatible programmers. Atmel still uses the AVRISPmkII driver bundled with Atmel Studio for their own programmers. With prior versions of Atmel Studio, the bundled driver worked with both the Atmel AVRISPmkII, as well as third-party programmers. Linux does not require a download.


Updated January 28, 2015: Drivers are now signed!
The MattairTech_CDC_Driver_Signed.zip file is required for the multitool and serial bridge modes if running Windows, when it will operate as a CDC-ACM device (virtual COM port). This driver supports XP (SP3), Vista (32 and 64 bit), Windows 7 (32 and 64 bit), and Windows 8. The old unsigned driver is available at https://www.mattairtech.com/software/MattairTech_CDC.inf. Linux does not require a download (drivers should already be installed).

The DFU Bootloader, used for firmware updates, also requires a driver. This driver is included with FLIP (inside the USB folder of FLIP's directory).
If using Windows Vista 64-bit or Windows 7 64-bit, you may need to download signed drivers from http://www.avrfreaks.net/index.php?module=Freaks%20Academy&func=viewItem&item_type=project&item_id=2196. The latest version of FLIP should not require this.


This development tool is intended for use for FURTHER ENGINEERING OR DEVELOPMENT PURPOSES ONLY. It does not comply with some or any technical or legal requirements that are applicable to finished products, including, without limitation, directives regarding electromagnetic compatibility, recycling (WEEE), FCC, CE, or UL (except as may be otherwise noted). MattairTech LLC supplied this development product AS IS, without any warranties, with all faults, at the buyer's and further users' sole risk. The user assumes all responsibility and liability for proper and safe handling of the goods. Further, the user indemnifies MattairTech LLC from all claims arising from the handling or use of the goods. Due to the open construction of the product, it is the user's responsibility to take any and all appropriate precautions with regard to electrostatic discharge and any other technical or legal concerns.

The product described in this document is subject to continuous development and improvements. All particulars of the product and its use contained in this document are given by MattairTech LLC in good faith. However all warranties implied or expressed including but not limited to implied warranties of merchantability or fitness for particular purpose are excluded.

The author(s) disclaim all warranties with regard to this software, including all implied warranties of merchantability and fitness. In no event shall the author(s) be liable for any special, indirect or consequential damages or any damages whatsoever resulting from loss of use, data or profits, whether in an action of contract, negligence or other tortious action, arising out of or in connection with the use or performance of this software.


Copyright © 2009-2017, Justin Mattair (https://www.mattairtech.com/)
LUFA library, AVRISP mkII clone, and DFU programmer Copyright © 2009-2012, Dean Camera (http://www.lufa-lib.org)
Copyright © 2010, ChaN (http://elm-chan.org/)
Copyright © 2003-2011, Atmel Corporation (http://www.atmel.com/)
QN Plot Copyright © 2005 Pascal S. de Kloe (http://quies.net/java/math/plot/)
RXTX library Copyright © 1997-2007 Trent Jarvi and others (http://rxtx.qbang.org/)

64-bit RXTX binary builds provided as a courtesy of Mfizz Inc. (http://mfizz.com/).
Please see http://mfizz.com/oss/rxtx-for-java for more information.

See documentation for more information including licenses.

Accepting MC, VISA, AMEX, Discover, PayPal