Files
PX4 Build Bot aa19069c30 New Crowdin updates (#677)
* New translations index.md (Korean)

* New translations payload.md (Korean)

* New translations traffic_management.md (Korean)

* New translations define_xml_element.md (Korean)

* New translations mavlink_version.md (Korean)

* New translations index.md (Korean)

* New translations faq.md (Korean)

* New translations contributing.md (Korean)

* New translations generate_libraries.md (Korean)

* New translations installation.md (Korean)

* New translations mavlink_2.md (Korean)

* New translations message_signing.md (Korean)

* New translations packet_loss.md (Korean)

* New translations serialization.md (Korean)

* New translations wireshark.md (Korean)

* New translations xml_schema.md (Korean)

* New translations crc.md (Korean)

* New translations index.md (Korean)

* New translations howto_requestmessages.md (Korean)

* New translations mission.md (Korean)

* New translations offboard_control.md (Korean)

* New translations parameter.md (Korean)

* New translations timesync.md (Korean)

* New translations arm_authorization.md (Korean)

* New translations battery.md (Korean)

* New translations camera_v1.md (Korean)

* New translations command.md (Korean)

* New translations events.md (Korean)

* New translations gimbal_v2.md (Korean)

* New translations component_metadata.md (Korean)

* New translations index.md (Chinese Simplified)

* New translations payload.md (Chinese Simplified)

* New translations traffic_management.md (Chinese Simplified)

* New translations define_xml_element.md (Chinese Simplified)

* New translations mavlink_version.md (Chinese Simplified)

* New translations index.md (Chinese Simplified)

* New translations faq.md (Chinese Simplified)

* New translations contributing.md (Chinese Simplified)

* New translations generate_libraries.md (Chinese Simplified)

* New translations installation.md (Chinese Simplified)

* New translations mavlink_2.md (Chinese Simplified)

* New translations message_signing.md (Chinese Simplified)

* New translations packet_loss.md (Chinese Simplified)

* New translations serialization.md (Chinese Simplified)

* New translations wireshark.md (Chinese Simplified)

* New translations xml_schema.md (Chinese Simplified)

* New translations crc.md (Chinese Simplified)

* New translations index.md (Chinese Simplified)

* New translations howto_requestmessages.md (Chinese Simplified)

* New translations mission.md (Chinese Simplified)

* New translations offboard_control.md (Chinese Simplified)

* New translations parameter.md (Chinese Simplified)

* New translations timesync.md (Chinese Simplified)

* New translations arm_authorization.md (Chinese Simplified)

* New translations battery.md (Chinese Simplified)

* New translations camera_v1.md (Chinese Simplified)

* New translations command.md (Chinese Simplified)

* New translations events.md (Chinese Simplified)

* New translations gimbal_v2.md (Chinese Simplified)

* New translations component_metadata.md (Chinese Simplified)

* New translations common.md (Korean)

* New translations common.md (Chinese Simplified)
2026-03-10 12:15:23 +11:00

1.4 KiB

MAVLink CRC

MAVLink services that need to use a Cyclic Redundancy Check (CRC) should choose the CRC32 algorithm described below.

:::info Using the same CRC implementation for all cases means that only one implementation is required. Do not introduce another unless there is a compelling technical reason. :::

:::info This CRC is used for higher level services (it is not related to the CRC16 used for the checksum in MAVLink serialization). :::

CRC32 Algorithm

The CRC32 algorithm used by MAVLink is similar to (but different from) the ISO 3309 standard based on the polygon 0x04C11DB7. It is commonly referred to as "the CRC32 based on Gary Brown's work". It is commonly referred to as "the CRC32 based on Gary Brown's work".

The difference of MAVLink's implementation versus the standard are:

  • Start at 0 instead of 0xFFFFFFFF.
  • Missing final XOR out operation with 0xFFFFFFFF.

The effects of the initial value and final XOR operation are documented in this brief tutorial on CRC computation of the Linux kernel.

Implementations

This implementation is currently used in: