TC12.6 - Read CAN FD messages from the receive queue and check for amount and order:
1Mbps (arbitration) and 8Mbps (data phase)
131072 CAN FD messages of size 64 bytes sent back to back
Assumption:
It seems that the CAN FD capable PCAN USB devices send greater URBs than they report as endpoint packet size (512 byte. for pipe 3: input pipe for received CAN messages). The PCBUSB library provides a double buffer with size of 512 bytes (each). One buffer can hold up to 4 CAN FD message entries of 96 bytes but occasionally there is an incomplete 5th one in the packet. An incomplete entry could not be decoded, so this message get lost.
Rootcause: With bulk transfers there can be more than one packet in an URB!
PCAN-USB (not CAN FD capable): Default packet size is 64 bytes, but up to 512 bytes are possible within one bulk transfer (needed packet by packet for decoding).
PCAN-USB FD and PCAN-USB Pro FD:Default packet size is 512 bytes, but up to 1024 bytes are possible within one bulk transfer (needed in one piece for decoding).
Testcase TC12.6 failed: expected != received
TC12.6 - Read CAN FD messages from the receive queue and check for amount and order:
Assumption: It seems that the CAN FD capable PCAN USB devices send greater URBs than they report as endpoint packet size (512 byte. for pipe 3: input pipe for received CAN messages). The PCBUSB library provides a double buffer with size of 512 bytes (each). One buffer can hold up to 4 CAN FD message entries of 96 bytes but occasionally there is an incomplete 5th one in the packet. An incomplete entry could not be decoded, so this message get lost.