2026-04-04 02:39:41 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#ifdef PS
|
|
|
|
|
#undef PS
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef F
|
|
|
|
|
#undef F
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#include <Eigen/Dense>
|
|
|
|
|
|
2026-04-07 10:48:44 +01:00
|
|
|
#include "drone_comms.h"
|
|
|
|
|
#include "drone_controller.h"
|
|
|
|
|
|
2026-04-04 02:39:41 +01:00
|
|
|
void setup_drone();
|
|
|
|
|
|
|
|
|
|
inline dcont::Vec3C v3f_to_v3c(Eigen::Vector3f v) { return {v[0], v[1], v[2]}; }
|
|
|
|
|
|
|
|
|
|
inline dcont::StackedController *drone_controller = nullptr;
|
2026-04-07 10:48:44 +01:00
|
|
|
inline dcont::ModeInput current_input_mode = dcont::ModeInput::Acro;
|
2026-04-04 02:39:41 +01:00
|
|
|
|
|
|
|
|
void drone_controller_task(void *params);
|
2026-04-06 00:27:32 +01:00
|
|
|
|
|
|
|
|
void motor_throttles_task(void *params);
|
|
|
|
|
|
2026-04-13 14:36:24 +01:00
|
|
|
// 3 4 2 1
|
|
|
|
|
inline float motor_throttles[4] = {0.01, 0.01, 0.01, 0.01};
|
2026-04-12 16:52:29 +01:00
|
|
|
inline bool killswitch_active = false;
|