diff --git a/cmake/configs/posix_sitl_default.cmake b/cmake/configs/posix_sitl_default.cmake index 72933126b62..c8f129dc79c 100644 --- a/cmake/configs/posix_sitl_default.cmake +++ b/cmake/configs/posix_sitl_default.cmake @@ -4,6 +4,7 @@ set(CMAKE_TOOLCHAIN_FILE ${PX4_SOURCE_DIR}/cmake/toolchains/Toolchain-native.cma set(config_module_list drivers/boards/sitl + drivers/camera_trigger drivers/device drivers/gps drivers/pwm_out_sim diff --git a/src/drivers/camera_trigger/camera_trigger.cpp b/src/drivers/camera_trigger/camera_trigger.cpp index c4ef0e762a3..cb0d993554e 100644 --- a/src/drivers/camera_trigger/camera_trigger.cpp +++ b/src/drivers/camera_trigger/camera_trigger.cpp @@ -49,9 +49,7 @@ #include #include #include -#include -#include -#include +#include #include #include #include @@ -67,6 +65,7 @@ #include #include +#include "interfaces/src/camera_interface.h" #include "interfaces/src/pwm.h" #include "interfaces/src/relay.h" @@ -74,7 +73,7 @@ extern "C" __EXPORT int camera_trigger_main(int argc, char *argv[]); -typedef enum { +typedef enum : int32_t { CAMERA_INTERFACE_MODE_NONE = 0, CAMERA_INTERFACE_MODE_RELAY, CAMERA_INTERFACE_MODE_SEAGULL_MAP2_PWM @@ -254,15 +253,20 @@ CameraTrigger::CameraTrigger() : param_get(_p_interface, &_camera_interface_mode); switch (_camera_interface_mode) { +#ifdef __PX4_NUTTX + case CAMERA_INTERFACE_MODE_RELAY: - _camera_interface = new CameraInterfaceRelay; + _camera_interface = new CameraInterfaceRelay(); break; case CAMERA_INTERFACE_MODE_SEAGULL_MAP2_PWM: - _camera_interface = new CameraInterfacePWM; + _camera_interface = new CameraInterfacePWM(); break; +#endif + default: + PX4_ERR("unknown camera interface mode: %i", (int)_camera_interface_mode); break; } diff --git a/src/drivers/camera_trigger/interfaces/src/pwm.cpp b/src/drivers/camera_trigger/interfaces/src/pwm.cpp index e6fe4f15a67..03fd2f87e64 100644 --- a/src/drivers/camera_trigger/interfaces/src/pwm.cpp +++ b/src/drivers/camera_trigger/interfaces/src/pwm.cpp @@ -1,3 +1,5 @@ +#ifdef __PX4_NUTTX + #include #include @@ -146,3 +148,5 @@ void CameraInterfacePWM::info() { warnx("PWM - interface, pin config: %d,%d,%d", _pins[0] + 1, _pins[1] + 1, _pins[2] + 1); } + +#endif /* ifdef __PX4_NUTTX */ diff --git a/src/drivers/camera_trigger/interfaces/src/pwm.h b/src/drivers/camera_trigger/interfaces/src/pwm.h index 1a61a2a7917..8438f9e749a 100644 --- a/src/drivers/camera_trigger/interfaces/src/pwm.h +++ b/src/drivers/camera_trigger/interfaces/src/pwm.h @@ -6,6 +6,8 @@ */ #pragma once +#ifdef __PX4_NUTTX + #include #include @@ -33,3 +35,5 @@ private: bool _camera_is_on; }; + +#endif /* ifdef __PX4_NUTTX */ diff --git a/src/drivers/camera_trigger/interfaces/src/relay.cpp b/src/drivers/camera_trigger/interfaces/src/relay.cpp index d67903bd29d..42352d99b14 100644 --- a/src/drivers/camera_trigger/interfaces/src/relay.cpp +++ b/src/drivers/camera_trigger/interfaces/src/relay.cpp @@ -1,3 +1,4 @@ +#ifdef __PX4_NUTTX #include "relay.h" constexpr uint32_t CameraInterfaceRelay::_gpios[6]; @@ -75,3 +76,5 @@ void CameraInterfaceRelay::info() warnx("Relay - camera triggering, pins 1-3 : %d,%d,%d polarity : %s", _pins[0], _pins[1], _pins[2], _polarity ? "ACTIVE_HIGH" : "ACTIVE_LOW"); } + +#endif /* ifdef __PX4_NUTTX */ diff --git a/src/drivers/camera_trigger/interfaces/src/relay.h b/src/drivers/camera_trigger/interfaces/src/relay.h index 5a63251f481..ea65555f615 100644 --- a/src/drivers/camera_trigger/interfaces/src/relay.h +++ b/src/drivers/camera_trigger/interfaces/src/relay.h @@ -6,6 +6,8 @@ */ #pragma once +#ifdef __PX4_NUTTX + #include #include #include @@ -43,3 +45,5 @@ private: }; }; + +#endif /* ifdef __PX4_NUTTX */