Is it possible to configure the FRDM-K66F to operate in Full-speed rather than High-speed USB?

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

Is it possible to configure the FRDM-K66F to operate in Full-speed rather than High-speed USB?

Jump to solution
2,033 Views
donturner
Contributor III

I'm developing a USB device which needs only to run at full speed (12MHz), not high speed (480MHz). I'm using the FRDM-K66F board for development. How can I configure the board's physical USB port to run at full speed? 

I understand that there are 2 USB OTG modules on the board (one supporting LS/FS and the other supporting LS/FS/HS), however, I'm confused about how to specify the former for use with the USB-PHY module. 

Any help greatly appreciated. 

Many thanks, 

Don

1 Solution
1,624 Views
mjbcswitzerland
Specialist V

Don

The FRDM-K66F wants to show off the HS USB (with integrated PHY) and so doesn't connect the FS OTG one:
http://www.utasker.com/kinetis/FRDM-K66F.html

The Teensy 3.6 does it the other way round:
http://www.utasker.com/kinetis/TEENSY_3.6.html / https://www.pjrc.com/teensy/schematic.html

Both boards are supported in the free Open Source uTasker project: http://www.utasker.com/kinetis.html
Just select USB_HS_INTERFACE to use the HS one or remove the define to use the full speed one.
Both HS and FS USB are simulated in Visual Studio for accurate testing and verification.

Regards

Mark

View solution in original post

6 Replies
1,624 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi Don,

Have you download SDK for K66 from NXP's website? If not, please visit https://mcuxpresso.nxp.com/en/welcome.  There is mass of USB examples for K66 in the SDK.

Please look into \SDK_2.2_FRDM-K66F\boards\frdmk66f\usb_examples.

Speed selection is auto-detected at connect time using enumeration procedures in the USB network. Don't worry about how to select high speed and full speed.

Regards

0 Kudos
Reply
1,624 Views
donturner
Contributor III

Looking at the schematic here: http://www.nxp.com/downloads/en/schematics/FRDM-K66F-SCH.pdf 

I can now see that the USB0_DP and USB0_DM lines are not connected to anything (and presumably not exposed on the FRDM-K66F board) so one must use the high speed controller on USB1. Is that correct? 

0 Kudos
Reply
1,625 Views
mjbcswitzerland
Specialist V

Don

The FRDM-K66F wants to show off the HS USB (with integrated PHY) and so doesn't connect the FS OTG one:
http://www.utasker.com/kinetis/FRDM-K66F.html

The Teensy 3.6 does it the other way round:
http://www.utasker.com/kinetis/TEENSY_3.6.html / https://www.pjrc.com/teensy/schematic.html

Both boards are supported in the free Open Source uTasker project: http://www.utasker.com/kinetis.html
Just select USB_HS_INTERFACE to use the HS one or remove the define to use the full speed one.
Both HS and FS USB are simulated in Visual Studio for accurate testing and verification.

Regards

Mark

1,624 Views
donturner
Contributor III

Thank you very much Mark, I finally understand what's going on :smileyhappy: 

0 Kudos
Reply
1,624 Views
jingpan
NXP TechSupport
NXP TechSupport

Hi Don,

There is only software defference between FULL Speed and HIGH Speed.

K66 is a new product of NXP. Unlike NXP's old product or some competitor's product, it has integrated HIGH speed PHY in chip. So, USB1 is fully compatible with high/full/low speed.

You can see all the example in Kinetis SDK.

Regards

1,624 Views
donturner
Contributor III

Thanks Jing Pan. Is there an example which shows how to configure a full speed USB device using the FRDM-K66F? I can only see ones which show high speed. 

Or if there aren't any, just some guidance on how to configure the clock for either of the USB OTG modules for full speed would be great. Thanks. 

0 Kudos
Reply