# Quadrucopter termination

**URL:** <https://discuss.px4.io/t/quadrucopter-termination/47909>\
**Category:** v1.14\
**Created:** [November 18, 2025, 1:19pm UTC](https://discuss.px4.io/t/quadrucopter-termination/47909 "2025-11-18T13:19:50Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Mer\_Alba](https://discuss.px4.io/user_avatar/discuss.px4.io/mer_alba/32/20252_2.png) [@Mer\_Alba](https://discuss.px4.io/u/Mer_Alba)\
**Post date:** [November 18, 2025, 1:19pm UTC](https://discuss.px4.io/t/quadrucopter-termination/47909/1 "2025-11-18T13:19:50Z")

</div>

Hi! Could someone help me analyze this log? We are experiencing a failsafe, but I’m not sure what the root cause might be

> **[Flight Review](https://review.px4.io/plot_app?log=248fc991-8c85-4472-a65d-c70a0c9cf046)**

I have extracted the csv from the ulog and I have reviewed all the tables on the timestamp when the terminate trigger (second 732 aprox). We can observe a lack of data between seconds 732.4 and 734 in the following tables:

vehicle\_gps\_position\_0

| timestamp | timestamp\_sample | time\_utc\_usec | device\_id | lat | lon | alt | alt\_ellipsoid | s\_variance\_m\_s | c\_variance\_rad | eph | epv | hdop | vdop | noise\_per\_ms | jamming\_indicator | vel\_m\_s | vel\_n\_m\_s | vel\_e\_m\_s | vel\_d\_m\_s | cog\_rad | timestamp\_time\_relative | heading | heading\_offset | heading\_accuracy | rtcm\_injection\_rate | automatic\_gain\_control | fix\_type | jamming\_state | spoofing\_state | vel\_ned\_valid | satellites\_used | selected\_rtcm\_instance |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 732223609 | 0 | 1756730244600000 | 8748035 | 432380268 | -19741499 | 164240 | 213861 | 0.004096985 | 0.28634223 | 0.013999288 | 0.0109998835 | 0.5800781 | 0.8598633 | 0 | 0 | 0.12435434 | -0.112 | 0.042000003 | 0.034 | 2.782822 | 0 | nan | nan | nan | 0 | 0 | 6 | 0 | 0 | 1 | 32 | 0 |
| 732414590 | 0 | 1756730244800000 | 8748035 | 432380266 | -19741497 | 164240 | 213861 | 0.0043563843 | 0.33151084 | 0.013999288 | 0.012000201 | 0.5800781 | 0.8598633 | 0 | 0 | 0.12243366 | -0.105000004 | 0.046000004 | 0.043 | 2.7286828 | 0 | nan | nan | nan | 0 | 0 | 6 | 0 | 0 | 1 | 32 | 0 |
| 734019320 | 0 | 1756730246400000 | 8748035 | 432380259 | -19741478 | 164130 | 213751 | 0.009216309 | 0.17370577 | 0.013999288 | 0.01000083 | 0.5800781 | 0.8598633 | 0 | 0 | 0.67360675 | 0.19600001 | 0.12100001 | 0.633 | 0.55307704 | 0 | nan | nan | nan | 0 | 0 | 6 | 0 | 0 | 1 | 32 | 0 |

estimator\_gps\_status\_0

| timestamp | timestamp\_sample | position\_drift\_rate\_horizontal\_m\_s | position\_drift\_rate\_vertical\_m\_s | filtered\_horizontal\_speed\_m\_s | checks\_passed | check\_fail\_gps\_fix | check\_fail\_min\_sat\_count | check\_fail\_max\_pdop | check\_fail\_max\_horz\_err | check\_fail\_max\_vert\_err | check\_fail\_max\_spd\_err | check\_fail\_max\_horz\_drift | check\_fail\_max\_vert\_drift | check\_fail\_max\_horz\_spd\_err | check\_fail\_max\_vert\_spd\_err |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 731701513 | 731522872 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 732479021 | 732299607 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 734083625 | 733904337 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |

estimator\_gps\_status\_1:

| timestamp | timestamp\_sample | position\_drift\_rate\_horizontal\_m\_s | position\_drift\_rate\_vertical\_m\_s | filtered\_horizontal\_speed\_m\_s | checks\_passed | check\_fail\_gps\_fix | check\_fail\_min\_sat\_count | check\_fail\_max\_pdop | check\_fail\_max\_horz\_err | check\_fail\_max\_vert\_err | check\_fail\_max\_spd\_err | check\_fail\_max\_horz\_drift | check\_fail\_max\_vert\_drift | check\_fail\_max\_horz\_spd\_err | check\_fail\_max\_vert\_spd\_err |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 731481531 | 731294432 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 732481793 | 732299200 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 734097281 | 733903975 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |

estimator\_gps\_status\_2

| timestamp | timestamp\_sample | position\_drift\_rate\_horizontal\_m\_s | position\_drift\_rate\_vertical\_m\_s | filtered\_horizontal\_speed\_m\_s | checks\_passed | check\_fail\_gps\_fix | check\_fail\_min\_sat\_count | check\_fail\_max\_pdop | check\_fail\_max\_horz\_err | check\_fail\_max\_vert\_err | check\_fail\_max\_spd\_err | check\_fail\_max\_horz\_drift | check\_fail\_max\_vert\_drift | check\_fail\_max\_horz\_spd\_err | check\_fail\_max\_vert\_spd\_err |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 731482641 | 731294570 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 732479764 | 732299340 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
| 734086189 | 733904070 | nan | nan | nan | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |

on sensor\_gps, we have data:

| timestamp | timestamp\_sample | time\_utc\_usec | device\_id | lat | lon | alt | alt\_ellipsoid | s\_variance\_m\_s | c\_variance\_rad | eph | epv | hdop | vdop | noise\_per\_ms | jamming\_indicator | vel\_m\_s | vel\_n\_m\_s | vel\_e\_m\_s | vel\_d\_m\_s | cog\_rad | timestamp\_time\_relative | heading | heading\_offset | heading\_accuracy | rtcm\_injection\_rate | automatic\_gain\_control | fix\_type | jamming\_state | spoofing\_state | vel\_ned\_valid | satellites\_used | selected\_rtcm\_instance |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 731409820 | 0 | 1756730219800000 | 8748035 | 432379983 | -19742149 | 159560 | 209181 | 0.012992859 | 1624.1072 | 0.013999288 | 0.01000083 | 0.5698242 | 0.8598633 | 0 | 0 | 0.028142495 | 0.002 | 0.002 | 0.028 | 0.7853982 | 0 | nan | nan | nan | 0 | 0 | 6 | 0 | 0 | 1 | 32 | 0 |
| 732414590 | 0 | 1756730220800000 | 8748035 | 432379983 | -19742149 | 159570 | 209191 | 0.005329132 | 2.3695562 | 0.013999288 | 0.01000083 | 0.5698242 | 0.8598633 | 0 | 0 | 0.049739324 | 0.032 | -0.035 | -0.015000001 | -0.8301444 | 0 | nan | nan | nan | 0 | 0 | 6 | 0 | 0 | 1 | 32 | 0 |
| 733419523 | 0 | 1756730221800000 | 8748035 | 432379995 | -19742161 | 160520 | 210141 | 0.013221741 | 0.2916324 | 0.013999288 | 0.0109998835 | 0.5698242 | 0.8598633 | 0 | 0 | 1.4803926 | 0.20400001 | 0.061000004 | -1.465 | 0.29055712 | 0 | nan | nan | nan | 0 | 0 | 6 | 0 | 0 | 1 | 32 | 0 |

estimator\_innovations:

| timestamp | timestamp\_sample | gps\_hvel[0] | gps\_hvel[1] | gps\_vvel | gps\_hpos[0] | gps\_hpos[1] | gps\_vpos | ev\_hvel[0] | ev\_hvel[1] | ev\_vvel | ev\_hpos[0] | ev\_hpos[1] | ev\_vpos | rng\_vpos | baro\_vpos | aux\_hvel[0] | aux\_hvel[1] | aux\_vvel | flow[0] | flow[1] | terr\_flow[0] | terr\_flow[1] | heading | mag\_field[0] | mag\_field[1] | mag\_field[2] | gravity[0] | gravity[1] | gravity[2] | drag[0] | drag[1] | airspeed | beta | hagl | hagl\_rate |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 732199754 | 732029648 | -0.012723044 | -0.003446214 | -0.020076772 | 0.006489992 | 0.0031814575 | -0.007370949 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0.13182116 | 0 | 0 | nan | 0 | 0 | 0 | 0 | 0 | -0.22372743 | 0.49772236 | -0.32996523 | -0.5582536 | 0.19394527 | -0.009353897 | 0 | 0 | 0 | 0 | 0 | 0 |
| 732697905 | 732528014 | -0.009713165 | 0.019469969 | -0.024993958 | 0.013143063 | -0.0047597885 | -0.008559227 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | -0.09359217 | 0 | 0 | nan | 0 | 0 | 0 | 0 | 0 | -0.21780257 | 0.46236062 | -0.3248655 | 0.014335255 | -0.011641783 | 4.1404975E-05 | 0 | 0 | 0 | 0 | 0 | 0 |
| 733196362 | 733026489 | -0.009713165 | 0.019469969 | -0.024993958 | 0.013143063 | -0.0047597885 | -0.008559227 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | nan | 0 | 0 | 0 | 0 | 0 | -0.21780257 | 0.46236062 | -0.3248655 | -0.4263883 | 0.31041643 | -0.014648585 | 0 | 0 | 0 | 0 | 0 | 0 |
| 733694569 | 733524648 | -0.009713165 | 0.019469969 | -0.024993958 | 0.013143063 | -0.0047597885 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | nan | 0 | 0 | 0 | 0 | 0 | -0.21780257 | 0.46236062 | -0.3248655 | 0.21225813 | 0.37863955 | -0.009634689 | 0 | 0 | 0 | 0 | 0 | 0 |

During the timestamp, the estimator innovations are static, and I suppose the EKF2 triggers the flag of attitude invalid, and the drone goes from OFFBOARD to TERMINATE mode.

- if GPS data are not valid, why does EKF2 not take into account the IMU data?

- How can I minimize this kind of issue?
