Commit eb50e28
autotest: run external AHRS tests at reduced speedup
The external AHRS drivers parse their serial stream on a real-time
thread. At ArduPlane's default autotest speedup (100x) that thread
cannot keep the simulated GPS within its health window on a loaded CI
runner: a given wall-clock scheduling stall maps to 100x as much
sim-time, pushing the GPS frame delta past the is_healthy() thresholds.
This produced intermittent "GPS 1: not healthy" arm failures in
InertialLabsEAHRS (and is a latent risk for the other EAHRS tests that
share fly_external_AHRS).
Lower the speedup to 20x for the duration of fly_external_AHRS so the
parse thread keeps the GPS healthy. Use context_set_speedup() inside a
context_push()/context_pop() pair so the SIM_SPEEDUP parameter and the
self.speedup timeout scaler stay in sync and are restored together,
even if the test raises.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent 7cd2375 commit eb50e28
1 file changed
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3106 | 3106 | | |
3107 | 3107 | | |
3108 | 3108 | | |
| 3109 | + | |
| 3110 | + | |
| 3111 | + | |
| 3112 | + | |
| 3113 | + | |
| 3114 | + | |
| 3115 | + | |
3109 | 3116 | | |
3110 | 3117 | | |
3111 | 3118 | | |
| |||
0 commit comments