I'm trying to get the 5D firmware working on my Arduino Duemilanova w/ATMega328. After I changed most the obvious things I uploaded it and ran it. When I watched it with a serial monitor I observed that it repeatedly reset itself, crashing during startup. I narrowed this down to the line that starts up the timer interrupt.
I compared the code in the 5D firmware to this tutorial: [
www.avrfreaks.net]
The only major difference I saw was the function signature for the interrupt routine. So I changed the 5D firmware line,
SIGNAL(SIG_OUTPUT_COMPARE1A)
to,
ISR(TIMER1_COMPA_vect)
and it worked. Does anyone know why the SIGNAL code didn't work? Would the ISR version work on the Sanguino and the motherboard? If so, it would be convenient to permanently change this in the firmware.