diff options
author | lonkaars <loek@pipeframe.xyz> | 2022-05-09 14:58:59 +0200 |
---|---|---|
committer | lonkaars <loek@pipeframe.xyz> | 2022-05-09 14:58:59 +0200 |
commit | be84308e01ecc9e8de2997ab030420b401e06596 (patch) | |
tree | 1efcc385a197800e2b26497e16bf0e59d9e5265f /robot/consts.h | |
parent | c30c9250c18513899cee2ddc35071d98d36a7470 (diff) |
added boilerplate source and header files
Diffstat (limited to 'robot/consts.h')
-rw-r--r-- | robot/consts.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/robot/consts.h b/robot/consts.h new file mode 100644 index 0000000..6530528 --- /dev/null +++ b/robot/consts.h @@ -0,0 +1,33 @@ +#pragma once + +#ifndef BUILD_STR +// should be defined with -DBUILD_STR in makefile +#define BUILD_STR ("????????") +#endif + +#define W2_MAX_MODULE_CYCLE_MS (20) +#define W2_SERIAL_BAUD (9600) + +#define W2_ERR_TYPE_CRIT (0b00 << 6) +#define W2_ERR_TYPE_WARN (0b01 << 6) +#define W2_ERR_TYPE_INFO (0b10 << 6) +#define W2_ERR_TYPE_VERB (0b11 << 6) + +/** + * enum storing all error codes + * + * error codes are between 0-63 because the two most significant bits are + * reserved for error type checking + */ +enum w2_e_errorcodes { + // critical error codes + W2_ERR_CONN_LOST = 0x00 | W2_ERR_TYPE_CRIT, + W2_ERR_COM_UNAVAILABLE = 0x01 | W2_ERR_TYPE_CRIT, // client-only + W2_ERR_LINE_LOST = 0x02 | W2_ERR_TYPE_CRIT, + W2_ERR_OBSTACLE_STUCK = 0x03 | W2_ERR_TYPE_CRIT, + + // warnings + W2_ERR_BATTERY_LOW = 0x00 | W2_ERR_TYPE_WARN, + W2_ERR_OBSTACLE_DETECTED = 0x01 | W2_ERR_TYPE_WARN, + W2_ERR_CYCLE_EXPIRED = 0x02 | W2_ERR_TYPE_WARN, +}; |