summaryrefslogtreecommitdiffhomepage
path: root/digital
diff options
context:
space:
mode:
Diffstat (limited to 'digital')
-rw-r--r--digital/io/src/move.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/digital/io/src/move.c b/digital/io/src/move.c
index ec5d42cc..28dcfeac 100644
--- a/digital/io/src/move.c
+++ b/digital/io/src/move.c
@@ -55,4 +55,11 @@ move_start (asserv_position_t position, uint8_t backward)
void
move_stop (void)
{
+ /* This is a dirty hack. */
+ /* Re-init move FSM. */
+ fsm_init (&move_fsm);
+ /* Ask the asserv to stop the motor. */
+ asserv_stop_motor ();
+ /* Generate the event, move FSM stopped. */
+ main_post_event_for_top_fsm = TOP_EVENT_move_fsm_stopped;
}