Uisp is a tool for AVR microcontrollers which can interface to many hardware in-system programmers.