diff --git a/motorApp/MotorSrc/motorRecord.cc b/motorApp/MotorSrc/motorRecord.cc index e48cbfbd..081a8c18 100644 --- a/motorApp/MotorSrc/motorRecord.cc +++ b/motorApp/MotorSrc/motorRecord.cc @@ -173,9 +173,12 @@ HeadURL: $URL$ * No need in process() to test MIP_MOVE type moves for soft-travel limits. * - Need "preferred_dir" for LVIO test. Moved LVIO test in do_work() to * after "preferred_dir" is set. + * .69 05-19-14 rls - Set "stop" field true if driver returns RA_PROBLEM true. (Motor record + * stops motion when controller signals error but does not stop motion; e.g., + * maximum velocity exceeded.) */ -#define VERSION 6.8 +#define VERSION 6.9 #include #include @@ -3584,11 +3587,19 @@ static void if (ls_active == true || msta.Bits.RA_DONE || msta.Bits.RA_PROBLEM) { pmr->movn = 0; - if (ls_active == true) + if (ls_active == true || msta.Bits.RA_PROBLEM) + { clear_buttons(pmr); + if (msta.Bits.RA_PROBLEM) + { + pmr->stop = 1; + MARK(M_STOP); + } + } } else pmr->movn = 1; + if (pmr->movn != old_movn) MARK(M_MOVN);