diff --git a/platform/esb/doc/esb.txt b/platform/esb/doc/esb.txt index 4614dab58..d1715303e 100644 --- a/platform/esb/doc/esb.txt +++ b/platform/esb/doc/esb.txt @@ -19,6 +19,140 @@ sender/receiver, vibration/tilt, microphone, temperature). The Contiki/ESB port contains drivers for most of the sensors. The drivers were mostly adapted from sources from FU Berlin. +\section esb-getting-started Getting started with Contiki for the ESB platform + +The ESB is equipped with an MSP430 microcontroller. The first step to +getting started with Contiki for the ESB is to install the development +tools for compiling Contiki for the MSP430. + +Windows users, see \ref esb-win-setup. FreeBSD users, see \ref esb-freebsd-setup + +\section esb-win-setup Setting up the Windows environment + +This is a brief introduction to Contik/ESB programming under Windows +using cygwin and some other free software tools. + +\subsection winintro-installing Installing the development environment + +\subsubsection winintro-installing-cygwin Installing Cygwin + +The first "need to have" software is the cygwin environment that can +be found at http://www.cygwin.com. Cygwin is a Linux-like environment +for Windows. Click on the icon "Install Cygwin Now" to the right to +get the installation started. + +Choose "Install from Internet" and then specify where you want to +install cygwin (recommended installation path: +C:\\cygwin). Continue with the installation until you are +asked to select packages. Most packages can be left as "Default" but +there is one package that are not installed by default. Install the +following package by clicking at "Default" until it changes to +"Install": + +- Devel - contains things for developers (make, etc). + + + +When cygwin is installed there should be a cygwin icon that starts +up a cygwin bash when clicked on. Whenever it is time to compile and +send programs to the ESB nodes it will be done from a cygwin shell. + +\subsubsection winintro-installing-editor C programming editor + +If you do not already have a nice programming editor it is a good +idea to download and install one. The Crimson editor is a nice +windows based editor that is both easy to get started with and +fairly powerful. + +Crimson Editor can be found at: +http://www.crimsoneditor.com/ + +The editor is useful both when editing C programs and when +modifying scripts and configuration files. + +\subsubsection winintro-installing-compiler MSP430 Compiler and tools + +A compiler is needed to compile the programs to the MSP430 +microprocessor that is used on the ESB sensor nodes. Download and +install the GCC toolchain for MSP430 (recommended installation path: +C:\\MSP430\\). + +The GCC toolchain for MSP430 can be found at: +http://sourceforge.net/projects/mspgcc/ + +When the above software is installed you also need to set-up the +PATH so that all of the necessary tools can be reached. In cygwin +this is done by the following line (given that you have installed +at recommended locations): + + +export PATH=\$PATH:/cygdrive/c/MSP430/mspgcc/bin + + +This line can also be added to the .profile startup file in your cygwin +home directory +(C:\\cygwin\\home\\\\\.profile). + +If your home directory is located elsewhere you can find it by +starting cygwin and running \c cd followed by \c pwd. + +\subsubsection winintro-installing-contiki The Contiki operating system, including examples + +When programming the ESB sensor nodes it is very useful to have an +operating system that takes care of some of the low-level tasks and +also gives you as a programmer APIs for things like events, hardware +and networking. We will use the Contiki operating system developed by +Adam Dunkels, SICS, which is very well suited when programming small +embedded systems. + +The Contiki OS can be found at: +http://www.sics.se/~adam/contiki/ + +Unzip the Contiki OS at (for example) C:\\ +and you will get the following directories among others: + +- contiki-2.x/core - the contiki operating system +- contiki-2.x/platform/esb - the contiki operating system drivers, etc for the ESB +- contiki-2.x/platform/esb/apps/ - example applications for the ESB + +\subsection winintro-testing Testing the tools + +Now everything necessary to start developing Contiki-based sensor net +applications should be installed. Start cygwin and change to the +directory contiki-2.x/platform/esb/. Then call make +beeper.co. + +If you get an error about multiple cygwin dlls when compiling, you +need to delete cygwin1.dll from the MSP430 GCC toolchain +(C:\\MSP430\\bin\\cygwin1.dll). + +Connect a node and turn it on. Upload the test application by calling +make beeper.u. + +\subsubsection winintro-testing-development Development tools + +- make \ will compile and make a executable file ready +for sending to the ESB nodes. Depending on the \c SPEC it might even +startup the application that sends the executable to the +node. Typically you would write things like "make beeper.u" +to get the file beeper.c compiled, linked and sent out to the +ESB node + +\subsubsection winintro-testing-shell Some basic shell commands + +- cd \ change to a specified directory (same as in DOS) +- pwd \ shows your current directory +- ls list the directory +- mkdir \ creates a new directory +- cp \ \ copies a file + +\section esb-freebsd-setup Setting up the FreeBSD environment + +Download the msp430-gcc, msp430-binutils, and +msp430-libc packages from +http://www.sics.se/~adam/contiki/freebsd-packages/. Install the +packages (as root) with pkg_add. + @{ */