Attempting to change the USB Phy address via the DAD field within the DCFG register.
I'm working on emulating multiple USB devices using an STM32F4xx microcontroller. My goal is to dynamically change the USB controller's address at each SOF to cover the addresses of all my devices. However, I've encountered an issue: when I read the address from the hpcd_OTG structure, from hUsbDeviceFS and the DAD field, it differs from the address shown in Wireshark. Additionally, when I attempt to change the address, I don't receive any requests. The only way I can receive USB packets intended for that address is by resetting the address to 0. Any insights on why this might be happening?
I am using "(void)USBD_LL_SetUSBAddress(pdev, dev_addr);" to set the address in the DCFG register and DAD fields.
I have seen the Wrong software-read OTG_FS_DCFG register values erratum but the real problem is that only address 0 work.
