One could also consider this as a not finished tutorial how to run
both versions nicely side by side :-)
What I did:
- I installed Boomerang 2.0.4
- As we are using both MicaZ and soon tmote sky in our lab, I installed the
Atmel AVR Tools using the rpms on the TinyOS 2.0 installation site.
At this point, I had a installation that nicely
compiled TinyOS 1.X applications (examples an my own ones) on both
MicaZ and tmote platforms.
As I want to use TinyOS 2.0 for a bigger project, I decided to install
it within the existing installation using
tinyos-2.0.0-2.cygwin.noarch.rpm, again from the TinyOS 2.0 site.
I did not upgrade the tinyos-tools and nesc, as to my knowledge
booerang already uses versions that are up to date.
Following this step, I dumped my environment variables using "SET >
tinyos1x.sh", replacing "declare -x" with "export".
This provides me a script and I can use the command "source
tinyos1x.sh" to adjust cygwin to perfectly run Boomerang if
environment variables are changed.
In the next step, I tried to get TinyOS 2.0 running. Therefore I
created a simple bash script tinyos2.sh:
export TOSROOT="/opt/tinyos-2.x"
export TOSDIR="$TOSROOT/tos"
export CLASSPATH=`cygpath -w $TOSROOT/support/sdk/java/tinyos.jar`
export
CLASSPATH="$CLASSPATH;.;C:\\Programme\\Java\\jre1.5.0_06\\lib\\ext\\"
export MAKERULES="$TOSROOT/support/make/Makerules"
export
PATH="/cygdrive/c/Programme/Java/jdk1.5.0_06/bin:/usr/local/bin:/usr/bin:
/bin:/usr/X11R6/bin:/cygdrive/c/WINDOWS/system32:/cygdrive/c/WINDOWS:/cygd
rive/c/WINDOWS/System32/Wbem:/cygdrive/c/PROGRA~1/ATT/Graphviz/bin:/opt/ms
p430/bin"
Executing "source tinyos2.sh" from bash should provide me with a
running TinyOS 2.0 installation, and actually it does. Example
applications compile nicely for micaZ and telosb, but not for tmote!
Executing "make tmote" in apps/Blink gives me a very strange result:
mkdir -p build/tmote compiling BlinkAppC to a tmote binary ncc -o
build/tmote/main.exe -Os -O -Wall -Wshadow -DDEF_TOS_AM_GROUP=0x7d
-Wnesc-all -target=tmote -fnesc-cfile=build/tmote/app.c -board=
-mdisable-hwmul -Wall -Wshadow -DDEF_TOS_AM_GROUP=0x7d -Wnesc-all
-target=tmote -fnesc-cfile=build/tmote/app.c -board=
-I/opt/moteiv/tos/platform/tmote
-I/opt/moteiv/tos/platform/tmote/util/uartdetect
-I/opt/moteiv/tos/platform/msp430/adc
-I/opt/moteiv/tos/platform/msp430/dac
-I/opt/moteiv/tos/platform/msp430/dma
-I/opt/moteiv/tos/platform/msp430/resource
-I/opt/moteiv/tos/platform/msp430/timer
-I/opt/moteiv/tos/platform/msp430 -I/opt/moteiv/tos/lib/util/pool
-I/opt/moteiv/tos/lib/util/button -I/opt/moteiv/tos/lib/util/null
-I/opt/moteiv/tos/lib/util -I/opt/moteiv/tos/lib/MultiHopLQI
-I/opt/moteiv/tos/lib/netsync -I/opt/moteiv/tos/lib/sp
-I/opt/moteiv/tos/lib/sp/cc2420 -I/opt/moteiv/tos/lib/timer
-I/opt/moteiv/tos/lib/resource -I/opt/moteiv/tos/lib/sched
-I/opt/moteiv/tos/lib/Deluge -I/opt/moteiv/tos/lib/Flash/STM25P
-I/opt/moteiv/tos/lib/Flash -I/opt/moteiv/tos/lib/Spram
-I/opt/moteiv/tos/interfaces -I/opt/moteiv/tos/lib/CC2420Radio
-I/opt/moteiv/tos/system -I/opt/moteiv/tinyos-1.x/tos/lib/CC2420Radio
-I/opt/moteiv/tinyos-1.x/tos/lib/Drip
-fnesc-scheduler=TinySchedulerC,TinySchedulerC.TaskBasic,TaskBasic,TaskBas
ic,runTask,postTask
-Wl,--section-start=.text=0x4800,--defsym=_reset_vector__=0x4000
-DLIB_DELUGE -DDELUGE_NUM_IMAGES=6 -mdisable-hwmul BlinkAppC.nc -lm
target `exe'
/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:79: warning: ignoring
old co mands for target `exe'
/opt/tinyos-2.x/support/make/msp/msp.rules:84: warning: overriding
commands for target `exe0'
/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:82: warning: ignoring
old co mands for target `exe0'
/opt/tinyos-2.x/support/make/msp/msp.rules:92: warning: overriding
commands for target `builddir'
/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:87: warning: ignoring
old comands for target `builddir'
/opt/tinyos-2.x/support/make/msp/msp.rules:95: warning: overriding
commands for
target `bytes'
/opt/moteiv/tools/make/msp_moteiv/msp_moteiv.rules:90: warning: ignoring
old co
mands for target `bytes'
/opt/tinyos-2.x/support/make/tmote.target:17: warning: overriding commands
for target `tmote'
/opt/moteiv/tools/make/tmote.target:91: warning: ignoring old commands for
targt `tmote' multiple targets specified
make: *** [exe0] Error 2
Obviously, the make process mixes up source files from boomerangs' tinyos
1.x and 2.x - which clearly does not work... My final question: Do I simply
have to clear out an environment variable to get this running? Or
should I change the makerules of tinyos 2.0 ?
(If I switch back to tinyos 1.x using my bash script mentioned above,
everything works fine)
Regards,
Elias Weingärtner
Institute of Computer Science
Ulm University, Germany
_______________________________________________
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
!DSPAM:455dcebf158381804284693!
------------------------------------------------------------------------
_______________________________________________
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help