updates
[inav.git] / src / main / io / rcdevice_cam.h
blob7463cdf440733e4a05fd63494e9d4f9fa8d382aa
1 /*
2 * This file is part of Cleanflight.
4 * Cleanflight is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation, either version 3 of the License, or
7 * (at your option) any later version.
9 * Cleanflight is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
14 * You should have received a copy of the GNU General Public License
15 * along with Cleanflight. If not, see <http://www.gnu.org/licenses/>.
18 #pragma once
20 #include <stdbool.h>
21 #include <stdint.h>
22 #include <stdio.h>
23 #include <ctype.h>
25 #include "common/time.h"
26 #include "io/rcdevice.h"
27 #include "fc/rc_modes.h"
29 #define FIVE_KEY_CABLE_JOYSTICK_MIN 1080
30 #define FIVE_KEY_CABLE_JOYSTICK_MAX 1920
31 #define FIVE_KEY_CABLE_JOYSTICK_MID_START 1350
32 #define FIVE_KEY_CABLE_JOYSTICK_MID_END 1650
34 typedef struct rcdeviceSwitchState_s {
35 bool isActivated;
36 } rcdeviceSwitchState_t;
38 extern runcamDevice_t *camDevice;
39 extern bool rcdeviceInMenu;
41 void rcdeviceInit(void);
42 void rcdeviceUpdate(timeUs_t currentTimeUs);
44 bool rcdeviceIsEnabled(void);
46 void rcdeviceSend5KeyOSDCableSimualtionEvent(rcdeviceCamSimulationKeyEvent_e key);