Quote:
Originally Posted by Dave Scheck
So, to dig deeper, lets look at the internals of sendIOPortData(). The first thing it does is get a reference to the low priority dashboard packer. The packer contains the data that will be pushed onto the bit stream. My understanding that the low and high priority packers don't actually have different priorities in the data stream itself. On the receiver side, if the buffer is too large, the low priority packet is truncated.
|
This is correct. The UDP datagrams sent from the robot are a fixed size (1018 bytes IIRC). After the header, high-priority data is packed, followed by error strings, then by low-priority data. The low-priority data is truncated to the packet size minus eight bytes. The last eight bytes contain four bytes of padding (bytes with a value of 0) and a CRC 32-bit checksum (for error detection).