# What "Reset execution error signal" is useful for?

**URL:** <https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746>\
**Category:** RobotStudio\
**Tags:** reset, execution-error, rapid, system-input\
**Created:** [January 7, 2025, 3:01pm UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746 "2025-01-07T15:01:21Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![dragolollo](https://avatars.discourse-cdn.com/v4/letter/d/f9ae1b/32.png) [@dragolollo](https://tech-community.robotics.abb.com/u/dragolollo)\
**Post date:** [January 7, 2025, 3:01pm UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746/1 "2025-01-07T15:01:21Z")

</div>

Hello all,

I was wondering how the system input “Reset execution error signal” is used amd cam be useful.

I thought that when an execution error arises, it was necessary to acknowledge the error using a DI connected to this system input (similarly to what happen when an emergency occurs, when you have to use the system input “Reset emergency stop”).

But actually a “Start at Main” already works as acknowledge.

---

<div class="post-metadata">

**Author:** ![lemster68](https://dub1.discourse-cdn.com/flex005/user_avatar/tech-community.robotics.abb.com/lemster68/32/1945_2.png) [@lemster68](https://tech-community.robotics.abb.com/u/lemster68)\
**Post date:** [January 7, 2025, 3:10pm UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746/2 "2025-01-07T15:10:12Z")

</div>

Start at main could cause a crash midway through the program so if you want to resume without aborting the program this will be useful.

---

<div class="post-metadata">

**Author:** ![dragolollo](https://avatars.discourse-cdn.com/v4/letter/d/f9ae1b/32.png) [@dragolollo](https://tech-community.robotics.abb.com/u/dragolollo)\
**Post date:** [January 7, 2025, 3:42pm UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746/3 "2025-01-07T15:42:14Z")

</div>

Thank you for the answer.

I still need some explanations, I wrote a simple example to understand better.

Let say that all system input and output are connected to a PLC.  
The behaviour I want to obtain is the following: when error (ERR\_USER) arises, I want to stop robot motion and program execution and then start it again (with system input “Start”) from where it was stopped but only after that the system output “Execution Error” has been reset through system input “Reset execution error signal”.

What’s the logical sequence of instruction/system input I should use for this?

VAR errnum ERR\_USER := 1;

PROC main()

!Add your code here  
MoveJ p1, v200,fine,tool0\WObj:=wobj0;

MoveJ p2, v200,fine,tool0\WObj:=wobj0;

MoveJ p3, v200,fine,tool0\WObj:=wobj0;

IF DI\_UserError = 1 THEN !DI\_UserError is only a bit I use to trigger the error  
RAISE ERR\_USER;

ENDIF

ERROR

IF ERRNO = ERR\_USER THEN  
example := example + 1;

ErrLog 4800, “error\_1”, ERRSTR\_EMPTY,  
ERRSTR\_EMPTY,ERRSTR\_EMPTY,ERRSTR\_EMPTY;

ENDIF

Stop;

ENDPROC  
ENDMODULE

---

<div class="post-metadata">

**Author:** ![lemster68](https://dub1.discourse-cdn.com/flex005/user_avatar/tech-community.robotics.abb.com/lemster68/32/1945_2.png) [@lemster68](https://tech-community.robotics.abb.com/u/lemster68)\
**Post date:** [January 7, 2025, 4:03pm UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746/4 "2025-01-07T16:03:49Z")

</div>

You are welcome. What is the purpose of this? " example := example + 1;" I don’t get it.  
Anyway. Your error handler needs to have a way to get back into the routine to resume. What is the course of action do you want to try? Retry, Trynext and so on. In the case of division by zero, it will always error, so a retry will end up exceeding the retry counter. Perhaps you want to set a group output to send the error number to the PLC.

---

<div class="post-metadata">

**Author:** ![dragolollo](https://avatars.discourse-cdn.com/v4/letter/d/f9ae1b/32.png) [@dragolollo](https://tech-community.robotics.abb.com/u/dragolollo)\
**Post date:** [January 8, 2025, 9:23am UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746/5 "2025-01-08T09:23:42Z")

</div>

I’m sorry, “example” was just a debug variable I forgot to cancel

I would like to go back to the point where the error occured and to start the execution of the program only after that robot receiveS “Start” system input from PLC

---

<div class="post-metadata">

**Author:** ![lemster68](https://dub1.discourse-cdn.com/flex005/user_avatar/tech-community.robotics.abb.com/lemster68/32/1945_2.png) [@lemster68](https://tech-community.robotics.abb.com/u/lemster68)\
**Post date:** [January 8, 2025, 12:59pm UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746/6 "2025-01-08T12:59:21Z")

</div>

Since you already have a stop instruction in your error handler, the robot will not resume execution until it gets the start input. To resume from the error, a retry is what you need.

---

<div class="post-metadata">

**Author:** ![dragolollo](https://avatars.discourse-cdn.com/v4/letter/d/f9ae1b/32.png) [@dragolollo](https://tech-community.robotics.abb.com/u/dragolollo)\
**Post date:** [January 9, 2025, 12:00pm UTC](https://tech-community.robotics.abb.com/t/what-reset-execution-error-signal-is-useful-for/11746/7 "2025-01-09T12:00:23Z")

</div>

Thank you!
