forked from ArduPilot/ardupilot
-
Notifications
You must be signed in to change notification settings - Fork 0
/
defines.h
101 lines (86 loc) · 3.04 KB
/
defines.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
#pragma once
// Internal defines, don't edit and expect things to work
// -------------------------------------------------------
#define SERVO_MAX 4500.0 // This value represents 45 degrees and is just an arbitrary representation of servo max travel.
// types of failsafe events
#define FAILSAFE_EVENT_THROTTLE (1<<0)
#define FAILSAFE_EVENT_GCS (1<<1)
// Logging parameters - only 32 messages are available to the vehicle here.
enum LoggingParameters {
LOG_THR_MSG,
LOG_NTUN_MSG,
LOG_STEERING_MSG,
LOG_GUIDEDTARGET_MSG,
};
#define MASK_LOG_ATTITUDE_FAST (1<<0)
#define MASK_LOG_ATTITUDE_MED (1<<1)
#define MASK_LOG_GPS (1<<2)
#define MASK_LOG_PM (1<<3)
#define MASK_LOG_THR (1<<4)
#define MASK_LOG_NTUN (1<<5)
//#define MASK_LOG_MODE (1<<6) // no longer used
#define MASK_LOG_IMU (1<<7)
#define MASK_LOG_CMD (1<<8)
#define MASK_LOG_CURRENT (1<<9)
#define MASK_LOG_RANGEFINDER (1<<10)
#define MASK_LOG_COMPASS (1<<11)
#define MASK_LOG_CAMERA (1<<12)
#define MASK_LOG_STEERING (1<<13)
#define MASK_LOG_RC (1<<14)
// #define MASK_LOG_ARM_DISARM (1<<15)
#define MASK_LOG_IMU_RAW (1UL<<19)
#define MASK_LOG_VIDEO_STABILISATION (1UL<<20)
#define MASK_LOG_OPTFLOW (1UL<<21)
// for mavlink SET_POSITION_TARGET messages
#define MAVLINK_SET_POS_TYPE_MASK_POS_IGNORE ((1<<0) | (1<<1))
#define MAVLINK_SET_POS_TYPE_MASK_VEL_IGNORE ((1<<3) | (1<<4))
#define MAVLINK_SET_POS_TYPE_MASK_ACC_IGNORE ((1<<6) | (1<<7))
#define MAVLINK_SET_POS_TYPE_MASK_FORCE (1<<9)
#define MAVLINK_SET_POS_TYPE_MASK_YAW_IGNORE (1<<10)
#define MAVLINK_SET_POS_TYPE_MASK_YAW_RATE_IGNORE (1<<11)
// for mavlink SET_ATTITUDE_TARGET messages
#define MAVLINK_SET_ATT_TYPE_MASK_ROLL_RATE_IGNORE (1<<0)
#define MAVLINK_SET_ATT_TYPE_MASK_PITCH_RATE_IGNORE (1<<1)
#define MAVLINK_SET_ATT_TYPE_MASK_YAW_RATE_IGNORE (1<<2)
#define MAVLINK_SET_ATT_TYPE_MASK_THROTTLE_IGNORE (1<<6)
#define MAVLINK_SET_ATT_TYPE_MASK_ATTITUDE_IGNORE (1<<7)
// radio failsafe enum (FS_THR_ENABLE parameter)
enum fs_thr_enable {
FS_THR_DISABLED = 0,
FS_THR_ENABLED,
FS_THR_ENABLED_CONTINUE_MISSION,
};
// gcs failsafe enum (FS_GCS_ENABLE parameter)
enum fs_gcs_enable {
FS_GCS_DISABLED = 0,
FS_GCS_ENABLED,
FS_GCS_ENABLED_CONTINUE_MISSION,
};
enum fs_crash_action {
FS_CRASH_DISABLE = 0,
FS_CRASH_HOLD = 1,
FS_CRASH_HOLD_AND_DISARM = 2
};
enum fs_ekf_action {
FS_EKF_DISABLE = 0,
FS_EKF_HOLD = 1,
FS_EKF_REPORT_ONLY = 2,
};
#define DISTANCE_HOME_MINCHANGE 0.5f // minimum distance to adjust home location
enum class PilotSteerType : uint8_t {
DEFAULT = 0,
TWO_PADDLES = 1,
DIR_REVERSED_WHEN_REVERSING = 2,
DIR_UNCHANGED_WHEN_REVERSING = 3,
};
// frame class enum used for FRAME_CLASS parameter
enum frame_class {
FRAME_UNDEFINED = 0,
FRAME_ROVER = 1,
FRAME_BOAT = 2,
FRAME_BALANCEBOT = 3,
};
// manual mode options
enum ManualOptions {
SPEED_SCALING = (1 << 0),
};