UMRT Arm Firmware Library
mks_enums.hpp
Go to the documentation of this file.
1 //
2 // Created by noah on 11/06/25.
3 //
11 #ifndef UMRT_ARM_FIRMWARE_LIB_MKS_ENUMS_HPP
12 #define UMRT_ARM_FIRMWARE_LIB_MKS_ENUMS_HPP
13 
14 #include <string>
15 
16 #include "MKS_COMMANDS.hpp"
17 
21 enum MksMoveResponse : uint8_t {
23  FAILED = 0,
24 
26  MOVING = 1,
27 
29  COMPLETED = 2,
30 
32  LIMIT_REACHED = 3
33 };
34 
40  switch (status) {
41  case MksMoveResponse::FAILED: return "FAILED";
42  case MksMoveResponse::MOVING: return "MOVING";
43  case MksMoveResponse::COMPLETED: return "COMPLETED";
44  case MksMoveResponse::LIMIT_REACHED: return "LIMIT_REACHED";
45  }
46  throw std::logic_error("MksMoveResponse passed with invalid value: " + std::to_string(static_cast<uint8_t>(status)));
47 }
48 
49 #endif //UMRT_ARM_FIRMWARE_LIB_MKS_ENUMS_HPP
Describes the commands which are available to send MKS SERVO57D/42D/35D/28D stepper motor driver modu...
std::string to_string_mks_move_response(const MksMoveResponse status)
Converts an MksMoveResponse to its string representation.
Definition: mks_enums.hpp:39
MksMoveResponse
Status code for the response to move commands.
Definition: mks_enums.hpp:21
@ MOVING
The motor is moving.
Definition: mks_enums.hpp:26
@ COMPLETED
The motor has reached the target position.
Definition: mks_enums.hpp:29
@ LIMIT_REACHED
An end limit has been reached.
Definition: mks_enums.hpp:32
@ FAILED
Movement failed.
Definition: mks_enums.hpp:23
T to_string(T... args)