Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create development.xml and seed with MISSION_CHECKSUM #1611

Merged
merged 1 commit into from
Mar 18, 2021
Merged

Conversation

hamishwillee
Copy link
Collaborator

Fixes #1172
Replaces #1172

Under the new governance model xml definitions don't get accepted into standard set until they have been prototyped on one flight stack and at least one other key stakeholder stacks have agreed to implement them. To ease development this PR creates development.xml (includes standard.xml) and imports it into all.xml. This is where proposals to the standard set should be added before being implemented and proposed.

In addition, this adds the MISSION_CHECKSUM message which was agreed in #1172.

As discussed in devcall - @auturgy @LorenzMeier @julianoes
FYI @IamPete1 @holmnikolaj @amilcarlucas

@hamishwillee hamishwillee merged commit 0ead9dc into master Mar 18, 2021
@hamishwillee hamishwillee deleted the devxml branch March 18, 2021 05:33
@hamishwillee
Copy link
Collaborator Author

Self merging, as agreed by the dev call.

@peterbarker
Copy link
Contributor

I don't suppose there's a sample QGC WPL file around with an expected checksum?

@hamishwillee
Copy link
Collaborator Author

@peterbarker Not as far as I know - is the description not sufficient/ambiguous - or do you just want to check this?

  • The checksum uses the same CRC32 algorithm as MAVLink FTP (https://mavlink.io/en/services/ftp.html#crc32-implementation).
  • It is run over each item in the plan in seq order (excluding the home location if present in the plan)
  • It covers the following fields (in order): frame, command, autocontinue, param1, param2, param3, param4, param5, param6, param7.

@holmnikolaj @DonLakeFlyer have you looked at implementing this for PX4 yet?

@peterbarker
Copy link
Contributor

peterbarker commented May 5, 2021 via email

@hamishwillee
Copy link
Collaborator Author

Description seemed clear enough to me, but really wanted a separate check that an implementation was correct according to spec.

Fair enough. I would want that too. I'm hoping @holmnikolaj say he's working on the QGC implementation too - that would give us a baseline that both ArduPilot and PX4 could be compliant with in this respect.

@holmnikolaj
Copy link

Fair enough. I would want that too. I'm hoping @holmnikolaj say he's working on the QGC implementation too - that would give us a baseline that both ArduPilot and PX4 could be compliant with in this respect.

I don't. At Sky-Watch we use our own drone manager: https://sky-watch.com/products-services/software/

@peterbarker
Copy link
Contributor

peterbarker commented May 5, 2021 via email

@hamishwillee
Copy link
Collaborator Author

Sweet. So if I were to get it wrong that would still be canonically correct ;-)

Sadly, yes, provided you use the documented algorithm and crc :-(. If discover any ambiguity as you implement let me know and I'll update the docs to match what you did.

Are you planning on doing the implementation in QGC and/or Mission Planner, and do you have an ETA? If you're targeting QGC then I can try get a parallel PX4-side done at the same time.

@peterbarker
Copy link
Contributor

@hamishwillee I have no intention of making patches to either of MissionPlanner or QGC at this time.

I do intend to do a MAVProxy implementation - non-trivial as I couldn't find the equivalent CRC algorithm in the pymavlink Python bindings so far.

My PR against ArduPilot (https://github.com/ArduPilot/ardupilot/pull/17370/files) contains checksums for 4 different missions, the QGC WP files also being present in the PR.

@peterbarker
Copy link
Contributor

Oh, I should note that in that PR I copied the message definition over to common.xml - that was pure laziness on my part as I didn't want to work out how to include the development messages into our process at this point.

peterbarker pushed a commit to peterbarker/mavlink that referenced this pull request Jan 13, 2022
tridge pushed a commit to ArduPilot/mavlink that referenced this pull request Jan 17, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants