Ethernut Home Software Hardware Tools Download Community
 
 
Search | Legals | Deutsch

Ethernut Software

Nut/OS

The 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.

Applications

Five Open Source Reference Designs are currently available:

Empty

Too many boxes here.

Nut/OS

Nut/OS is an intentionally simple RTOS for the ATmega128, which provides a minimum of services to run Nut/Net, the TCP/IP stack. It's features include:

  +  Non preemptive multithreading.
  +  Events.
  +  Periodic and one-shot timers.
  +  Dynamic heap memory allocation.
  +  Interrupt driven streaming I/O.

Main features of the TCP/IP stack are:

  +  Base protocols ARP, IP, ICMP, UDP and TCP.
  +  User protocols DHCP, DNS and HTTP.
  +  Socket API.
  +  Host, net and default routing.
  +  Interrupt driven Ethernet driver.

The system is highly configurable by the Nut/OS Configurator.

Known Problems

All known bugs are listed at the Sourceforge Bug Tracker


Applications

Sources and precompiled binaries are available in the download area.

Ethernet Boot Loader
This application demonstrates how to create a BOOTP/TFTP based boot loader for the ATmega 128.

The Nut/OS Wiki contains many basic application examples.


Compiler

In order to write your own applications or recompile the Nut/OS source code, you may choose between two compilers. Originally Nut/OS was written for AVR-GCC, a special build of the well known GNU Compiler Collection. Since version 2.5 Nut/OS also supports a commercial compiler, ICCAVR from ImageCraft.

AVR-GCC

WinAVR is a complete Win32 installation package, which contains the AVR-GCC compiler and many additional tools.

Linux installations are available at packages.debian.org/testing/devel/gcc-avr, ftp.gnu.org/savannah/files/avr-libc/released/ and many other places.

The AVR Libc User's Manual, which describes the C Runtime Library of AVR-GCC can be found at freesoftware.fsf.org.

ICCAVR

The commercial ICCAVR compiler can be purchased from ImageCraft or most Ethernut dealers. Nut/OS and Nut/Net fully support licensed versions of this compiler. A beginner's tutorial about Using ImageCraft C with Nut/OS is available. It demonstrates how to build and debug a webserver application.

CodeVisionAVR

It has been reported, that Nut/OS had been successfully ported to a second commercial compiler, CodeVisionAVR from HP InfoTech.

This port was done for Nut/OS 2.4.2, but required some global changes because of essential differences of the compiler. This may change with compiler version 1.23.8, which is expected to be available soon.


Debugger

AVR Studio

The AVR Studio Simulator for Windows is very limited and can't run Nut/OS applications. It typically get trapped in one of the interrupt routines.

When using the ATJTAGICE hardware with AVR Studio 4 from www.atmel.com, you can set breakpoints and single step your C and assembler source code. But only sources compiled with ICCAVR offer C variable inspection. More...

Some information about configuring the ICE50 with Ethernut is shown here

GDB

GDB, the GNU debugger, has been reported to work under Linux with ATJTAGICE. More details are available at avarice.sourceforge.net