Example Application: CntToLedsAndRfm
| #include "gen/cRfmToLeds_TinyOSModule.h" #include "gen/cRfmToLeds_Main.h" #include "gen/cCntToLedsAndRfm_TinyOSModule.h" #include "gen/cCntToLedsAndRfm_Main.h"
if (index() == 0) |
NesCT is going to build all the classes in gen directory. Replace
"cp" with "copy" and slash (/) with backslash (\) for windows operating
system at the following instructions.
[root@maros-lin opt]# cd tictoc
[root@maros-lin tictoc]# cd components
[root@maros-lin components]# cp CntToLedsAndRfm.nc ../Application.nc
[root@maros-lin components]# cd ..
[root@maros-lin tictoc]# ./nesct.exe Application.nc
Enter components directory again:
[root@maros-lin components]# cp RfmToLeds.nc ../Application.nc
[root@maros-lin components]# cd ..
[root@maros-lin tictoc]# ./nesct.exe Application.nc
Type 'opp_makemake -c config -f' to create new Makefile for your environment. If your build environment is windows type 'opp_nmakemake -c config.win32 -f' for visual studio to create new Makefile for your environment. Additionally, you need to run 'nmake -f Makefile.vc depend' for windows.
Note that, NesCT assumes that your OMNeT++ distribution is in /opt/omnetpp-3.2 for linux and in c:\omnet++ for windows. If it is installed at some other directory, you'll need to edit config or config.win32 file to change the path for nedtool, lib and include directories of OMNeT++.
[root@sinan tictoc]# opp_makemake -c config -f
Makefile created, adding dependencies...
Done.
Type "make" for linux, "nmake -f makefile.vc" for windows to build
the binary.
[root@sinan tictoc]# make
g++ -c -g -fpermissive -fPIC -DWITH_NETBUILDER -w -DTOSNODES=1000
-DLINUX -DPLATFORM_OMNETPP -I./include
-I/root/projects/tinyos-1.x/tos/interfaces -I./include_tos
-I/opt/omnetpp-3.2/include simstart.cc
g++ tictoc1_n.o debug.o simstart.o tinyos.o tinyosmain.o tossim.o txc1.o
-g -L/opt/omnetpp-3.2/lib -lenvir -lcmdenv -lsim_std -lnedxml -lxml2
-ldl -lstdc++ -lpthread -o tictoc
echo>.tstamp
Let's enable all debug options for demonstration purposes. Use "export" keyword for linux and "set" keyword for windows to change environment variable. You should see an output similar to this in TK window.

[root@sinan tictoc]# export DBG=all
[root@sinan tictoc]# ./tictoc
0:0:3.10051525: LEDS: Red on.
0:0:3.10051525: LEDS: Red on.
0:0:3.10051525: LEDS: Red on.
0:0:3.10051525: POWER: Mote 1 LED_STATE RED_ON at 12402061
0:0:3.10051525: POWER: Mote 2 LED_STATE RED_ON at 12402061
0:0:3.10051525: LEDS: Green off.
0:0:3.10051525: LEDS: Green off.
0:0:3.10051525: LEDS: Green off.
0:0:3.10051525: POWER: Mote 1 LED_STATE GREEN_OFF at 12402061
0:0:3.10051525: POWER: Mote 2 LED_STATE GREEN_OFF at 12402061
0:0:3.10051525: LEDS: Yellow off.
0:0:3.10051525: LEDS: Yellow off.
0:0:3.10051525: LEDS: Yellow off.
0:0:3.10051525: POWER: Mote 1 LED_STATE YELLOW_OFF at 12402061
0:0:3.10051525: POWER: Mote 2 LED_STATE YELLOW_OFF at 12402061
0:0:3.10051525: Sending message: ffff, 4
0:0:3.10051525: Sending message: ffff, 4
0:0:3.10051525: Sending message: ffff, 4
0:0:3.10051525: TossimPacketM: Sending Message
0:0:3.10051525: TossimPacketM: Sending Message
0:0:3.10051525: TossimPacketM: Sending Message