Navio2 QGC missing parameters

Hi

When I start the px4 on raspberry pi using navio2 I get some warning about default parameters are not set. I’ll attach a screenshot:

I see the following error in the QGC’s console:
[E] at qrc:/qml/SafetyComponent.qml:426 - “qrc:/qml/SafetyComponent.qml:426: TypeError: Cannot read property ‘value’ of null”

It seems like a QGC specific error, but Im wondering why these parameters are not present by default. Since if I set one of the missing parameters manually in the px4.config the warning message for that param goes away.

I set the following:
param set RTL_DESCEND_ALT 60

In the startup log it seems to be override the “default” value
RTL_DESCEND_ALT: curr: 30.0000 → new: 60.0000

And the the warning for that parameter is gone:

Also I observed that if I restart the application it looses all of the configuration/calibration I made before. Not sure if the root cause is the same or at least similar. But for me it look like the application cannot read / write the parameters from / to the filesystem.

Can you guide me which way I should look, or how to proceed to overcome this issue?

Thanks in advance!

Peter

I meet the same issue on my raspberry pi.

Is there any solution?

Hi

Both of your issues are resolved with https://github.com/PX4/Firmware/pull/6135, it should be on master soon. The problem was that the parameters were not loaded on startup and navigator did not run, which is responsible for the RTL_* parameters.

@DonLakeFlyer Can we remove the hard dependency on the RTL_* parameters? Seems like an unnecessary dependency, as for example racers don’t need to run navigator.

Beat

Since QGC creates user interface which directly uses these parameters (RTL settings, GeoFence) it will complain if they are missing. It is possible to make this ui optional but not something I’d want to do unless absolutely necessary. Having QGC work correctly with custom versions of PX4 firmware which have parts turned off and parameters missing due to that fact can be done but if so, that needs to be spec’ed out as to what can be optional.

Ok got it, makes sense.