px4_custom_mode.h 811 Bytes
Newer Older
1 2 3 4 5 6 7 8 9 10 11
/*
 * px4_custom_mode.h
 *
 *  Created on: 09.08.2013
 *      Author: ton
 */

#ifndef PX4_CUSTOM_MODE_H_
#define PX4_CUSTOM_MODE_H_

#include <stdint.h>
12 13

enum PX4_CUSTOM_MAIN_MODE {
14 15 16 17 18 19
	PX4_CUSTOM_MAIN_MODE_MANUAL = 1,
	PX4_CUSTOM_MAIN_MODE_ALTCTL,
	PX4_CUSTOM_MAIN_MODE_POSCTL,
	PX4_CUSTOM_MAIN_MODE_AUTO,
	PX4_CUSTOM_MAIN_MODE_ACRO,
	PX4_CUSTOM_MAIN_MODE_OFFBOARD,
20 21 22
};

enum PX4_CUSTOM_SUB_MODE_AUTO {
23 24 25 26 27 28 29
	PX4_CUSTOM_SUB_MODE_AUTO_READY = 1,
	PX4_CUSTOM_SUB_MODE_AUTO_TAKEOFF,
	PX4_CUSTOM_SUB_MODE_AUTO_LOITER,
	PX4_CUSTOM_SUB_MODE_AUTO_MISSION,
	PX4_CUSTOM_SUB_MODE_AUTO_RTL,
	PX4_CUSTOM_SUB_MODE_AUTO_LAND,
	PX4_CUSTOM_SUB_MODE_AUTO_RTGS
30 31 32
};

union px4_custom_mode {
33 34 35 36 37 38 39
	struct {
		uint16_t reserved;
		uint8_t main_mode;
		uint8_t sub_mode;
	};
	uint32_t data;
	float data_float;
40 41
};

42
#endif /* PX4_CUSTOM_MODE_H_ */