uClinux Running on Freescale Kinetis K70 MCU (Cortex-M4) Module
Last year, I posted about Linux for Cortex M3 & M4 Micro-controllers and noted it was difficult to find cost effective Cortex-M based boards able to run uClinux or Linux (RAM being the main issue).
Freescale TWR-K70F120M is a module based on Kinetis K70 MCU (Cortex M-4) with plenty of RAM (128MB) to run Linux or uClinux. It is available for 109 USD or 179 USD with Freescale Tower system (TWR-K70F120M-KIT).
Here are the key features of the module:
- Freescale MK70FN1M0VMJ12 Cortex-M4 MCU @ 120 MHz (Product Brief)
- Touch Tower Plug-in Socket
- General purpose Tower Plug-in (TWRPI) socket
- On-board JTAG debug circuit (OSJTAG) with virtual serial port
- 128 MB DDR2 SDRAM memory
- 256 MB SLC NAND flash memory
- Three axis accelerometer (MMA8451Q)
- Micro-SD Card slot
I could not find an open source uClinux implementation for Kinetis K70, but emCraft has a Linux Board Support Package (BSP) for the Freescale TWR-K70F120M-KIT hardware platform available for 99 USD.
They have just uploaded a video of Kinetis K70 Tower Kit running uClinux 2.6.33 (with busybox) + u-boot with an ultra fast boot time (about 2 seconds) and showcasing a few capabilities of the system including:
- IP stack support
- ssh server (dropbear)
- http server
- nfs support
- jffs2 support
Vladimir Khusainov, Founder of Emcraft Systems, also mentioned they benchmarked this setup with drystone:
Linux (uClinux) runs just beautifully on this device. Using ‘dhrystone’, we get about 50% performance we get on a 250Mhz Freescale PowerPC box. Fast boot-up, lots of RAM (the TWR-K70 module provides 128MB of RAM and 256MB of NAND Flash), networking, JFFS2, framebuffer, SSH, HTTPD, Qt/E – all this runs just fine on K70. Overall user experience is your regular “embedded Linux” on an MMU-full microprocessor.