Serial.begin(9600); //set isadora serial out to this speed under communications, make sure serial port is enabled Serial.println("isadora control of arduino"); Serial.println(" do it manually with the keyboard");

DON'T do this one. Neither the reset nor the arduino bootloader does not reset the watchdog, and this leads to a loop where the arduino resets, starts the bootloader, and resets again before a sketch can be downloaded. Sometimes you can break the loop using power-on instead of reset to load a new sketch, but it isn't ... pleasant.

(I should say: "many versions of the arduino bootloader do not reset the watchdog." There are a couple that DO.)

• Upload doesn't work? Do a loop-back test.• There's absolutely NO excuse for not having an ISP!• Your AVR needs a brain surgery? Use the online FUSE calculator.• My projects: RGB LED matrix, RGB LED ring, various ATtiny gadgets...• Microsoft is not the answer. It is the question, and the answer is NO!

DON'T do this one. Neither the reset nor the arduino bootloader does not reset the watchdog

That's a bit strong given the fact that it's fairly easy to shut off the watchdog at the top of setup.

But it's not. Depending on the bootload, the arduino spends several seconds flashing the leds in a "healthy" sequence and/or checking for serial traffic to see whether it should upload a new sketch or start the existing one. If you've gotten it to reset by setting a short watchdog timeout and going into a loop, you might never get to the setup in your sketch before the next watchdog reset happens.

If I understand the reset correctly, the physical button resets it by bringing the RESET pin LOW. Is it possible to connect the reset pin to one of the digital IO pins and use a digitalWrite(connect_to_reset_pin, LOW) ?

If I understand the reset correctly, the physical button resets it by bringing the RESET pin LOW. Is it possible to connect the reset pin to one of the digital IO pins and use a digitalWrite(connect_to_reset_pin, LOW) ?

This will work but I would diode-or the output. I would configure the pinas an output right before the digitalWrite command rather than in the setupalthough it should not matter with the diode.

Once you set the pin low the ATmega will reset and the default state of the pin will be an input (open circuit). If you set the pin low then high there is a chance that the reset pin will not be low long enough to reset the ATmega.

Connect the anode to the reset line and the cathode to the ATmega pin.