Nut/OS & CrossWorks
  Introduction
  How to install
  How to build
  Support
  Download
  Back

Introduction

Nut/OS is a modular, open source, real time operating system for embedded platforms. It is easily configurable and optimized to run on 8 and 32 bit microcontrollers.

The well documented software is an Open Source implementation of a Real Time Operating System called Nut/OS and a TCP/IP protocol suite named Nut/Net. Several application examples are provided, including an embedded Webserver, a simple RS232 to TCP/IP gateway and an Internet Radio playing MP3 streams.

For more information take a look at the Ethernut project. Unfortunately for the moment CrossWorks for ARM is not supported by the Nut/OS configurator. Therefore you will find some "patches" here which makes possible to use Nut/OS with the CrossWorks for ARM toolchain from Rowley Associates.

This project makes it possible to use CrossWorks for ARM for building and debugging Nut/OS. Therefore a "patch" must be installed over the existing Nut/OS installation.

^ top 

How to install

Before you can install the patch, you must have installed Nut/OS already. Assumed you have installed Nut/OS in the default directory suggested by the Nut/OS installer you should have the following directory on your hard disk.

c:\ethernut-4.8.3

For this project I will start with the stable 4.8.3 release. The directory where you have installed Nut/OS will now be called the Nut/OS directory.

Do not mix patch and Nut/OS version, that mean you must not expand a 483 patch over a Nut/OS 4.9.4 version. Patch and Nut/OS must be the same version. The naming of the zip file is give by the following rule:

<nutos version>-rowley-<board>-<date>

Copy the zip file which you can find in the Download section into your Nut/OS directory and expand it here. By expanding the zip file some Nut/OS files will replaced. By the nature of this process, no backup files will be created. Therefore it is your job to backup your Nut/OS installation before.

After expanding the zip file the Nut/OS directory looks like:

Two new directories was created by expanding the zip file. nutbld-rowley-eir will be used to build the libraries and nutapp-rowley-eir for the applications. Here the patch for the ELEKTOR Internet Radio (EIR) was installed.

^ top 

How to build

It is required that you are familiar with the workflow under CrossWorks for ARM. You should know:

  • how to install a Board Support Package (BSP)
  • how to compile a solution
  • how to download / debug / start an application

Next I will show you some screen shots from CrossWorks for ARM v2.0.3 which I have used for creating this project, but it works with v1.7b21 too.

Make sure that the Board Support Package (BSP) for the Atmel AT91SAM7 CPU is installed. Therefore use "Tools / Show Installed Packages" inside CrossStudio. The result should look like:

If the Atmel AT91SAM7 CPU package is not installed, use "Tools / Install Packages..." and install the requiered package before.

If the BSP is installed, we will start by building the Nut/OS libraries. Therefore use
"File / Open Solution..." and open the nut483_lib_eir.hzp file which can be found inside the <Nut/OS directory>\nutbld-rowley-eir directory. The "Project Explorer" window will look like:

The Debug build is selected. To build the libraries, right click with the mouse at
Solution nut483_lib_eir and select "Rebuild":

This will build all Nut/OS libraries in Debug mode. Now change to "V4T ARM LE Release" and build the libraries in Release mode. The Debug and Release libraries will be stored inside the following directory:

<Nut/OS directory>\nutbld-rowley-eir\lib

The libraries are finished, and you can start to build the applications now. We will start with the httpd application. Therefore use "File / Open Solution..." and open the httpd.hzp file which can be found inside the following directory:

<Nut/OS directory>\nutapp-rowley-eir\httpd\prj

The "Project Explorer" window will look like:

Make sure that "ARM RAM Debug" mode is selected:

To build the application, right click with the mouse at Project "httpd" and select "Rebuild":

The httpd application is now build in Debug mode and can be downloaded to the EIR board. If you bild the application in "ARM Flash Release", a hex file can be found in the following directory:

<Nut/OS directory>\nutapp-rowley-eir\httpd\prj\ARM Flash Release

The other applications can be build in the same way.

^ top 

Support

If you need support, take a look here:

^ top  

Download

NutOS 4.8.3 - ELEKTOR Internet Radio (20090914) (350KB)

NutOS 4.8.6 - ELEKTOR Internet Radio (20100324) (103KB)

NutOS 4.9.9 - ELEKTOR Internet Radio (20100731) (477KB)

     The Embedded Web Radio project is included too, which can be
     found at SourceForge. Here the trunk version was used.

^ top