Hello,
I've my first custom board with the MIMXRT1062DVJ6B chip and I'm unable to connect to the chip over Serial Downloader and MCUBootUtility.
When "BOOT_MODE_0" is pulled up, my computer recognises there's a connection, but with the error "Unknown USB Device: Descriptor request failed"
My computer has no issue recognising 1060-EVK and 1010-EVK.
The Power, POR_B design is carried over from the 1060-EVK. The board is using the Flash from 1010-EVK (W25Q64JVSSIQ).
Powering and start up appears fine. There was originally an issue with the power supply to NVCC_SD1 but that has been resolved.
I noted that VDD_USB_CAP = 2.36V, but the 1010-EVK is 2.64V.
I've tried to connect with UART as well but there is no connection. I measure 3.33V on UART_TX and UART_RX although in the design they are both open.
What can be the sources for this issue?
Thanks.
Solved! Go to Solution.
Hello @weidong_sun
Thanks for the help.
I left the pin floating after the information below in the schematic for the EVK:
Here is the new design:
By chance I looked at the datasheet for the common choke (L5 --> L6) and noted that my footprint was wrong and USB_OTG_D- was orientated incorrect. Pins 3 and 4 were swapped. I removed the Filter from my board and I can now connect and flash the board over UART using Serial Downloader.
Flashing a program to output "Hello World" over UART1 and to toggle a LED both work, but it hangs up some times and it appears to be related to the clock:
If I use the SDK-Example "Hello World" it generates a hardfault,
But if I step past the fault then it hangs up just after "armPllConfig_BOARD_BootClockRUN:"
Does this mean I have an issue with my 24Mhz XTAL?
I've completed measurements on the XTALO. Is this acceptable for the device?
Regards,
Sam
Hello @weidong_sun
Thanks for the help.
I left the pin floating after the information below in the schematic for the EVK:
Here is the new design:
By chance I looked at the datasheet for the common choke (L5 --> L6) and noted that my footprint was wrong and USB_OTG_D- was orientated incorrect. Pins 3 and 4 were swapped. I removed the Filter from my board and I can now connect and flash the board over UART using Serial Downloader.
Flashing a program to output "Hello World" over UART1 and to toggle a LED both work, but it hangs up some times and it appears to be related to the clock:
If I use the SDK-Example "Hello World" it generates a hardfault,
But if I step past the fault then it hangs up just after "armPllConfig_BOARD_BootClockRUN:"
Does this mean I have an issue with my 24Mhz XTAL?
I've completed measurements on the XTALO. Is this acceptable for the device?
Regards,
Sam
Dear @Sam_ECU ,
Your 24M waveform is no problem, it is good.
For SDK running issue, please re-create another post or case!
We should only discuss one question in a post or case, which can avoid confusion.
Thanks!
Regards,
weidong
Dear @Sam_ECU ,
Good news! Your USB has been working normally. Now for your UART circuit.
By the way, 24M waveform you showed above is no problem, we can say it is good.
I also checked corresponding IO level of the UART in your design, it is OK.
But I found you want to share UART1 between Bluetooth & Debugging, the idea is no problem, but circuit should be tuned like above. Check it, please!
Thanks!
Regards,
weidong
Hello @weidong_sun
How should the schematic look if I'd like to use a USB-C Socket with the iMXRT1062 chip?
Dear @Sam_ECU ,
i.MXRT1062 USB is USB2.0, it's Host/Device mode is determined by OTG_ID level.
when system starts, USB default mode is device role.
For your question:
- No problem to use USB-TYPE C connector.
- CC1/CC2 pin can be floated. so R39 and R66 can be NC.
Thanks!
Regards,
weidong
Hello @weidong_sun
"i.MXRT1062 USB is USB2.0, it's Host/Device mode is determined by OTG_ID level.
when system starts, USB default mode is device role."
So that means, I can leave the GPIO_AD_B0_01 pin floating and the chip will always default to the device role?
Dear @Sam_ECU ,
If you want USB OTG to be device only, no problem to leave GPIO_AD_B0_01 floating. Generally speaking, when designing USB OTG circuit, we don't omit ID pin on MicroUSB connector.
-- Host mode: ID pin should be pulled down to LOW by a resistor, like 2.2k / 3.3k etc.
-- device mode: ID pin should be pulled up to HIGH by a resistor , like 4.7K / 10k, etc.
-- Dual role mode:
(1) GPIO_AD_B0_01 should be multiplexed as USB OTG1 ID signal, then pull it up to HIGH by a resistor ( or internal pulled up - inside MCU)
(2) Wiring the USB OTG1 ID signal to ID pin of MicroUSB connector.
So default status of USB OTG is device mode.
(3) How to switch device mode to Host mode?
Connect a MicrosUSB to USB TYPE-AF cable to MicroUSB connector on board, ID pin will be pulled down to LOW, USB controller gets the trigger , then switch device to Host mode.
So if floating ID pin, you USB OTG can only work at device mode.
Do I describe it clearly?
Thanks!
Regards,
weidong
Hello @weidong_sun
Perfectly, thanks.
How do you recommend I go about trying to solve the issue below: