diff --git a/master/master.c b/master/master.c index 82bc6c575274bf4c0a428ef4819a92281f7c0b11..e08957bc8dd7c745c76af90bedce47a39469ca1c 100644 --- a/master/master.c +++ b/master/master.c @@ -394,7 +394,7 @@ int ec_master_enter_operation_mode(ec_master_t *master /**< EtherCAT master */) ec_datagram_t *datagram = &master->fsm.datagram; ec_master_eoe_stop(master); // stop EoE timer - master->eoe_checked = 0; // prevent from starting again by FSM + master->eoe_checked = 1; // prevent from starting again by FSM master->mode = EC_MASTER_MODE_OPERATION; while (!cancel_delayed_work(&master->idle_work)) { @@ -432,7 +432,7 @@ int ec_master_enter_operation_mode(ec_master_t *master /**< EtherCAT master */) } } - master->eoe_checked = 1; // allow starting EoE again + master->eoe_checked = 0; // allow starting EoE again return 0; @@ -455,7 +455,7 @@ void ec_master_leave_operation_mode(ec_master_t *master ec_datagram_t *datagram = &master->fsm.datagram; ec_master_eoe_stop(master); // stop EoE timer - master->eoe_checked = 0; // prevent from starting again by FSM + master->eoe_checked = 1; // prevent from starting again by FSM // wait for FSM datagram if (datagram->state == EC_DATAGRAM_SENT) {