RT1176 Serial Boot from USB-HID does not work

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

RT1176 Serial Boot from USB-HID does not work

ソリューションへジャンプ
2,771件の閲覧回数
mrd
Contributor III

I have a custom board using RT1176. Boot switches are implemented same as on the RT1170-EVK and no fuses are programmed.

With BOOT_MODE[1:0]=01 for "Serial Downloader", serial Boot over LPUART works, but USB-HID does not. The PC does not see any connected USB-HID device. No VID=0x1F9 and PID=0x13D.

The odd thing is that the USB interface (CDC) DOES work okay after internal boot from either QSPI Flash or uSD card.

Do you have any ideas why USB-HID would not work in Serial Boot mode when it works fine after internal boot?

The 24MHZ oscillator looks okay at reset. I've checked that boot mode and configuration GPIO pins are at the correct level. And, as I mentioned, serial boot with LPUART works reliably...so I think this indicates boot mode/configuration GPIO are in the correct state.

I have a RT1170-EVK board and Serial Boot USB-HID works fine on it.

Any ideas about what I should check or what I'm overlooking would be appreciated. Thank you.

0 件の賞賛
返信
1 解決策
2,760件の閲覧回数
mrd
Contributor III

Serial boot from USB_HID doesn't work on the custom board because there are some transitions on GPIO_AD_25 which is LPUART1_RX when UART is used for serial boot. The RT1170 Reference Manual section 10.9 for Serial Boot says "The boot ROM can detect the active peripherals and shut down all inactive peripherals before any communications between the host and the device." GPIO_AD_24 (LPUART1_TX) and GPIO_AD_25 (LPUART1_RX) connect to an external A/D converter on the custom board that causes transitions on these GPIO. The boot ROM apparently deems LPUART1 as the "active peripheral" when it sees the transitions and it disables the USB-HID. The lesson learned is that if want to use USB_HID instead of LPUART for serial boot, make sure LPUART1_RX's GPIO is held static until connect with the boot ROM.

元の投稿で解決策を見る

1 返信
2,761件の閲覧回数
mrd
Contributor III

Serial boot from USB_HID doesn't work on the custom board because there are some transitions on GPIO_AD_25 which is LPUART1_RX when UART is used for serial boot. The RT1170 Reference Manual section 10.9 for Serial Boot says "The boot ROM can detect the active peripherals and shut down all inactive peripherals before any communications between the host and the device." GPIO_AD_24 (LPUART1_TX) and GPIO_AD_25 (LPUART1_RX) connect to an external A/D converter on the custom board that causes transitions on these GPIO. The boot ROM apparently deems LPUART1 as the "active peripheral" when it sees the transitions and it disables the USB-HID. The lesson learned is that if want to use USB_HID instead of LPUART for serial boot, make sure LPUART1_RX's GPIO is held static until connect with the boot ROM.