diff --git a/docs/assets/test_cards/dshot_log_output.png b/docs/assets/test_cards/dshot_log_output.png new file mode 100644 index 0000000000..117042de33 Binary files /dev/null and b/docs/assets/test_cards/dshot_log_output.png differ diff --git a/docs/en/SUMMARY.md b/docs/en/SUMMARY.md index 97d1e1d63a..d3ae165ee6 100644 --- a/docs/en/SUMMARY.md +++ b/docs/en/SUMMARY.md @@ -823,6 +823,8 @@ - [Test MC_04 - Failsafe Testing](test_cards/mc_04_failsafe_testing.md) - [Test MC_05 - Manual Modes (Inside)](test_cards/mc_05_indoor_flight_manual_modes.md) - [Test MC_06 - Optical Flow (Inside)](test_cards/mc_06_optical_flow.md) + - [Test MC_07 - VIO (Inside)](test_cards/mc_07_vio.md) + - [Test MC_08 - DSHOT ESC](test_cards/mc_08_dshot.md) - [Unit Tests](test_and_ci/unit_tests.md) - [Fuzz Tests](test_and_ci/fuzz_tests.md) - [Continuous Integration](test_and_ci/continous_integration.md) diff --git a/docs/en/test_and_ci/test_flights.md b/docs/en/test_and_ci/test_flights.md index 0cfa585f69..f9579c1ccb 100644 --- a/docs/en/test_and_ci/test_flights.md +++ b/docs/en/test_and_ci/test_flights.md @@ -28,3 +28,5 @@ These are run by the test team as part of release testing, and for more signific - [MC_04 - Failsafe Testing](../test_cards/mc_04_failsafe_testing.md) - [MC_05 - Indoor Flight (Manual Modes)](../test_cards/mc_05_indoor_flight_manual_modes.md) - [MC_06 - Indoor Flight (Optical Flow)](../test_cards/mc_06_optical_flow.md) +- [MC_07 - VIO (Visual-Inertial Odometry)](../test_cards/mc_07_vio.md) +- [MC_08 - DSHOT ESC](../test_cards/mc_08_dshot.md) diff --git a/docs/en/test_cards/mc_06_optical_flow.md b/docs/en/test_cards/mc_06_optical_flow.md index 40ff70b8dc..8a7eb71211 100644 --- a/docs/en/test_cards/mc_06_optical_flow.md +++ b/docs/en/test_cards/mc_06_optical_flow.md @@ -2,11 +2,19 @@ ## Objective -To test that optical flow / external vision work as expected +To test that optical flow works as expected ## Preflight Disconnect all GPS / compasses and ensure vehicle is using optical flow for navigation +([Setup Information here](../sensor/optical_flow.md)) + +Ensure there are no other sources of positioning besides optical flow + +- [EKF2_OF_CTRL](../advanced_config/parameter_reference.md#EKF2_OF_CTRL): `1` +- [EKF2_GPS_CTRL](../advanced_config/parameter_reference.md#EKF2_GPS_CTRL): `0` +- [EKF2_EV_CTRL](../advanced_config/parameter_reference.md#EKF2_EV_CTRL): `0` +- [SYS_HAS_MAG](../advanced_config/parameter_reference.md#SYS_HAS_MAG): `0` Ensure that the drone can go into Altitude / Position flight mode while still on the ground @@ -39,5 +47,7 @@ Ensure that the drone can go into Altitude / Position flight mode while still on ## Expected Results - Take-off should be smooth as throttle is raised +- Drone should hold altitude in Altitude Flight mode without wandering +- Drone should hold position within 1 meter in Position Flight mode without pilot moving sticks - No oscillations should present in any of the above flight modes - Upon landing, copter should not bounce on the ground diff --git a/docs/en/test_cards/mc_07_vio.md b/docs/en/test_cards/mc_07_vio.md new file mode 100644 index 0000000000..24743eaf7e --- /dev/null +++ b/docs/en/test_cards/mc_07_vio.md @@ -0,0 +1,52 @@ +# Test MC_07 - VIO (Visual-Inertial Odometry) + +## Objective + +To test that external vision (VIO) works as expected + +## Preflight + +Disconnect all GPS / compasses and ensure vehicle is using VIO for navigation + +Ensure that the drone can go into Altitude / Position flight mode while still on the ground + +Ensure there are no other sources of positioning besides VIO: + +- [EKF2_OF_CTRL](../advanced_config/parameter_reference.md#EKF2_OF_CTRL): `0` +- [EKF2_GPS_CTRL](../advanced_config/parameter_reference.md#EKF2_GPS_CTRL): `0` +- [EKF2_EV_CTRL](../advanced_config/parameter_reference.md#EKF2_EV_CTRL): `15` +- [SYS_HAS_MAG](../advanced_config/parameter_reference.md#SYS_HAS_MAG): `0` + +## Flight Tests + +❏ Altitude flight mode + +    ❏ Vertical position should hold current value with stick centered + +    ❏ Pitch/Roll/Yaw response 1:1 + +    ❏ Throttle response set to climb/descent rate + +❏ Position flight mode + +    ❏ Horizontal position should hold current value with stick centered + +    ❏ Vertical position should hold current value with stick centered + +    ❏ Throttle response set to climb/descent rate + +    ❏ Pitch/Roll/Yaw response set to pitch/roll/yaw rates + +## Landing + +❏ Land in either Position or Altitude mode with the throttle below 40% + +❏ Upon touching ground, copter should disarm automatically within 2 seconds (default: see [COM_DISARM_LAND](../advanced_config/parameter_reference.md#COM_DISARM_LAND)) + +## Expected Results + +- Take-off should be smooth as throttle is raised +- Drone should hold altitude in Altitude Flight mode without wandering +- Drone should hold position within 1 meter in Position Flight mode without pilot moving sticks +- No oscillations should present in any of the above flight modes +- Upon landing, copter should not bounce on the ground diff --git a/docs/en/test_cards/mc_08_dshot.md b/docs/en/test_cards/mc_08_dshot.md new file mode 100644 index 0000000000..1ce413b34f --- /dev/null +++ b/docs/en/test_cards/mc_08_dshot.md @@ -0,0 +1,46 @@ +# Test MC_08 - DSHOT ESC + +## Objective + +Regression test for DSHOT working with PX4 + +## Preflight + +- Ensure vehicle is using a DSHOT ESC. +- Parameter [DSHOT_BIDIR_EN](../advanced_config/parameter_reference.md#DSHOT_BIDIR_EN) is enabled +- Parameter [DSHOT_TEL_CFG](../advanced_config/parameter_reference.md#DSHOT_TEL_CFG) is configured (if ESC supports telemetry) +- Parameter [SDLOG_PROFILE](../advanced_config/parameter_reference.md#SDLOG_PROFILE) has Debug (`5`) checked + +## Flight Tests + +❏ Stabilized Flight mode + +    ❏ Takeoff in stabilized flight mode to ensure correct motor spin + +    ❏ Pitch/Roll/Yaw response 1:1 + +    ❏ Throttle response 1:1 + +❏ Position flight mode + +    ❏ Horizontal position should hold current value with stick centered + +    ❏ Vertical position should hold current value with stick centered + +    ❏ Throttle response set to climb/descent rate + +    ❏ Pitch/Roll/Yaw response set to pitch/roll/yaw rates + +## Landing + +❏ Land in either Position or Altitude mode with the throttle below 40% + +❏ Upon touching ground, copter should disarm automatically within 2 seconds (default: see [COM_DISARM_LAND](../advanced_config/parameter_reference.md#COM_DISARM_LAND)) + +## Expected Results + +- Download flight logs +- Load into Data Plot Juggler +- Ensure data is logged for esc_status/esc.0x/esc_rpm + + ![Reference frames](../../assets/test_cards/dshot_log_output.png)