IMX6UL USB OTG HID enumeration failure

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IMX6UL USB OTG HID enumeration failure

Jump to solution
2,833 Views
alubeiro
Contributor IV

Hi all,

I am working with an IMX6UL in a custom design and the issue i am facing to is that the PC detects but does not recognize the board as a HID device. (see "Fallo USB.jpg")

After having read some info about the USB requirements (USB High Speed Receiver Sensitivity) i see that the squelch voltage is necessary to be above 100mV.

Please find attached a couple of graphics of the MCIMX6UL-EVK and also of my board so you can make a comparative.124059.jpg (our custom board) and 124826.jpg (MCIMX6UL-EVK)

Here you can see that in our design, the squelch voltage is 90mV and in MCIMX6UL-EVK is over 120mV

Our VDD_USB_CAP voltage which comes from LDO_USB is 2.40V and in the MCIMX6UL-EVK it is 2.7V. The reference manual says that this voltage should be 3V. Don't know if our voltage is insufficient and therefore the cause of our problem.

Please find attached also our scheme "Esquema USB.jpg" the things inside red circles are DNP

We have also made the test of connecting the MCIMX6UL-EVK to the PC through our PCB and it works fine (see picture 100429.jpg). This was an attempt of seeing if our 120 ohms of diff impedance or our layout was influencing.

Any help will be apreciated.

Thanks and best regards

Labels (1)
0 Kudos
1 Solution
1,785 Views
alubeiro
Contributor IV

Hi all,

Finally we get it, we have removed a 100nf capacitor (C155) which was in the POR_B line.

I don't belive it is the only thing wrong because we have another board without this capacitor and it isn't detected as an HID unit.

The POR_B pin has an internal 100K pull-up which made a rising edge more light (in case of mounting C155) due to RC = 10 ms, but in anyways i don't undertand why may be this cause of the problem, unless there is a minimun rising edge time, but i don't see anything in datasheet refering to this.

pastedImage_0.png

Thanks and best regards

View solution in original post

0 Kudos
9 Replies
1,785 Views
igorpadykov
NXP Employee
NXP Employee

Hi Alberto

LDO_USB voltage can be elevated using PMU_REG_3P0 [OUTPUT_TRG],

for signal shape one can check sect.4.3.3.2 Transmitter settings—USBPHY_TX register

AN4589 Configuring USB on i.MX 6 Series Processors

http://cache.nxp.com/files/32bit/doc/app_note/AN4589.pdf

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos
1,785 Views
alubeiro
Contributor IV

Hi Igor,

Thanks for your response but as the chip can't be programed, because the PC does not detect it as a HID device, how am i going to access to its registers?

Thanks again and best regards

0 Kudos
1,785 Views
igorpadykov
NXP Employee
NXP Employee

Hi Alberto

using jtag or modifying uboot/linux sources

Best regards

igor

0 Kudos
1,785 Views
alubeiro
Contributor IV

Hi Igor,

Yeah i know with the JTAG, but how? is there any document or guide?

Please explain it a litle more.

I really apreciate your help.

Thanks and best regards

0 Kudos
1,785 Views
alubeiro
Contributor IV

Hi Igor,

Finally we got it.

We are using "J-link commander" tool from Segger to do so.

Thanks and best regards.

0 Kudos
1,786 Views
alubeiro
Contributor IV

Hi all,

Finally we get it, we have removed a 100nf capacitor (C155) which was in the POR_B line.

I don't belive it is the only thing wrong because we have another board without this capacitor and it isn't detected as an HID unit.

The POR_B pin has an internal 100K pull-up which made a rising edge more light (in case of mounting C155) due to RC = 10 ms, but in anyways i don't undertand why may be this cause of the problem, unless there is a minimun rising edge time, but i don't see anything in datasheet refering to this.

pastedImage_0.png

Thanks and best regards

0 Kudos
1,785 Views
LuisCasado
NXP Employee
NXP Employee

Hi Alberto,

Have you checked this point from HW design guide?

image002.jpg

Luis

0 Kudos
1,785 Views
alubeiro
Contributor IV

Hi Luis,

Yes, we have checked it out and here you can see the power on secuence in both cases, C155 placed and not placed.

The secuence is right. The only diference is the time of the last rising edge.

I didn't save the picture but i did another one, same as the "CPU2016 HID reconocido C155 sin montar" but with C155 placed and i overlayed it in order to see the diferences, and the only diference was the rising up time. This is the reason i don't understand why it doesn't work unless there is a rising up time requirement. ¿is there?

Thanks and best regards.

pastedImage_0.png pastedImage_1.png

0 Kudos
1,785 Views
LuisCasado
NXP Employee
NXP Employee

Hi Alberto,

I am checking if there is any restriction in the POR_B raise time.

Luis

0 Kudos