From cf60d2066edbbed97a4b32846888fe25322d8131 Mon Sep 17 00:00:00 2001
From: Florian Pose <fp@igh-essen.com>
Date: Wed, 25 Oct 2006 13:32:17 +0000
Subject: [PATCH] Fixes in state change FSM.

---
 master/fsm_change.c | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/master/fsm_change.c b/master/fsm_change.c
index c6722b69..d236be97 100644
--- a/master/fsm_change.c
+++ b/master/fsm_change.c
@@ -388,12 +388,10 @@ void ec_fsm_change_check_ack(ec_fsm_change_t *fsm /**< finite state machine */)
         return;
     }
 
-    if (datagram->jiffies_received
-        - fsm->jiffies_start >= 100 * HZ / 1000) { // 100ms
-        char state_str[EC_STATE_STRING_SIZE];
-        ec_state_string(fsm->requested_state, state_str);
+    if (datagram->jiffies_received - fsm->jiffies_start >= HZ) { // 1s
         // timeout while checking
-        slave->current_state = EC_SLAVE_STATE_UNKNOWN;
+        char state_str[EC_STATE_STRING_SIZE];
+        ec_state_string(slave->current_state, state_str);
         fsm->state = ec_fsm_change_error;
         EC_ERR("Timeout while acknowledging state %s on slave %i.\n",
                state_str, slave->ring_position);
-- 
GitLab