Role for WumpusRover packets. These are based on the ArduPilot protocol packets, as described here:
No attempts have yet been made to test this against an existing ArduPilot implmentation, but it should be close.
Do not create Packets directly. Instead, use
write( $fh )
Writes the packet to the given filehandle.
Recalculates the checksum based on current field values.
Returns the packet fields in a single scalar full of bytes.
Returns the packet field values in the order they appear in
Returns a byte array of all the packet fields in the order they appear in
Creates a unique key for this packet.
Fixed bytes that start every packet
First checksum byte
Second checksum byte
ID for this type of message
Arrayref. A list of field names in the order they appear in the packet.
Hashref. Keys match to an entry in
payload_fields. Values are the length in bytes of that field.