3
\$\begingroup\$

Is there a reset board available (I mean schematic, link, tutorial or anything else) out there for the ATmega32 microcontoller (I heard about a high-voltage reset board, and I found some links for an ATmega8 reset board, but not ATmega32)?

I actually have many dead microcontrollers here (with a wrong fuse bit configuration), and I want to make some board to reset them to their default configuration. (I'm not able to program them because of a wrong fuse bit configuration).

\$\endgroup\$
4
  • \$\begingroup\$ When you say "wrong fuse bit configuration" do you mean a permanent code protection bit is set? Could you give an example of the config fuse settings? \$\endgroup\$
    – Oli Glaser
    Jul 25 '12 at 17:35
  • \$\begingroup\$ @OliGlaser 99% of the time that AVRs get "bricked" it's because their Clock Setting fuses are borked (i.e. set for external crystal without one being present) \$\endgroup\$
    – vicatcu
    Jul 25 '12 at 18:10
  • \$\begingroup\$ @vicatcu - ah I see, it needs to be clocked for programming then unless you use parallel or JTAG(?) I don't use AVRs so I wasn't aware of this. Just googled the issue, looks like quite a popular one :-) \$\endgroup\$
    – Oli Glaser
    Jul 25 '12 at 18:30
  • \$\begingroup\$ @OliGlaser I think only XMega and above family of AVR have JTAG support. The most popular ICSP programming mode, however, does require a valid / compatible clock setting and source though. \$\endgroup\$
    – vicatcu
    Jul 25 '12 at 18:39
4
\$\begingroup\$

Jeff Keyser over at MightyOhm makes HV Rescue Board as you've described. You may be able to find one that is "compatible" with the ATMega32 or roll your own based on his (open hardware) designs...

ATMega Fusebit Doctor also seems to support the ATMega32 directly, but I can't seem to find where you can buy it.

\$\endgroup\$
2
\$\begingroup\$

An STK500 board is often used for that purpose, but is an expensive solution.

You need to attach a suitable oscillator to the oscillator input on the chips. Something wired up on a piece of perf board, like a DIL oscillator module or a 555 chip wired as an astable oscillator, with supply and ground leads, and a wire connected to the oscillator output should be all you need. You should then be able to reset the fuse bits using your programmer. Something more convenient could be made by including a suitable socket or sockets on the perf board for your chips, with a programming connector.

\$\endgroup\$
2
\$\begingroup\$

This is the trick I use to unbrick my AVR's when I set wrong fuses. It is an Arduino based AVR High Voltage Serial programmer. It only works if you have an Arduino lying around that you can use for this.

Notice that you have to change the source code to contain the correct AVR ID bytes.

\$\endgroup\$
4
  • \$\begingroup\$ cool article, you'll note it's directly derived from Jeff's work that I referred to in my answer... \$\endgroup\$
    – vicatcu
    Jul 26 '12 at 15:29
  • \$\begingroup\$ Didn't see that until now. Still haven't read it, but the circuit diagram on 'your' page looks so much more complicated than 'mine'. Is it a parallel variation? \$\endgroup\$
    – jippie
    Jul 26 '12 at 15:58
  • \$\begingroup\$ pretty sure its the same circuit... the 'complexity' in Jeff's is that he's generating 12V on the shield from 5V and he's supporting three avr socket pinouts... \$\endgroup\$
    – vicatcu
    Jul 26 '12 at 16:31
  • \$\begingroup\$ also yes not all devices support high-voltage serial programming... most of the ATTiny's do, but the Mega168/328 only support high-voltage parallel programming and same deal with the Mega32... you have to check the datasheet for a device under the Memory Programming section. \$\endgroup\$
    – vicatcu
    Jul 26 '12 at 16:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.