/** \addtogroup esb @{ */ /** \defgroup winintro Introduction to Contiki development under Microsoft Windows \author Joakim Eriksson, Niclas Finne @{ \section winintro-intro Introduction This is a brief introduction to Contik/ESB programming under Windows using cygwin and some other free software tools. \section winintro-installing Installing the development environment This sections describes how to install all the necessary software to get started with ESB programming. \subsection winintro-installing-cygwin Cygwin - a Linux-like environment for Windows The first "need to have" software is the cygwin environment that can be found at http://www.cygwin.com. 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. \subsection 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. \subsection 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. \subsection 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 \section 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. \subsection 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 \subsection 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 */ /** @} */ /** @} */