Based on the value of INPF1:0 bits of EPxISOINPKTS the PID of the data packet is generated. USB protocol uses the data PID of the first packet to find the number of packets the device would be able to send in the microframe. If the AADJ bit of EPxISOINPKTS is not set then the data packets are sent with fixed data PIDs based on the number of packets per microframe configuration. So if two or more packets of size lesser than the wMaxpacketsize (maximum packet size) of the endpoint is sent in the microframe then the PID will inform the host there is more data and the length of the packet will indicate end of transaction. This contradiction triggers USBD_STATUS_XACT_ERROR. Setting AADJ bit automatically manages the data PID sequencing using the packet length of the packets committed in the IN FIFO.