|
dRonin
adbada4
dRonin firmware
|
Handles R/C link and flight mode. More...
#include "openpilot.h"#include "control.h"#include "transmitter_control.h"#include "pios_thread.h"#include "altitudeholdsettings.h"#include "baroaltitude.h"#include "flighttelemetrystats.h"#include "flightstatus.h"#include "loitercommand.h"#include "pathdesired.h"#include "positionactual.h"#include "receiveractivity.h"#include "systemsettings.h"#include "misc_math.h"Go to the source code of this file.
Data Structures | |
| struct | rcvr_activity_fsm |
Macros | |
| #define | ARMED_THRESHOLD 0.50f |
| #define | CONNECTION_OFFSET 250 |
| #define | RCVR_ACTIVITY_MONITOR_CHANNELS_PER_GROUP 12 |
| #define | RCVR_ACTIVITY_MONITOR_MIN_RANGE 20 |
| #define | THRUST_BIDIR_THRESH 0.35f |
| #define | MIN_MEANINGFUL_RANGE 40 |
| #define | RECEIVER_TIMER_FIRED 0xffffffff |
Functions | |
| static float | get_thrust_source (ManualControlCommandData *manual_control_command, bool always_fullrange) |
| static void | update_stabilization_desired (ManualControlCommandData *manual_control_command, ManualControlSettingsData *settings) |
| In stabilization mode, set stabilization desired. More... | |
| static void | set_flight_mode () |
| Determine which of N positions the flight mode switch is in and set flight mode accordingly. More... | |
| static void | process_transmitter_events (ManualControlCommandData *cmd, ManualControlSettingsData *settings, bool valid, bool settings_updated) |
| Process the inputs and determine whether to arm or not. More... | |
| static void | set_manual_control_error (SystemAlarmsManualControlOptions errorCode) |
| static float | scaleChannel (int n, int16_t value) |
| static bool | validInputRange (int n, uint16_t value, uint16_t offset) |
| Determine if the manual input value is within acceptable limits. More... | |
| static uint32_t | timeDifferenceMs (uint32_t start_time, uint32_t end_time) |
| static void | resetRcvrActivity (struct rcvr_activity_fsm *fsm) |
| static bool | updateRcvrActivity (struct rcvr_activity_fsm *fsm) |
| static void | set_loiter_command (ManualControlCommandData *cmd) |
| bool | ok_to_arm (void) |
| Determine if the aircraft is safe to arm based on alarms. More... | |
| int | rssitype_to_channelgroup () |
| Convert a rssi type to the associated channel group. More... | |
| int32_t | transmitter_control_initialize () |
| Initialize the transmitter control mode. More... | |
| static bool | is_low_throttle_for_arming (ManualControlCommandData *manual_control_command) |
| static bool | channel_is_configured (int channel_num) |
| static void | perform_tc_settings_update () |
| int32_t | transmitter_control_update () |
| Process inputs and arming. More... | |
| int32_t | transmitter_control_select (bool reset_controller) |
| Select and use transmitter control. More... | |
| enum control_status | transmitter_control_get_status () |
| Get any control events. More... | |
| uint8_t | transmitter_control_get_flight_mode () |
| Query what the flight mode would be if this is selected. More... | |
| static bool | arming_position (ManualControlCommandData *cmd, ManualControlSettingsData *settings, bool low_throt) |
| static bool | disarming_position (ManualControlCommandData *cmd, ManualControlSettingsData *settings, bool low_throt) |
| static bool | disarm_commanded (ManualControlCommandData *cmd, ManualControlSettingsData *settings, bool low_throt) |
| static void | reset_receiver_timer () |
| static bool | check_receiver_timer (uint32_t threshold) |
| static void | updateRcvrActivitySample (uintptr_t rcvr_id, uint16_t samples[], uint8_t max_channels) |
| static bool | updateRcvrActivityCompare (uintptr_t rcvr_id, struct rcvr_activity_fsm *fsm) |
| static float | scale_stabilization (StabilizationSettingsData *stabSettings, float cmd, SharedDefsStabilizationModeOptions mode, StabilizationDesiredStabilizationModeElem axis) |
Variables | |
| uintptr_t | pios_rcvr_group_map [] |
| static ManualControlCommandData | cmd |
| static ManualControlSettingsData | settings |
| static uint8_t | disconnected_count = 0 |
| static uint8_t | connected_count = 0 |
| static struct rcvr_activity_fsm | activity_fsm |
| static uint32_t | lastActivityTime |
| static uint32_t | lastSysTime |
| static float | flight_mode_value |
| static enum control_status | control_status |
| static bool | settings_updated |
| static bool | thrust_is_bidir |
| static bool | collective_is_thrust |
| static uint32_t | receiver_timer = RECEIVER_TIMER_FIRED |
Handles R/C link and flight mode.
Definition in file transmitter_control.c.