inav icon indicating copy to clipboard operation
inav copied to clipboard

Frozen OSD/FC during RTH

Open StuweFPV opened this issue 3 years ago • 2 comments

Today i was testing some antenna setup with my test plane and did about 10 flights. Now and then I test RTH in order to fine tune the planes behavior and to make sure it will work. so today at a number of times. On flight 10 however the plane would not come home as usual. When i've noticed and wanted to abort RTH the whole FC went into a freeze! unable to regain control as i've watched the plane crash...

RTH was initiated by me via switch as a test. full RC cover was given at any time. 100%LQ at 10mW..

This could be a hardware failure. However i do take my soldering tasks very seriously, always put capacitors on and have done more than 10h with this plane in over 50 flights. In all these years this has never happened to me. So just a hardware failure or really a bug in 4.1???

https://youtu.be/L73tAnIXxLk

Steps to Reproduce

  1. Probably impossible to reproduce

Expected behavior

  1. Fly home when RTH is active - but it kept turning
  2. Don't freeze but let me abort RTH anytime

Suggested solution(s)

check the code for old/hidden leftovers, possible conflicts, bugs

Additional context

Diff file of the current flight is attached


  • FC Board name and vendor: Matek F722-Wing + Matek Analog pixel OSD module (via UART2)
  • INAV/MATEKF722SE 4.1.0 Feb 11 2022 / 11:08:58 (611d26f4)
  • GCC-10.2.1 20201103 (release)

T-28 iNAV 4.1 v3.1.txt

StuweFPV avatar May 27 '22 10:05 StuweFPV

Looking at the Diff you don't have RTH mode set only Failsafe mode. So you initiated RTH using Failsafe set to RTH ?. I assume you tried to cancel the RTH by switching Failsafe mode off ? Did it lock up the moment you switched off Failsafe mode or the moment you moved the sticks to cancel the failsafe or had it already locked up before you did anything to cancel the RTH ?

breadoven avatar May 27 '22 16:05 breadoven

yes that is correct. I set failsafe as a mode and define the RTH procedure as the failsafe action. Crossfire is set to cut. worked well on over 40 planes so far and in many "real life" incidences where RTH saved me a plane. When i test, i switch on RTH (Failsafe) and then immediately turn the switches back to ACRO but don't touch the sticks. the plane will perform RTH until i move the sticks more than 50% (or something around that value). In this case i'm much faster to react and don't have to worry about switch positions if something goes wrong - and it does a lot with a new airplane especially when you have the all famous inav drift per default on every plane.... (sorry this is besides the point but a shame that this old and so important issue is not being fixed - only very few people understand and do logging for filter adjustment..)

on this flight i've tried to cancel RTH after i realized something is wrong - so after the point where the plane should stop the turn and fly home. when watching the DVR it looks to me that exactly at the point where the plane should level (home arrow straight) the lock occurred. So my efforts to cancel were after the lock - hence no reaction of the plane - and trust me i've toggled every switch on my remote in those endless felt seconds before impact :)

StuweFPV avatar May 27 '22 23:05 StuweFPV