FRDM-K66F

This Freescale Freedom board is based on the MK66FN2M0VMD18 which is a 180MHz device from the performance and integration K66 family with Cortex-M4 core, FPU and HS-USB. This K66 device has 2M Flash and 256k SRAM and is in a 144 pin MAPBGA package, whereby the K66 is also available in 144 pin LQFP package and as 1M program-flash part. There is a 12MHz crystal on the board for clocking the part (suitable for PLL if the HS USB). The K66 supports crystal-less FS USB device based on its internal 48MHz IRC48M oscillator and USB clock recovery.

Full details and documentation for this board can be obtained from the Freescale web site: FRDM-K66F

To configure the µTasker project for this board simply enable the define FRDM_K66F in the project's config.h file. The compiler needs to be set to build for Cortex M4 (and not Cortex M0+) and the linker script K_2M_256.ld should be selected [K_2M_256_BM.ld for downloadable version] {the linker script extension may vary for different compilers, whereby *.ld is valid for GCC}

FRDM-K66F Binaries

Here are some binary files that can be loaded to the board. These were built using the µTasker applications (serial loader and V1.4 application) and can be simply generated using the supported compilers/IDEs [these were built using GCC], built using different configuration options or modified to suit specific requirements or hardware derived from this board :

  • uTaskerSerialLoader_SREC_iHEX_SDCard.bin UART (SREC/iHEX) serial plus SD-Card Loader [19.0k] allowing applications to be loaded at link address 0x8000 (using UART at 115'200 Baud or as a file on the SD card). When operating, the green LED blinks at 5Hz. To force the loader, reset the board with push button SW2 held down or insert an SD-card. To disable the watchdog, reset the board with push button SW3 held down.
    This can be loaded using the FRDM-K66F's USB-MSD (OpenSDA) boot loader. Note that the loader limits application sizes to 128k - it can be built without limits using the µTasker project.
    The serial interface used is connected to the OpenSDA's USB virtual COM port.
    When forcing the boot loader, hold the switch for about 5s; this ensures that the application is not started once the SD card check has completed.
  • uTaskerV1.4.12_BM_8000_SDCard.srec FRDM-K66F application with command-line menu on the UART 0 (via the OpenSDA's USB virtual COM port connection at 115'200 Baud) with various menu items. The SD-card is supported and works with the DOS-like command line interface in the disk-interface sub-menu.
    The processor runs at 120MHz. [135k SREC content].
    Linked to 0x8000, this SREC image can be loaded via the UART serial loader - see the Serial Loader User's Guide for more details.
    When the application is running, the green LED blinks at 2.5Hz.
  • uTaskerV1.4.12_BM_8000_SDCard.hex The same FRDM-K66F application in iHex format that can be loaded via the UART serial loader - see the Serial Loader User's Guide for more details. [132k iHex content].
  • software_V1.4.12_SDCard.bin The same FRDM-K66F application that can be copied to the SD card and will be loaded to the processor when the board starts (rename the file to "software.bin" for it to be recognised - see the Serial Loader User's Guide for more details). [47.2k]
  • uTaskerV1.4.12_FRDM-K66F.bin The same FRDM-K66F application as stand-alone software that can be loaded using the FRDM-K66F's USB-MSD (OpenSDA) boot loader [48.2k].

Web Browser Ethernet and USB-MSD High Speed Device Loader

  • uTaskerSerialBoot_Etherent_USB-MSD.bin Ethernet and HS USB-MSD device loader [31.2k] allowing applications to be loaded at link address 0x8080 (using a web browser at the local IP address 192.168.0.125) or via drag and drop onto the hard drive "UPLOAD_DISK" that appears when connected via USB. When operating, the green LED blinks at 5Hz. To force the loader, reset the board with push button SW2 held down. To disable the watchdog, reset the board with push button SW3 held down.
    This can be loaded using the FRDM-K66F's USB-MSD (OpenSDA) boot loader. Note that the loader limits application sizes to 128k - it can be built without limits using the µTasker project.
  • uTaskerV1.4.12_FRDM-K66F_Ethernet_SDCard_BM_8080 FRDM-K66F application with command-line menu on the UART 0 (via the OpenSDA's USB virtual COM port connection at 115'200 Baud) with various menu items.
    Ethernet is enabled with two IP addresses by default (192.168.0.5 and 192.168.1.4), along with various service (HTTP, FTP, SMTP, FTP-client).
    The SD-card is supported and works with FTP and HTTP or via the DOS-like command line interface in the disk-interface sub-menu.
    The processor runs at 120MHz. [100k].
    Linked to 0x8080, this binary image can be loaded via the Ethernet Web Browser loader or the USB-MSD loader - see the Serial Loader User's Guide for more details.
    When the application is running, the green LED blinks at 2.5Hz.
  • uTaskerV1.4.12_FRDM-K66F_Ethernet_SDCard.bin The same FRDM-K66F application as stand-alone software that can be loaded using the FRDM-K66F's USB-MSD (OpenSDA) boot loader [99.6k].

FRDM-K66F MQTT Client

The following µTasker application allows experimenting with MQTT. It is an MQTT client with the ability to connect to an MQTT broker (eg. test.mosquitto.org in the Internet) to subscribe to topics, publish messages and display received topic publications.
See the video showing how to use its command line interface (on OpenSDA VCOM port at 115'200 Baud, on USB-CDC or Telnet): The MQTT User's Manual can be found at uTasker_MQTT.pdf.

FRDM-K66F RNDIS Host

The following µTasker application allows connecting the board to an Android or iPhone (and some G4 modems) via its HS USB interface. For this to be used the jumper J21 may need to be set so that the board supplies USB power to the device.

When the phone is connected it will tend to appear as a USB-MSD device (which the application also supports and can browse files on the phone via the utFAT menu on the command line interface) and the phone can then be set to its USB Tethered mode to share an Internet connection.

When connected, the phone will supply the board with its IP settings (via DHCP) and the board can then communicate with the phone's gateway IP address or in the Internet when the phonen has an active data or WiFi connection that allows this (the phone acts as a gateway).

When the FRDM-K66F Ethernet cable is connected devices/PCs on the Ethernet network can communicate with the FRDM-K66F's TCP/IP stack or share the phone's gateway in order to access the Internet - all Ethernet traffic not destined to be consumed uniquely by the TCP/IP stack is bridged to the RNDIS interface.

Watch the command line interface on the board's UART (VCOM debug interface) to see the enumeration and RNDIS initialisation details and then to monitor RNDIS traffic. In the USB menu these messages can be disabled using the command "rndis 0" to disable debug output - "rndis 1" enables the standard RNDIS debug output level and "rndis 2" a higher level.

In the LAN menu the IP address allocated to the board can be seen with "show_config_o" command and devices can be pinged using the "ping" comand.

Devices on the Ethernet network can also browse to the board's web and FTP servers or connect to it's command line interface via Telnet


Return to the Kinetis landing page


µTasker Kinetis FRDM-K66F support. Copyright (c) 2004..2020 M.J.Butcher Consulting