Arduino based general purpose programmer for ISP and UPDI

A friend and I have just completed a personal hardware development project for AVRgpp - a general purpose programmer which, at the moment, supports ISP and UPDI programming along with a USB to serial interface.

Yes, there are ISP programmers out there, and lots of USB to serial interfaces, but we wanted to do our own thing (!) and integrate the lot along with UPDI programming for the latest generation of ATtiny processors supported by megaTinyCore.

AVRgpp options and settings are selected via an OLED and two button interface which, if required, may be used to select 5V or 3.3V power to the target (within USB limits). It is also possible to select a 12V pulse to be sent to the target prior to UPDI programming.

AVRgpp measures 28mm x 60mm, it is based on an ATmega328P, it is totally compatible with the Arduino IDE and it communicates with AVRDUDE for programming. Firmware is based on the ArduinoISP and jtag2updi software.

AVRgpp is open source and full details, along with files available, may be found on the AVRgpp web page:

If there was sufficient demand (say 100 plus units) we would be happy to fix a price and arrange manufacture of bare PCBs, partially built-up PCBs (all the surface mount stuff laid down) or fully populated units - with or without a laser-cut acrylic enclosure!

On the other hand, AVRgpp is open source so someone else may like to have a go at making some money by manufacturing systems for sale.

We welcome comments and suggestions - preferably via the contact email address on the web page.

Fully populated board:

Board in acrylic enclosure:

Programming an ATtiny1614 over UPDI. Lines used: 5V Vcc, Ground and UPDI. The LED indicates that 5V power has been provided.

It looks very nice, and well documented as well. Thanks!