G-code interpreter and stepmotor controller for crazy fast coordinated moves of up to 8 steppers. Uses the Programmable Realtime Unit (PRU) of the Beaglebone.
After estop is triggered, the machine state is set to homingstate = GCodeMachineControl::HomingState::NEVER_HOMED;
and motors are shutdown. Segments could still be enqueued in the planner or in worse in the PRU.
We should enforce a clear state after that or an estop clear could lead to machine executing an unfinished PRU segment (at some undefined speed).
After estop is triggered, the machine state is set to homingstate = GCodeMachineControl::HomingState::NEVER_HOMED; and motors are shutdown. Segments could still be enqueued in the planner or in worse in the PRU.
We should enforce a clear state after that or an estop clear could lead to machine executing an unfinished PRU segment (at some undefined speed).