AnsweredAssumed Answered

USB OTG data packet missing data

Question asked by justin ding on Apr 20, 2019
Latest reply on Apr 30, 2019 by igorpadykov

Hi ,

 

I am experiencing a USB OTG data transfer error during the development board using imx6UL.

The USB device is connected to the OTG1 port. The device tree is configured by default.

&usbotg1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_usbotg1>;
dr_mode = "otg";
/* otg-rev=<0x0200>;*/
hnp-disable;
srp-disable;
adp-disable;
status = "okay";
};

We have problems getting large data over 176 bytes through bulk transfer. If the packet exceeds 200 bytes, we can only get the correct data within 176 bytes, after which all data is set to zero.

 

And we tried different hardware platforms, it seems that low-performance MCUs like imx6UL have problems, but high-performance MCUs like A9 cores, the problem does not exist.

 

Please provide some ideas to explore the issue. Thanks!

 

Error packet like below : 

11:26:53.710 [main] INFO Response - responseSize = 576, newSize = 576

11:26:53.802 [main] WARN ReadRadioCommand - Parsed response: RadioResponse:(frame 590 bytes){04,SN664436,Checksum BAD,EOD=false,576 bytes:0A 11 34 C6 4E 0A 11 14 C6 4E 0B 11 51 E7 50 08 11 14 C6 4E 0A 11 34 C7 4E 0A 11 14 C7 4E 0B 00 00 01 11 15 E6 4A 10 11 51 E7 50 08 11 15 CD 4E 0A 11 51 E7 50 08 11 35 CD 4E 0C 05 41 40 00 0C 11 51 E7 50 08 05 24 64 15 0C 05 04 64 15 0C 05 04 64 15 0B 00 00 01 05 04 64 15 10 05 41 40 00 08 05 28 62 15 0C 11 01 0A 8B 0C 11 21 16 8E 0B 11 21 16 8E 0D 00 04 01 04 02 04 02 04 02 04 02 04 02 04 68 11 01 38 8E 0E 02 04 02 04 02 04 02 04 02 04 02 04 02 04 02 04 02 04 02 04 67 11 01 2E 8F 0E 02 04 02 04 02 04 02 04 67 11 01 08 90 0E 02 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00}

 

 

The USB device using USB_simple_serial driver, the device is recognized as ttyUSB0 in system. 

Dmesg output like this : 

usbcore: registered new interface driver usb_ehset_test

2184800.usbmisc supply vbus-wakeup not found, using dummy regulator

2184000.usb supply vbus not found, using dummy regulator

ci_hdrc ci_hdrc.0: EHCI Host Controller

ci_hdrc ci_hdrc.0: new USB bus registered, assigned bus number 1

ci_hdrc ci_hdrc.0: USB 2.0 started, EHCI 1.00

hub 1-0:1.0: USB hub found

hub 1-0:1.0: 1 port detected

2184200.usb supply vbus not found, using dummy regulator

ci_hdrc ci_hdrc.1: EHCI Host Controller

ci_hdrc ci_hdrc.1: new USB bus registered, assigned bus number 2

ci_hdrc ci_hdrc.1: USB 2.0 started, EHCI 1.00

hub 2-0:1.0: USB hub found

hub 2-0:1.0: 1 port detected

Outcomes