Turning an Arduino of virtually any sort into a simple AVR 6-pin ISP programmer is old hat. But when Atmel came out with a series of really tiny AVR chips, the ATtiny10 and friends with only six pins total, they needed a new programming standard. Enter TPI (tiny programming interface), and exit all of your previously useful DIY AVR programmers.
[Kimio Kosaka] wrote a dual-purpose TPI and ISP firmware for the ATmegaxxUn chips that are used as a USB-serial bridge on the Unos, and constitute the only chip on board a Leonardo or Micro. The catch? You’re going to have to do a little bit of fine-pitch soldering. Specifically, [Kosaka-san] wants you to get access to an otherwise obscured signal by drilling out a via. We’d do it just for that alone.
The rest of the procedure is to flash a DFU USB bootloader into the Arduino, then load up the flash-programmer code. Your former Arduino is now capable of flashing both old-school ISP AVR chips, as well as the tiny little ones that require TPI.
If you’re having deja vu, yes we have covered a DIY TPI programmer before, but it required a bespoke uploader software on your host computer. [Kosaka]’s version appears to the host as an Atmel programmer, and you can use any of the standard tools. And you get to try your hand at some fun fine-pitch solder work. That’s win-win!