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.
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.
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.
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.
Support
If you need support, take a look here:
Download 5.2.2.1
NutOS 5.2.2-1 - ELEKTOR Internet Radio (20140111-Beta) (118 KB)
NutOS 5.2.2-1 - STM3220G-EVAL (20140111-Beta) (98 KB)
NutOS 5.2.2-1 - STM3240G-EVAL (20140111-Beta) (98 KB)
Download 5.1.0
The Embedded Web Radio project is included too, which can be found at SourceForge.
Here the trunk version was used.
NutOS 5.1.0 - ELEKTOR Internet Radio (20130825) (479 KB)
Download 4.10.x
Now with UPnP to demonstrate multicast and UPnP functionality with the httpd example.
The Embedded Web Radio project is included too, which can be found at SourceForge.
Here the trunk version was used.
NutOS 4.10.1 - ELEKTOR Internet Radio (20111201) (555 KB)
NutOS 4.10.2 - ELEKTOR Internet Radio (20120406) (642 KB)
NutOS 4.10.3 - ELEKTOR Internet Radio (20130824) (642 KB)
Download 4.8.9
NutOS 4.8.9 - Ethernut 3.0 Rev-D (20110607) (119 KB)
NutOS 4.8.9 - Ethernut 3.1 Rev-D (20110607) (119 KB)
NutOS 4.8.9 - ELEKTOR Internet Radio (20110607) (517 KB)
|