Adafruit's UPDI Friend Is a Smaller Programmer for the Large World of tinyAVR Designs

Quickly program 3V or 5V tinyAVR, megaAVR, and AVR Dx microcontrollers with this tool.

baldengineer
8 months ago

Adafruit announced a new programming tool that targets newer Microchip eight-bit microcontrollers: the UPDI Friend, a USB-based UPDI programmer.

"UPDI stands for Unified Program and Debug Interface, but this board is so smol and cute that we will call it the Unusually Playful Device Interfacer and pat its head when it does a good job." — Adafruit

Microchip's Unified Program and Debug Interface (UPDI) is a one-wire solution to program and debug newer tinyAVR and megaAVR microcontrollers. For example, Adafruit says they use it with the ATtiny816, 817, and 1616 chips.

You can also find the UPDI interface on chips like the AVR Dx Series and the ATmega4809. The 4809 microcontroller is the processor on the Arduino Nano Every board. (The Nano Every's design does not break out the UPDI pin, but it does use it for programming over serial.)

UPDI has quickly become the alternative low-pin count programming interface for Microchip's AVR microcontrollers. It is a direct replacement for the XMEGA's PDI interface and a functional replacement for debugWIRE.

SerialUPDI from Stefan Wagner (📷: wagiminator, github.com)

An open-source project from Stefan Wagner provided Adafruit the inspiration. Wagner's SerialUPDI is a larger design with a USB-A connector and only 2.54 mm headers.

Adafruit's UPDI Friend measures a teeny 26.4 x 17.8 millimeters. A USB-C connector for data and power is on one side, while the other has two ports. You can connect to a microcontroller using 2.54 millimeter headers or a cable connected to a JST SH socket. A CH340E USB Serial converter provides the interface to a PC.

An onboard switch allows you to select between 3V and 5V targets. The 5V rail comes from the USB-C connection and a regulator provides the 3V rail. It can source up to 500 milliamps of current.

One important limitation is that UPDI Friend does not provide a 12 volt pulse. This pulse is needed in applications that are using the UPDI pin as another function in the design. This is not a significant limitation, but it is important to know if you are implementing a custom design with a tinyAVR chip.

Adafruit UPDI Friend (📷: Adafruit)

Adafruit sells the UPDI Friend for $6.95 before shipping. You can also purchase a JST SH to 2.54 mm compatible header for $1.50.

baldengineer

Electronics enthusiast, Bald Engineer, and freelance content creator. AddOhms on YouTube. KN6FGY.

Latest Articles