reset code

is there a comand that will reset the arduino

thanks

You could set the watchdog timer for a short timeout, or insert a line of assembly "jmp 0", which will restart the code but not reset the IO pins and that sort of thing.

However, in nearly every instance, you should redesign your code rather than require a reset.

You could wire a digital pin to the reset pin and reset it that way.

N314: You could wire a digital pin to the reset pin and reset it that way.

The datasheet specifically advises against that, actually. The IO pins get set back to high impedance before a "full" reset happens.

Here is a sample sketch that resets the AVR using the watchdog reset.
I don’t know what Arduino board or bootloader you have so
I will caution you that unless you have an updated bootloader or the optiboot bootloader,
the avr will get stuck infinitely reseting itself as the older bootloaders do not properly handle
the watchdog reset.

The symptom of this infinite reset is that you will not see the setup message nor the countdown
more than once. If it is working, then you will see these repeat.

— bill

#include <avr/wdt.h>

void setup()
{
	Serial.begin(9600);
	Serial.println("setup()");
}
	
void loop()
{
	Serial.println("Top of loop()");
	for(int x = 3; x ; x--)
	{
		Serial.println(x);
		delay(1000);
	}
	Serial.println("Reseting Arduino");
	resetArduino();
}

void resetArduino()
{
	wdt_enable(WDTO_15MS);
	noInterrupts();
	while(1); // wait to die and be reborn....
}