9 years, 7 months ago.

Ethernet issue on K64F

The thrill is gone, the honeymoon is over...It has been a month now since I received my FRDm-K64F. I had many plans for its use, in particular the Ethernet interface.

the EthernetInterface library was updated just over a week ago now, with support for the platform now added. Despite others reporting having success with this library/platform, I have experienced nothing short of disappointment.

Between a co-worker and myself we have a total of 5 FRDM-K64F boards, all of which were received last month during the Freescale Technology Forum.

The 2 units I have are labeled on the underside as,

700-28163 Rev A SCH-28163 Rev C

I am left to conclude that this version of the board is flawed and that those experiencing success with Ethernet have a more current revision of hardware.

- Cameron

Just a comment from me, that I have couple of various k64f but haven't tested ethernet yet with them. I would like to fix i2c first, then move over to ethernet to see if it really fails.

I don't believe that the version of board is flawed. There's always errata for the board, I don't recall anything related to phy peripheral.

posted by Martin Kojtal 06 May 2014

Hello Martin,

Thank you for responding to my post. I have had very limited response from the community on this subject.

What sort of issues are you seeing with I2C? I have had success communicating with a number of I2C devices. The one issue I have seen, however, is that I had to set the frequency to 400kHz. Working with the KL05Z and KL25Z, in the past I was able to leave the frequency to default. Have not taken the time to examine the I2C code, yet.

- Cameron

posted by Cameron Haegle 06 May 2014

I2c is fixed, will be updated in the next mbed lib revision. You should be able to use any i2c freq ;)

Ethernet is still not complete for K64F, will check if it's stated there. We (mbbed & community) should finalize it.

posted by Martin Kojtal 07 May 2014

Hi Cameron,

I too am feeling more than a little frustrated with the MBED / FRDM-K64F environment. I purchased two of them for educating students over the summer vacation on the principles of embedded software development, RTOS, networking, and source control.

At this point the failure of even basic network applications is casting doubt over my intended curriculum.

- Malcolm

posted by Malcolm Nixon 07 May 2014


Thanks for both confirming that the Ethernet support is unfinished, as well as fixing the I2C driver,

Have the I2C updates been released to mbed-src? I tried building my project using this which generated a number of warnings and the below 2 errors.

Error: Undefined symbol enet_mac_rx_isr (referred from fsl_enet_irq.c.K64F.o). Error: Undefined symbol enet_mac_tx_isr (referred from fsl_enet_irq.c.K64F.o).

Thanks, Cameron

posted by Cameron Haegle 07 May 2014

I have updated mbed-src to v182. Now eth.init() displays "sys_mutex_lock error" on USB Serial port. It is still hung however.


posted by Kevin Braun 08 May 2014

@kevin: What example are you running? I just imported TCP hello world, updated all libraries to the latest revision, no error. The app is running, from time to time it gets stucked though. Hope it will be fixed soon ;)

posted by Martin Kojtal 08 May 2014

3 Answers

9 years, 6 months ago.


we just updated the Ethernet library which should include a fix for K64F.


Accepted Answer

Hi Martin,

Pulled down this update a short bit ago. I immediate found that I am now able to obtain DHCP on my company network, which had failed earlier.

This evening I will have to try connecting to my laptop using a crossover cable; this had failed previously

Thanks again, Cameron

posted by Cameron Haegle 14 May 2014
9 years, 6 months ago.

You might also want to look at FNET as well for Ethernet/IPV4/IPV6 support. It has support for the MK60, which has the same Ethernet peripheral. I will probably be porting FNET to the FRDM-K64F board in the near future (2-3 weeks).

It shouldn't be too difficult a port, with only a single configuration file requiring changes (as well as a few target-specific #defines here and there).

Fnet also supports lpc1768, at least I saw a port somewhere. What if somebody port it to mbed? :-) IT might require c++ wrapper though for easy-to-use.

posted by Martin Kojtal 08 May 2014

Any progress on the port?

posted by Emil Johnsen 10 Jun 2014
9 years, 6 months ago.


Also check out http://www.utasker.com/kinetis.html which support the FRDM-K64F. It also also simulates the K64 and the FRDM-K64F board it in approx. real-time as seen here: https://community.freescale.com/thread/322132 It will run an Ipv4/v6 web server from SD card content or from an internal file system in Flash and has various additional services like TELNET, FTP clienet and server, DHCP, SNMP, IGMP etc.



P.S. As well as the Ethernet, it has various USB classes, graphics library, FAT and various other peripheral drivers (including accelerometer/magnetometer I2C drivers). Furthermore, the package contains boot loader for the FRDM-K64F supporting Ethernet, UART, USB HID, or USB-MSD and SD card.

I tried EthernetInterface with K64F, the result is mixed:

Could connect to a web server and retrieve data but it was corrupted.

Then I updated to the latest mbed revision 84.

Now I can get IP address via DHCP (i.e., after init())

After a few compilation and testing, it stopped at init().

I used the same code throughout.

posted by HM Yoong 11 Jun 2014