HVProg using ATmega8535 microcontroller

Summary of HVProg using ATmega8535 microcontroller


HVProg is a compact STK500-compatible AVR programmer redesign that supports all AVR controllers and both serial and parallel high-voltage programming to recover chips with disabled reset or SPI fuses. It offers Basic and Advanced versions (schematics/board available), STK500 protocol compatibility, and AvrStudio support. The Basic needs stabilized 5V/12V inputs; the Advanced accepts ≥15V input. No ESD protection; tested at 5V. Schematics, board layouts, and part lists are provided; connectors follow Atmel/STK500 standards.

Parts used in the HVProg:

  • Microcontroller (e.g., ATmega8535 as used in HVProg example)
  • Connectors: 6-pin ISP
  • Connectors: 10-pin ISP (Basic version)
  • Connector: 20-pin ISP/high-voltage (Advanced version)
  • STK500-compatible control and data connectors (for parallel HV)
  • Power input components for stabilized 5V and 12V (Basic)
  • Power input components for unstabilized ≥15V (Advanced)
  • Jumpers (High Voltage Enable Jumper, PJUMP/BSEL2 related)
  • External clock input (SWCLK/XTAL1)
  • Passive components and wiring as per provided schematics and board layout
  • Compatible with AvrStudio
  • Supports all AVR Controllers
  • Parallel and serial High-Voltage-Programming
  • Small and easy layout with only a few parts
  • STK500 protocol
  • Schematics and board layout available

 

Introduction

The project started as an enhancement of Martin Thomas  Evertool project. He has rebuilt the AVRISP and JTAG adapter with only a few parts. Unfortunately they both don’t support high-voltage programming modes – the only possibility to ‘rescue’ AVR controllers when you e.g. disabled the reset or SPI fuses. The only widely available possibility was the STK500 from ATMEL.
HVProg is a redesign of the original STK500 without all components of a development board. It is based on the original ATMEL schematics that are freely available on the net (e.g. at avrfreaks.net). The main target was to keep all nessecary functionality to programm all available AVR controllers in every programming mode that the STK500 supports.
If you look for a development board for ATMEL AVR controllers you better buy the original STK500. If you only need an ISP programming adapter the AVRISP included in Evertool is better suited for you!
Please consider:

  • HVProg can’t replace a real development board and will never do
  • No ESD protoction
  • HVProg in the Basic-Version needs a stabilized 12V and 5V input voltage
  • For one step a working programmer is needed (AvrProg compatible prefered, see software section)
  • HVProg has only been tested in 5V environments

There are two versions of the project available:

  • The Basic-Version has seperate connectors for the different programming modes and is only available as schematic. It needs a stabilized 5V and 12V input voltage and is supposed to be used for own board development. This version will not be updated except to the correction of errors.
  • The Advanced-Version is available as schematic and board layout. Adapter boards for HV-Programming will be ready soon and a good tutorial how to build a case for HVProg is linked. This version needs an unstabilized input voltage of at least 15V (AC or DC).

HVProg

Programming interfaces

Basic-Version

  • 6 Pin ISP
  • 10 Pin ISP
  • Serial-High-Voltage Programming (no standard connector)
  • Parallel-High-Voltage Programming (STK500 compatible control und data connectors and one connector with other needed signals)

Advanced-Version

  • 6 pin ISP
  • 20 pin connector for ISP, parallel and serial high-voltage programming

 

Changelog

  • 03.10.2004 -> First version released (V0.2)
  • 05.10.2004 -> Schematics as eagle file released
  • 06.11.2004 -> Version 0.3 with less parts
  • 24.04.2005 -> Completely updated site with lots of new infos
  • 29.09.2005 -> Programming problem solved. See Software-Section

 

Copyright

The schematics, boards and every other available information on this site are freely available for noncommercial use only. I am not responsible if anything get damaged by my circuits or by false information provided or any other reason. I am also not responsible for linked content. These sites are property of their owners.

Hardware

Basic-Version (v0.3)

  • Schematic (Eagle-Format, Freeware 4.11):   Download
  • Schematic as gif-file (~400kb):   Download
  • Part list as txt:   Download

Advanced version (v0.5)


Connector details

  • ISP: The connector is compatible with the ATMEL standard (see STK500 User Guide  page 51)
  • HV-Seriel: (For exact pinning check the appropriate controller datasheet. Section Memory Programming/High Voltage Serial Programming)
    Pin name uC pin
    SWCLK XTAL1
    TRST Reset (High Voltage Enable Jumper must be set)
    PPD0 ‘Serial Data Input’ (usually PB0)
    PPD1 ‘Serial Instr. Input’ (usually PB1)
    PPD2 ‘Serial Data Output’ (usually PB2)
  • HV-Parallel: For special connections check STK500 User Guide (Table 3-3 page 21, look for BSEL2 and PJUMP)
    Pin name uC pin
    VCC target supply voltage uC
    GND ground
    TRST Reset (High Voltage Enable Jumper must be set)
    SWCLK XTAL1
    PPC0 If BSEL2 then connect to PortA.0 otherwise not needed
    PPC1 PortD.1: Rdy/Bsy
    PPC2 PortD.2: OE
    PPC3 PortD.3: WR
    PPC4 PortD.4: BS1
    PPC5 PortD.5: XA0
    PPC6 PortD.6: XA1
    PPC7 PortD.7: PAGEL
    PPD0 PortB.0
    PPD1 PortB.1
    PPD2 PortB.2
    PPD3 PortB.3
    PPD4 PortB.4
    PPD5/MOSI PortB.5
    PPD6/MISO PortB.6; if PJUMP connect it to PortC.0
    PPD7/SCK PortB.7; if PJUMP connect it to PortC.1
  • External clock to reanimate controllers with wrong clock settings (fuses) is available SWCLK. The external clock has to be connected to XTAL1 and can be adjusted up to 3,69MHz with the STK500 plugin in AvrStudio.

 
For more detail: HVProg using ATmega8535 microcontroller

Quick Solutions to Questions related to HVProg:

  • Does HVProg support all AVR controllers?
    Yes, the project supports all AVR controllers and the programming modes the STK500 supports.
  • Can HVProg perform high-voltage programming?
    Yes, it supports both serial and parallel high-voltage programming.
  • What power does the Basic-Version require?
    The Basic-Version needs a stabilized 5V and 12V input voltage.
  • What input voltage does the Advanced-Version require?
    The Advanced-Version needs an unstabilized input voltage of at least 15V AC or DC.
  • Is HVProg a full development board replacement?
    No, HVProg cannot replace a real development board.
  • Does HVProg include ESD protection?
    No, HVProg has no ESD protection.
  • Are schematics and board layouts available?
    Yes, schematics and board layouts are available for download (Eagle and gif formats).
  • Is an external clock option provided?
    Yes, an external clock input is available on SWCLK/XTAL1 and can be adjusted up to 3.69 MHz with the STK500 plugin in AvrStudio.
  • Does HVProg follow STK500 connector standards?
    Yes, the ISP connector is compatible with the Atmel STK500 standard and parallel HV follows STK500 connectors.
  • Was HVProg tested at different voltages?
    HVProg has only been tested in 5V environments.

About The Author

Ibrar Ayyub

I am an experienced technical writer holding a Master's degree in computer science from BZU Multan, Pakistan University. With a background spanning various industries, particularly in home automation and engineering, I have honed my skills in crafting clear and concise content. Proficient in leveraging infographics and diagrams, I strive to simplify complex concepts for readers. My strength lies in thorough research and presenting information in a structured and logical format.

Follow Us:
LinkedinTwitter
Scroll to Top