The most common way of programming AVR microcontrollers is the In System Programming port. That little six-pin header with MOSIs and MISOs coming out of it will program every AVR you’ll ever come across. The ISP does have a downside – fuses. Set your fuses wrong, and without a High Voltage Serial Programmer, your chip is bricked. [Dilshan] designed his own HVSP that’s less expensive than the Atmel STK500 and has a nice GUI app.
Instead of following in the footsteps of the USBtinyISP, [Dilshan] is using a PIC18F as the main microcontroller in the programmer. This chip was chosen because of its built-in USB functionality. Because the High Voltage part of a HVSP operates at 12V, actually providing that voltage needed to be taken into consideration. For this, [Dilshan] is using standard 78xx regulators with an 18V input.
The app to control this programmer does everything you would expect, including all the usual AVRdude commands. A great build, and just what we need to reset the fuses on a few dozen chips we have sitting around.
AVR chips are convenient because you can program them in circuit at their operating voltage. That is, unless you screw up the fuse settings and they’ll no longer listen to an In System Programmer. If you find yourself facing this problem, just build this circuit on a breadboard and ‘unbrick’ by holding down the button.
The circuit seen above is a High Voltage Serial Programmer. This is one of two high voltage protocols used by AVR chips; HVSP is for chips that don’t have enough pins to use High Voltage Parallel Programming. This rendition uses a 12V power source, which is the level necessary for the high voltage method. A 7805 linear regulator joins the mix to provide operational voltage, along with one transistor, an ATtiny2313 to control the circuit, a four-digit 7-segment display for feedback, and one button for control.
Watch the video after the break to see an ATtiny13 programmed to disable the reset pin using a breadboarded programmer. That chip is then easily rescued, having been automatically recognized by using its device signature.
Continue reading “AVR HVSP on a tiny breadboard”
[Jeff Keyzer] has a new version of the HV Rescue Shield available. This tool allows you to use an Arduino to reset the fuse bits on AVR microcontrollers. This is necessary if you make a mistake and disable the reset pin, or choose the incorrect clock settings (this will probably happen to you at some point). In order to bring the chip back to life you’ll need to use High Voltage Programming. The last version of the shield only worked with High Voltage Parallel Programming (HVPP) but this rendition can also use High Voltage Serial Programming (HVSP) for 8-pin chips that don’t have enough inputs for parallel communications.
As we talked about in our AVR Programming Tutorials this is no replacement for a high-end programmer like the STK500 or an AVR Dragon, but if you already have an Arduino a kit will only cost you $20 (or you can etch and build it yourself). We would have liked to see a breakout header for the HVP signals for off-board use. The absence of a breakout header doesn’t preclude this, but since you need the on board boost converter for the 12V signals, and because this shield can’t be used with a breadboard due to pin spacing, it’s hard to patch into signals for non-DIP use. We also think some clever firmware hacking and this could be used for HV programming, like we needed for that LED light bulb.
[Manekinen] built a power supply monitor based around an AVR ATtiny13. Voltage and amperage are displayed on a 16×2 LCD character display (we’re not sure what the third number is… samples per second?). This is no small feat considering that the tiny13 is an 8-pin chip. He makes it happen by using the pins for both LCD control and ADC input. To make this happen the HD44780 compliant display is used in 4-bit mode. Check out the video after the break and hit up the non-translated page if you want to download the source code and PCB artwork. A note of warning, he’s using the RESET pin for I/O which means once you burn the fuses you’ll need a programmer that has High Voltage Serial Programming capabilities if you want to reprogram the chip. Continue reading “‘tiny’ power supply monitor”
We love our AVR Dragon programmer. It is a small board with a lot of functionality: in-circuit serial programming, JTAG, debug wire, and high voltage serial programming. Unfortunately, out of the box it is not quite ready for action. The Dragon ships with an unpopulated prototyping area and missing a pin header for the HVSP. For most people this means soldering on pin headers and a ZIF socket then jumpering between the various programming headers and the header for the socket. Tired of working with jumper wires, [Jussi] designed a small PCB to make the connections (original link in Finnish). Continue reading “AVR Dragon wiring alternative”