updi-key

Public

dlloydev/updi-key

Loading…

Description

Imported from GitHub: Dlloydev/Updi-Key · commit db59d66 · license MIT

Description

This DIY open source hardware connects inline with any UPDI programmer to provide a HV UPDI programming solution for tinyAVR® 0/1/2 series MCUs. Compatible with UPDI programmers that operate with jtag2updi, avrdude, pyupdi, MPLAB X IDE, MPLAB X IPE, PlatformIO and Arduino IDE using any target voltage from 3 to 5V.

README

Updi-Key

UpdiKeyTop

What is it?

Updi-Key is an inline adapter that transforms your favorite UPDI programmer into a HV UPDI programmer. Now you can easily enable UPDI mode, program and power-cycle your target MCU to explore additional features like using the UPDI pin for LUT0, AIN0, GPIO or Reset.

Why did you make it?

To provide a tool that allows easy access to the additional functions of the programming pin, which becomes more important in low pin count applications. To enhance your existing programming solution with a convenient low cost adapter.

What makes it special?

Unique, versatile, easy to use with the existing programming environment you're already familiar with.

  • Converts any UPDI programmer to HV-UPDI
  • Connects directly in-line with the MPLAB Snap In-Circuit Debugger (pins 2, 3, 4)
  • Connects directly in-line with many ATtiny 0/1/2 development and breakout boards
  • Provides standard 6-pin UPDI headers with pin 3 used for additional functions
  • The 3-pin UPDI headers can be any combination of male/female or vertical/horizontal at each end
  • Automatically provides target power-cycle with current limiting protection
  • Directly compatible with any target voltage from 3V to 5V without reprogramming the device
  • Host UPDI is inherently protected by using "break-before-make" signal transfer
  • No power hungry resistor-diode host UPDI protection circuit required
  • Built-in low noise, low EMI, low power 3-5VDC to 12VDC converter (25mA)
  • Fast HV pulse timing similar to the Atmel Power Debugger
  • Continuously monitors host UPDI signal and Re-Updify button on one pin for detecting stable or busy status of the UPDI signal and pushbutton status
  • Green VTG-PC status LED and Orange HV pulse LED
  • It seems fitting that the smallest MCU in the family (ATtiny202) operates the key

Updi-Key Digi-Key BOM

ItemQtyReferenceManufacturer NumberDigi-Key Part NumberDescription
13C1, C7, C8CL10B104KB8NNNC1276-1000-1-NDCAP CER 0.1UF 50V X7R 0603
21C6CL10A475KO8NNNC1276-1784-1-NDCAP CER 4.7UF 16V X5R 0603
31D2PMEG4005CEJX1727-8169-1-NDDIODE SCHOTTKY 40V 500MA SC90
42R8, R9RK73B1JTTD102J2019-K73B1JTTD102JCT-NDRES 1K OHM 5% 1/8W 0603
53R3, R4, R10RK73B1JTTD103J2019-RK73B1JTTD103JCT-NDRES 10K OHM 5% 1/10W 0603
62R11, R12RK73B1JTTD181J2019-RK73B1JTTD181JCT-NDRES 180 OHM 5% 1/8W 0603
71SW1SN74LVC1G3157DBVR296-14908-1-NDIC SWITCH SPDT SOT23-6
81R6RC0603FR-0711KL311-11.0KHRCT-NDRES SMD 11K OHM 1% 1/10W 0603
91R5RC0603FR-07102KL311-102KHRCT-NDRES SMD 102K OHM 1% 1/10W 0603
101C4CC0603BRNPO9BNR68311-3842-1-NDCAP CER 0.68PF 50V NPO 0603
111VTG1LG Q396-PS-35475-3754-1-NDLED GREEN DIFFUSED 0603 SMD
121F10ZCM0005FF2G507-1816-1-NDPTC RESET FUSE 15V 50MA 0603
131U3MIC2091-1YM5-TR576-3891-1-NDMICROCHIP - MIC2091-1YM5-TR - POWER SWITCH, 100MA, SOT23-5
141L1CBC2518T470K587-3060-1-NDFIXED IND 47UH 290MA 2.47 OHM
153C2, C3, C5LMK107BBJ106MALT587-3258-1-NDCAP CER 10UF 10V X5R 0603
161HV1APTD1608SECK/J4-PF754-1802-1-NDLED ORANGE CLEAR 0603 (1608 Metric)
171U1ATTINY202-SSNRATTINY202-SSNRCT-NDIC MCU 8BIT 2KB FLASH 8SOIC
181SW3PTS810SJG250SMTRLFSCKN10504CT-NDSWITCH TACTILE SPST-NO 0.05A 16V
191SW2ISL43210IHZ-TISL43210IHZCT-NDIC SWITCH SPDT SOT23-6, Marking GJQG
201U2NCP1406SNT1GNCP1406SNT1GOSCT-NDIC REG BUCK BST ADJ 25MA 5TSOP

Schematic

Firmware Installation

  1. Connect a UPDI programmer to J3 (Pin2 VTG to VCC, Pin3 PROG to UPDI, Pin6 to GND)

  2. Install the latest version of megaTinyCore

  3. Install the Updi-Key Firmware

    ● Click on the green "Clone or download" button, then select "Download ZIP".

    ● Unzip this file in a folder on your PC.

    ● In the Arduino IDE, open the sketch "UpdiKey.ino" in the "source\updikey" folder

    ● Use these board settings:

    megaTinyCoreSettings

    ● Select "Burn Bootloader" then "Upload Using Programmer" from the Arduino IDE. Updi-Key is now ready to use.

Functional Description

High Voltage Programming Options

ModeDescription
Simple High Voltage PulseOn power-up, Updi-Key safely transfers onto the UPDI signal and applies the 12V pulse, triggers low to initiate the enable sequence then sends the SYNC character and the NVMPROG key, then switches the signal back to the host programmer. The target's PA0 pin remains in UPDI mode as long as power remains on. For additional programming sessions, pressing the Re-updify button is not required. Any changes to the fuses will get loaded on the next power-up.
Auto Power Cycle High Voltage PulseOn power-up, the target's PA0 pin is changed to UPDI mode as described above. After programming, an automatic power-cycle will occur and any new fuse settings will take effect. If re-programming is required, press the Re-updify button first. This power-cycles and sends the HV pulse and enable sequence to re-activate UPDI mode.

UPDI Host Pin Description

PinNameTypeDescription
J2-1UPDI-HOSTI/OUPDI signal from programmer
J2-2GNDPowerGround
J2-3VTGPowerTarget voltage supply (3-5V)
J3-1UPDI-HOSTI/OUPDI signal from programmer
J3-2VTGPowerTarget voltage supply (3-5V)
J3-3PROGI/OUpdi-Key UPDI programming pin
J3-6GNDPowerGround

UPDI Target Pin Description

PinNameTypeDescription
J5-1HVUPDI-TARGETI/OHVUPDI signal to target
J5-2GNDPowerGround
J5-3VTG-PCPowerTarget voltage supply (3-5V) with Power Cycle and 100mA current limiting
J4-1HVUPDI-TARGETI/OHVUPDI signal to target
J4-2VTG-PCPowerTarget voltage supply (3-5V) with Power Cycle and 100mA current limiting
J4-3VTGI/OTarget voltage supply (3-5V)
J4-6GNDPowerGround

Green VTG LED:

This LED is connected to VTG-PC so it will be both power on indication and power-cycle indication.

Orange HV LED:

On power-up or just after the Re-Updify button is released, the orange HV LED will be on during the HV pulse and enable sequence.

Target Power:

VTG-PC: This pin is the output of the MIC2091 power switch that is optimized for 100mA over-current limiting and circuit protection.

VTG: This pin connects directly to your external power source.

Re-Updify:

This button is used just prior to re-programming when using "Auto Power Cycle and High Voltage Pulse" mode.

UpdiKeyBot

Comments

No comments yet. Be the first to ask about this board.

Askabout this board