iNav Enhanced Return to Home
In INAV version 2.0, the developers added some extra functionality to the return to home feature. This new feature is a simple but powerful addition and often overlooked. What it does is allow you to set an altitude for when you reach your home position that is different to the altitude that the model will fly back at. This used in combination with the At Least setting is pretty useful.
The way my RTH is set up, the model will fly home at it’s current altitude or climb to 300 feet if below. This is high enough to miss any obstructions but also it will not waste energy raising or lowering altitude if it’s above 300 feet. Once the model reaches the home position, it will lower it’s altitude to 150 feet while loitering.
This feature is really easy to implement, but it needs a CLI command at the moment as it’s not been added to the Configurator yet. Here are my RTH Settings:
#Return to Home set nav_rth_allow_landing = NEVER #Never land when home point reached, the aircraft will loiter above. set nav_rth_climb_first = OFF #Turn towards home before climbing to the set altitude. set nav_rth_alt_mode = AT_LEAST #Minimum height for return to home. set nav_rth_altitude = 9100 #RTH altitude of 91 metres (300ft). set nav_rth_home_altitude = 4570 #Alitude to go to once home is reached, 45.7 metres (150ft). set inav_reset_home = FIRST_ARM #Reset the home point when the model is armed for the first time with each plug in. Default is EACH_ARM, but if you accidentally disarm in flight, when you re-arm the home point will be saved there.
These commands are correct for INAV 2.0, for future versions it would be worth checking them before committing anything. I’ve added comments to each line, but the key line that we’re interested in for the new feature is set nav_rth_home_altitude as this is what sets the altitude to loiter at when the model has reached home.