cancel
Showing results for 
Search instead for 
Did you mean: 

Nucleo-f439zi, Invalid USB Packet ID (0xda)

Stratosstratos
Associate III

Hello,

I am writing USB OTG from scratch for a Nucleo-f439zi.


Till now I have managed to make it reply to some Setup requests, to be more specific it replies to Device Descriptor and set Address , ( I am currently figuring out Configuration request which is the next usually).


I got some incosistencies where sometimes it will appear in task manager as Configuration Descriptor Request failed or Invalid Device Descriptor but other times it will appear as Device Descriptor Request failed and need some restarts to appear the Config Req Failed error again.


I got my hands on a USB sniffer and i am noticing some weird traffic.

 

No.     Time   Source    Destination     Protocol Length  Info
58	2.495501983	host	broadcast	USBLL	3	SOF
59	2.496501983	host	broadcast	USBLL	3	SOF
60	2.497501983	host	broadcast	USBLL	3	SOF
61	2.498454316	host	0.0	USBLL	3	SETUP
62	2.498457566	host	0.0.0	USB	11	GET DESCRIPTOR Request DEVICE
63	2.498466233	0.0	host	USBLL	1	ACK
64	2.498501983	host	broadcast	USBLL	3	SOF
65	2.498505233	host	0.0	USBLL	3	IN
66	2.498508483			USBLL	1	Invalid Packet ID (0xda)
67	2.498535900	host	0.0	USBLL	3	IN
68	2.498539233			USBLL	1	Invalid Packet ID (0xda)
69	2.498568233	host	0.0	USBLL	3	IN
70	2.498571566			USBLL	1	Invalid Packet ID (0xda)
71	2.498594483	host	0.0	USBLL	3	IN
72	2.498597733			USBLL	1	Invalid Packet ID (0xba)
73	2.498637483	host	0.0	USBLL	3	IN
74	2.498640816			USBLL	1	Invalid Packet ID (0xda)
75	2.498680483	host	0.0	USBLL	3	IN
76	2.498683816			USBLL	1	Invalid Packet ID (0xda)
77	2.498723483	host	0.0	USBLL	3	IN
78	2.498726733			USBLL	1	Invalid Packet ID (0xba)
79	2.498752650	host	0.0	USBLL	3	IN

 

What could be causing invalid packet ID error ?
I tried the HID example that ST provides and that error didn't appear once.

1 REPLY 1
FBL
ST Employee

Hi @Stratosstratos 
If still having the same issue, here some suggestions:

  1. Check the endpoint configuration in your code. Ensure that all EPs are correctly set up for both IN and OUT directions.
  2. Compare the handling of USB descriptors (Device Descriptor, Configuration Descriptor, etc.) in your code with the HID example.
  3. Ensure that the descriptors are correctly formatted and that your code responds appropriately to descriptor requests.

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.