PX4 / PX4-Autopilot

PX4 Autopilot Software
https://px4.io
BSD 3-Clause "New" or "Revised" License
7.86k stars 13.24k forks source link

Missing params: 1: Error in Fixed-Wing Configurations #17557

Open cdadswell37 opened 3 years ago

cdadswell37 commented 3 years ago

Hi all,

I've found what appears to be an issue with the px4 v5 firmware in (as far as I can tell) any fixed wing configuration, that prevents you from arming the motor. I first encountered this issue trying to run a standard-plane configuration of px4 on a Pixhawk 4 using the latest stable version (1.11.3) and the latest version of QGroundControl (4.1.2). After flashing the firmware, setting the airframe configuration, and performing all necessary sensor calibration, I get the following error when selecting the 'flight modes' tab in QGroundControl:

'Parameters are missing from firmware. You may be running a version of firmware which is not fully supported or your firmware has a bug in it. Missing params: 1:'

Note, there are not actually missing parameter names listed, simply a blank list, with a '1:' which I believe is the value of the missing parameter, but it doesn't seem to have a name. QGC doesn't throw any other errors, so I figured this wasn't really a problem, especially since I can arm the pixhawk with the safety switch, and all of the control surfaces respond to input etc, but when I try to start the motor with a down/right input on the throttle stick I get a 'Notify Negative Tone' from the Pixhawk and the motor does not arm. This happens regardless of whether I am connected to QGC via telemetry radio or not, so I think that narrows it down to a firmware issue rather than a QGC one. As I say, no other discernible errors so I think this must be due to the missing parameter error.

Things I have tried to fix this issue:

Same error persisted across all of these. I'm finding it quite difficult to believe that this issue has been in px4 for major releases going back over 2 years, but I've tried so many different things on my end that it seems so unfeasible to be a hardware/config issue at this point. I genuinely don't know what else it could be except a firmware issue, unless someone else has some insight? I work in a University and am supporting students on projects to build their own unmanned aircraft. Most are quads but one group chose to build a plane and have done a fantastic job but are blocked from flying but this final issue, so would be really great to find a solution as soon as possible to get them in the air!

Thanks very much, Chris

dagar commented 3 years ago

Hi Chris, I'm guessing you've got things stuck in a weird state as this definitely isn't a regular problem.

Can we go through it together from a clean baseline?

If you're still having problems at that point lets work through it step by step with specific error messages.

cdadswell37 commented 3 years ago

Hi dagar,

Thanks for the response, really appreciate your time. I've tried the above and still the same unfortunately. I uninstalled QGC and deleted any remnants in my AppData directory, Documents and Program Files then reinstalled from the above link. I'm not sure if you have a specific process for wiping the pixhawk, but I plugged it (via a proven, non-hub-connected cable), hit both reset switches on the pixhawk board itself, then used the firmware tab to wipe and reinstall the latest stable firmware. Then went to the parameters tab and hit tools -> reset all parameters to firmware defaults. Same error still occurs after that. If any of that is flawed let me know and I can re run. If there's a more rigorous method for wiping via the toolchain command line then I can try that if you can point me in the right direction.

On checking the QGC console after the above I get the below errors:

[I] at C:\projects\qgroundcontrol\src\FactSystem\ParameterManager.cc:829 - "Attemping load from cache" [I] at C:\projects\qgroundcontrol\src\FactSystem\ParameterManager.cc:919 - "Parameters cache match failed C:/Users/sgcdadsw/AppData/Roaming/QGroundControl.org/ParamCache/1_1.v2" [E] at C:\projects\qgroundcontrol\src\FactSystem\FactControls\FactPanelController.cc:45 - "Missing parameter: "1:"" [E] at qrc:/qml/PX4SimpleFlightModes.qml:164 - "qrc:/qml/PX4SimpleFlightModes.qml:164: TypeError: Type error"

Whole log also attached here: missingparam1_log.txt

The C:\projects folder doesn't actually exist on my hard drive, so I'm guessing that unless this is on the Pixhawk board itself this might be the source of this issue. Not sure what the origin of the projects folder is meant to be as it doesn't appear to be created by the QGC installer at any point. Possibly a code fragment left over from someone's dev setup as I know the file it references does exist the QGC source code. The parameter cache file in appdata does exist and was created only a few minutes before, so it's definitely fresh to the install and not left over from something previous. Any ideas?

Thanks, Chris