DESCRIPTION OF ISSUE
OUR HARDWARE
There are some layout differences, but our board is quite similar to the RT1020 dev board (MIMXRT1020-EVK).
MY QUESTION
What is the minimum set of hardware peripherals required to enable the MCU to enumerate as a HID on power up when BOOT_MODE register is set to 01?
Given that we can’t even get this far, our problem appears to be something fundamental (power sequence, clock, etc.).
We have verified that our power sequence conforms to Figure 1 from the Hardware Development Guide:
And I have scoped the 24 MHz clock and compared this measurement to a working board. As far as I can tell there is no issue with the 24 MHz clock.
Can you think of anything else we should be checking?
Thanks in advance,
Mike B.
Solved! Go to Solution.
Looks like the TVS diode array protecting the USB circuit was not routed correctly. The VBUS pin was connected to USB_OTG1_DP but should be connected to USB_OTG1_VBUS. I removed the TVS diodes and now the chip appears to be working as expected.
Looks like the TVS diode array protecting the USB circuit was not routed correctly. The VBUS pin was connected to USB_OTG1_DP but should be connected to USB_OTG1_VBUS. I removed the TVS diodes and now the chip appears to be working as expected.
Hi @Mike_B ,
Please check VDD_SOC_IN first. If it's not correct, you can try to replace the cap on pswitch pin from 0.22uf to 1uf.
Regards,
Jing
Hi @jingpan,
VDD_SOC_IN (same as DCDC_OUT) measures 1.16 VDC. Also, we had already tried changing the cap on pswitch from .22 uF to 4.7 uF with no change in behavior.
Here is a scope trace showing VDD_SNVS_IN, MCU_DCDC_IN, DCDC_OUT, and DCDC_PWITCH:
We also verified that POR_B is not released until about 200 mS after DCDC_OUT is stable:
The power on sequence is fine. Please check other power input pins, like VDD_SOC_IN, VDD_HIGH_IN and USB_OTG1_VBUS.
You said BOOT_MODE register. Do you mean the configure pins?
You can try to use sdphost.exe to connect to the RT1021.
>sdphost.exe -t 50000 -u 0x1FC9,0x0135 -j -- error-status
Is there UART boot port
on your board? To avoid USB hardware problem, you can also try to connect via UART.
>sdphost -t 50000 -p COM4,115200 -j -- error-status
Regards,
Jing
VDD_SOC_IN measures 1.15 VDC.
VDD_HIGH_IN measures 3.27 VDC. Note that VDD_HIGH_IN is tied to VDD_SNVS_IN, VDDA_ADC_3P3, NVCC_GPIO, DCDC_IN, and DCDC_IN_Q.
With USB cable plugged in, USB_OTG1_VBUS measures 5.17 VDC.
Yes, by BOOT_MODE register I mean the state of the BOOT_MODE0 and BOOT_MODE1 inputs. From the i.MX RT1020 reference manual:
Our boot mode pins are wired the same as Figure 4 in the hardware development guide for MIMXRT1020:
Our device does not enumerate as a HID, so I’m not able to connect over USB. However I am able to connect over UART1.
And I’m able to connect by running sdphost.exe:
C:\Flashloader_RT1020_1.0_GA\Tools>sdphost -t 50000 -p COM14,115200 -j -- error-status
{
"command" : "error-status",
"response" : [ 4042322160 ],
"status" : {
"description" : "1450735702 (0x56787856) HAB disabled.",
"value" : 1450735702
}
}