BlueOS icon indicating copy to clipboard operation
BlueOS copied to clipboard

core: frontend: vehicle-setup: allow configuring failsafes

Open ES-Alexander opened this issue 1 year ago • 7 comments

  • Supported in QGC

  • Maybe include an editable checklist, with default values of common pre-dive/launch checks

    • Charged batteries
    • Ensure enclosures and vent are sealed
    • Equipment packed
    • etc

Failsafe Parameters

  • Control Station Heartbeat Loss
    • [x] FS_GCS_ENABLE (optional)
    • [ ] FS_GCS_ENABL (Plane -_-)
    • [x] FS_GCS_TIMEOUT (optional)
  • Pilot Input Loss (Sub)
    • [x] FS_PILOT_INPUT
    • [x] FS_PILOT_TIMEOUT
  • Radio Control Loss
    • [ ] RC_OVERRIDE_TIME
    • [ ] RC_FS_TIMEOUT
    • [ ] SERVO_RC_FS_MSK
  • Leak Detection (Sub)
    • [x] FS_LEAK_ENABLE
    • [ ] Configuration details should (in future) be handled by a separate Leak Sensor page
    • [x] LEAK1_PIN
    • [x] LEAK1_LOGIC
    • [x] LEAK1_TYPE (optional)
    • [ ] LEAK2_PIN
    • [ ] LEAK2_LOGIC
    • [ ] LEAK2_TYPE (optional)
    • [ ] LEAK3_PIN
    • [ ] LEAK3_LOGIC
    • [ ] LEAK3_TYPE (optional)
  • Excess Internal Pressure (Sub)
    • [x] FS_PRESS_ENABLE
    • [x] FS_PRESS_MAX
  • Excess Internal Temperature (Sub)
    • [x] FS_TEMP_ENABLE
    • [x] FS_TEMP_MAX
  • Terrain Loss During AUTO (Sub)
    • [ ] FS_TERRAIN_ENAB
  • Low Battery
    • [ ] BATTn_FS_VOLTSRC
    • [ ] BATTn_LOW_VOLT
    • [ ] BATTn_LOW_TIMER
    • [ ] BATTn_LOW_MAH
    • [ ] BATTn_FS_LOW_ACT
    • [ ] BATTn_CRT_VOLT
    • [ ] BATTn_CRT_MAH
    • [ ] BATTn_FS_CRT_ACT
  • Excess Power Draw
    • [ ] MOT_BAT_VOLT_MAX
    • [ ] MOT_BAT_VOLT_MIN
    • [ ] MOT_BAT_CURR_MAX
    • [ ] MOT_BAT_CURR_TC
    • [ ] MOT_BAT_IDX
  • Disarm
    • [ ] MOT_SAFE_DISARM
    • [ ] MOT_SAFE_TIME
    • [ ] LOG_DISARMED
    • [ ] LOG_REPLAY
    • [ ] LOG_FILE_DSRMROT
    • [ ] VTX_OPTIONS
  • Plane Disarm (Plane)
    • [ ] LAND_DISARM_DELAY
    • [ ] LAND_THEN_NEUTRL
    • [ ] Q_OPTIONS
    • [ ] Q_M_SAFE_DISARM
    • [ ] Q_M_SAFE_TIME
  • Sensor Fusion Uncertainty
    • [x] FS_EKF_ACTION (optional)
    • [x] FS_EKF_THRESH
    • [ ] FS_EKF_FILT (optional, Copter)
  • Crash Detection
    • [x] FS_CRASH_CHECK
  • X Crash Detection (Plane)
    • [ ] CRASH_ACC_THRESH
    • [ ] CRASH_DETECT
  • Low Throttle
    • [ ] FS_THR_ENABLE
    • [ ] FS_THR_VALUE
  • Excess Vibrations
    • [ ] FS_VIBE_ENABLE
  • Dead Reckoning Recovery
    • [ ] FS_DR_ENABLE
    • [ ] FS_DR_TIMEOUT
  • Fence Breach
    • [ ] FENCE_ENABLE
    • [ ] FENCE_ACTION
    • [ ] FENCE_OPTIONS (optional)
    • [ ] FENCE_ALT_MAX (optional)
    • [ ] FENCE_MARGIN
    • [ ] FENCE_ALT_MIN
    • [ ] FENCE_AUTOENABLE (optional)
    • [ ] FENCE_RET_RALLY
    • [ ] FENCE_TYPE
  • Parachute Required
    • [ ] CHUTE_ENABLED
    • [ ] CHUTE_ALT_MIN
    • [ ] CHUTE_DELAY_MS
    • [ ] CHUTE_CRT_SINK
    • [ ] Configuration details should be handled by a separate Parachute page
    • [ ] CHUTE_TYPE
    • [ ] CHUTE_SERVO_ON
    • [ ] CHUTE_SERVO_OFF
  • Miscellaneous
    • [ ] FS_OPTIONS
    • [ ] OSD_FS_SCR
    • [ ] FS_SHORT_ACTN (Plane)
    • [ ] FS_SHORT_TIMEOUT (Plane)
    • [ ] FS_LONG_ACTN (Plane)
    • [ ] FS_LONG_TIMEOUT (Plane)
    • [ ] FS_ACTION (Rover)
    • [ ] FS_TIMEOUT (Rover)
  • Advanced Failsafe
    • [ ] AFS_ENABLE
    • [ ] AFS_MAN_PIN
    • [ ] AFS_HB_PIN
    • [ ] AFS_TERMINATE
    • [ ] AFS_TERM_ACTION
    • [ ] AFS_TERM_PIN
    • [ ] AFS_WP_COMMS
    • [ ] AFS_WP_GPS_LOSS
    • [ ] AFS_MAX_GPS_LOSS
    • [ ] AFS_MAX_COM_LOSS
    • [ ] AFS_AMSL_LIMIT
    • [ ] AFS_AMSL_ERR_GPS
    • [ ] AFS_DUAL_LOSS
    • [ ] AFS_GCS_TIMEOUT
    • [ ] AFS_QNH_PRESSURE
    • [ ] AFS_GEOFENCE
    • [ ] AFS_RC
    • [ ] AFS_RC_MAN_ONLY
    • [ ] AFS_RC_FAIL_TIME
    • [ ] AFS_MAX_RANGE
    • [ ] AFS_OPTIONS

Pre-Arm Parameters

  • [ ] GPS_HDOP_GOOD
  • [ ] SCR_DEBUG_OPTS
  • [ ] SCR_LD_CHECKSUM
  • [ ] SCR_RUN_CHECKSUM
  • [ ] AUTO_OPTIONS
  • [ ] GUID_OPTIONS
  • [ ] EFI_SVF_ARMCHECK
  • [ ] EFI_SP_ST_DISARM
  • [ ] ARMING_ACCTHRESH
  • [ ] ARMING_RUDDER
  • [ ] ARMING_MIS_ITEMS
  • [ ] ARMING_CHECK
  • [ ] ARMING_MAGTHRESH
  • [ ] ARMING_CRSDP_IGN
  • [ ] BARO_ALTERR_MAX
  • [ ] BATTn_ARM_VOLT
  • [ ] BATTn_ARM_MAH
  • [ ] BRD_SAFETYOPTION
  • [ ] BRD_VBUS_MIN
  • [ ] BRD_VSERVO_MIN
  • [ ] BRD_OPTIONS
  • [ ] BRD_HEAT_LOWMGN
  • [ ] COMPASS_OFFS_MAX
  • [ ] RC_OPTIONS
  • [ ] TMODE_FLAGS
  • [ ] TKOFF_RPM_MIN
  • [ ] TKOFF_THR_MINACC (Plane)
  • [ ] TKOFF_ACCEL_CNT (Plane)
  • [ ] TKOFF_TIMEOUT (Plane)
  • [ ] RTL_AUTOLAND (Plane)
  • [ ] FLIGHT_OPTIONS (Plane)
  • [ ] ARMING_BBOX_SPD (Plane)
  • [ ] ARMING_REQUIRE (Plane)
  • [ ] ICE_OPTIONS (Plane)
  • [ ] Q_ASSIST_SPEED (Plane)
  • [ ] Q_TAILSIT_ENABLE (Plane)

ES-Alexander avatar Jun 21 '24 14:06 ES-Alexander

Some initial interface ideas:

image image

Currently unspecified:

  • MOT_BAT_*
  • RC
  • Throttle
  • Vibration
  • FS_Options bitmask
  • All "Advanced failsafes" (AFS_*)
  • Pre-arm checks (autopilot-related or otherwise)

ES-Alexander avatar Jun 24 '24 15:06 ES-Alexander

Extracted the main images as SVG files, so we can see what they look like in the actual interface: dead_reckoning_recovery crash_detected terrain_lost ekf_variance_limit battery_limits leak_detected internal_temperature_limit internal_pressure_limit pilot_input_lost gcs_heartbeat_lost

Happy to redraw them neater / with different designs if we decide that's relevant (these first ones were fast sketches after all)

Some relevant icons:

  • mdi-timer-outline (timeout)
  • mdi-lightning-bolt-outline (action)
  • mdi-skull-crossbones-outline (critical)
  • mdi-pin
  • mdi-gauge-full (max pressure)
  • mdi-thermometer
  • mdi-format-vertical-align-top
  • mdi-close-octagon (stop/disarm)
  • mdi-close (disabled)

ES-Alexander avatar Jun 24 '24 23:06 ES-Alexander

Cleaned up the current designs as an alternative style option, and added a new one for radio control loss:

image

Correctly formatted SVGs downloadable here: failsafe-svgs.zip

ES-Alexander avatar Jun 29 '24 16:06 ES-Alexander

I ended up making an in-between set as well, with a bit more of the drawn vibe returned: image

Correctly formatted SVGs downloadable here: drawn70-failsafes.zip

ES-Alexander avatar Jul 01 '24 09:07 ES-Alexander

I ended up making an in-between set as well, with a bit more of the drawn vibe returned

I do like this set a lot! I'll update to it.

Williangalvani avatar Jul 01 '24 13:07 Williangalvani

SMS has requested a modified colour scheme: SMS-failsafe-image-colours.pdf

Colour-corrected SVGs: drawn70-sms-colours.zip

ES-Alexander avatar Jul 03 '24 03:07 ES-Alexander

As of #3023, the SVG colours now use themeable CSS variables. Noting for any further diagrams that get added to support other failsafe types.

ES-Alexander avatar Feb 24 '25 00:02 ES-Alexander