This tutorial will explain how to run NuttX on Freescale Freedom Board:
First of all Download the GCC-ARM-EMBEDDED:
I’m using version gcc-arm-none-eabi-4_7-2012q4-20121208-linux.tar.bz2 but you could use newer versions.
Decompress the toolchain file:
$ tar xvf gcc-arm-none-eabi-4_7-2012q4-20121208-linux.tar.bz2
Move toolchain to /usr/local directory:
$ sudo mv gcc-arm-none-eabi-4_7-2012q4 /usr/local/gcc-arm-embedded
Add this directory to your PATH:
$ export PATH=/usr/local/gcc-arm-embedded/bin:$PATH
Case you are using Ubuntu you could install the gcc-arm-none-eabi from Terry Guo repository and just ignore these instructions above.
Download NuttX from its repository:
$ git clone git://git.code.sf.net/p/nuttx/git nuttx
Now configure NuttX to compile for Freedom board:
$ cd nuttx/nuttx/ $ cd tools/ $ ./configure.sh freedom-kl25z/nsh $ cd -
Now edit nuttx .config and replace CONFIG_ARMV6M_TOOLCHAIN_BUILDROOT by CONFIG_ARMV6M_TOOLCHAIN_GNU_EABIL:
$ vi .config ... #CONFIG_ARMV6M_TOOLCHAIN_BUILDROOT is not set CONFIG_ARMV6M_TOOLCHAIN_GNU_EABIL=y
Compile nuttx using make command:
Copy nuttx.srec to Freedom board, case you have installed MBED 2.0 firmware (recommended) then you need to copy nuttx.bin instead.
Now to have access to NSH terminal running on the board, just use minicom, picocom, or your preferred serial terminal client, configured to /dev/ttyACM0 and 115200.
5 thoughts on “Running NuttX on Kinetis KL25Z Freedom Board (FRDM-KL25Z)”
Very interesting , I will try it as soon as my Freedom board arrives.
Hi Alan, Have you used ever Nuttx on a product or are just experimentig with it ?
Yes, I’m using NuttX on a project we are developing for a company here in BH.
First – Excellent example! Thank you for sharing.
Second – Could you fill me in on how to execute an example? I’m trying to run the “hello” example app but I cant seem to get it to run in nsh.
I copied over “CONFIG_BUILTIN=y” from “ostest” and set “CONFIG_EXAMPLES_HELLO=y”, do you know what I might be missing?
Thank you for this very positive feedback, it is important to encourage me to keep going.
I’ll create a new post explaining how to do it. In fact this is one of the first thing people want to do after getting NuttX running in the board.
Please keep tuned!