ArduPilot / ArduPilot/ardupilot

manifest.json incorrect generation for heli firmwares

Open
#11,632 8 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
15.9k
Forks
21.4k
Avg merge
4d 10h
Merged PRs (30d)
127

Description

This causes QGC to not be able to load heli firmwares on all boards. I'm not sure if it is just "OFFICIAL" versions which are incorrect. But those are the only entries which QGC uses for now.

Here is an example of an incorrect entry:
```
{
"mav-type": "Copter",
"vehicletype": "Copter",
"mav-firmware-version-minor": "6",
"format": "hex",
"url": "http://firmware.ardupilot.org/Copter/stable/CubeBlack-heli/arducopter-heli.hex",
"mav-firmware-version-type": "OFFICIAL",
"mav-firmware-version-patch": "9",
"mav-autopilot": "ARDUPILOTMEGA",
"platform": "CubeBlack-heli",
"mav-firmware-version": "3.6.9",
"git-sha": "632be63f053d45ab584190586d4a028abca9a2e4",
"mav-firmware-version-major": "3",
"latest": 0
},
```
For this one mav-type should be "HELICOPTER" and platform should be just "CubeBlack".

Not all are wrong, here is an example of a correct entry:
```
{
"mav-type": "HELICOPTER",
"vehicletype": "Copter",
"mav-firmware-version-minor": "6",
"format": "arducopter-heli",
"url": "http://firmware.ardupilot.org/Copter/stable/navio-heli/arducopter-heli",
"mav-firmware-version-type": "OFFICIAL",
"mav-firmware-version-patch": "9",
"mav-autopilot": "ARDUPILOTMEGA",
"platform": "navio",
"mav-firmware-version": "3.6.9",
"git-sha": "632be63f053d45ab584190586d4a028abca9a2e4",
"mav-firmware-version-major": "3",
"latest": 0
},
```

Contributor guide

Open the contributing guide

Research direction

No source file, test, or entry point is named. Locate the generator for manifest.json, then compare its heli firmware output with the two examples in the issue. Done means generated heli entries use the expected mav-type and platform values and QGC can load them.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
release
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.