[Tinyos-help] acknowledgements in Tinyos2.0.2 usingBaseStationCC2420, not supported?

Tiago Camilo tandre at dei.uc.pt
Fri Aug 24 04:01:06 PDT 2007


David,

Thanks for your time!!
You were right I was using an old version of CC2420ControlP, since I was 
compiling using the BaseStationCC2420 that incorporates the 
CC2420ControlP old version.
I just simply used the new BaseStation and the ack started to appear... 
so once again thanks!

I notest the flag -DCC2420_NO_ADDRESS_RECOGNITION, on the BaseStation 
Makefile, does this flag only work on the BaseStation code or can I use 
on different application using the CC2420ActiveMessageC component? 
Because I tried with no success. I also tried using the 
CC2420Config.setAddressRecognition(bool on) through CC2420ControlC, as u 
suggested in a previous mail.

Thanks in advance,
Tiago

David Moss wrote:
> Tiago -
>
> BaseStationCC2420 was removed in 2.0.2 because it is no longer necessary.
> It was originally there because the CC2420ControlP module needed some
> special modifications. Now, because those modifications are now controlled
> by software and/or preprocessor variables in the 2.0.2 CC2420 stack,
> BaseStationCC2420 is deprecated.
>
> It looks to me like some files in your CC2420 stack are not up to date with
> version 2.0.2.  Specifically, the CC2420ControlP you're using is old enough
> not to incorporate the newest interfaces defined by CC2420Config - that's
> where the errors are coming from.  If you're 100% sure that your
> tos/chips/cc2420 stack is up to date, can you be sure that CC2420ControlP is
> not being pulled from some other location?  First verify your
> tos/chips/cc2420/control/CC2420ControlP provides the interfaces that
> CC2420Config is complaining about, and if it does then try adding the
> following line to your tos/chips/cc2420/control/CC2420ControlP module:
>
> #warning "Using the newest CC2420ControlP"
>
> When you compile, if you see that line printed to the command line at
> compile time, you can be sure of which CC2420ControlP file nesC is trying to
> use.  Attached is the CC2420ControlP you should be using.  You can even try
> putting that directly in your apps/BaseStation directory to force nesC to
> use it instead of some other, older CC2420ControlP.
>
> -David
>
>
>
> -----Original Message-----
> From: tinyos-help-bounces at Millennium.Berkeley.EDU
> [mailto:tinyos-help-bounces at Millennium.Berkeley.EDU] On Behalf Of Tiago
> Camilo
> Sent: Wednesday, August 22, 2007 7:55 AM
> To: tinyos-help at Millennium.Berkeley.EDU
> Cc: Philip Levis
> Subject: [Tinyos-help] acknowledgements in Tinyos2.0.2
> usingBaseStationCC2420, not supported?
>
> Hi all,
>
> I am trying to implement acknowledgementsin my telosb motes, using the 
> tinyos2.0.2.
>  I am using the component CC2420ActiveMessageC with the interface 
> PacketAcknowledgements as suggested in the TestAcks application of 
> folder cc2420. However i can make this work using the BaseStationCC2420 
> application ( tinyos2.0.1). The source does not receive any 
> acknowledgments from the BaseStation. I found out that in the makefile 
> there is the declaration: CFLAGS += -DCC2420_NO_ACKNOWLEDGEMENTS, which 
> explains the lack of ack. However when i try to compile 
> BaseStationCC2420 without this option i have this error:
>     
> compiling BaseStationC to a telosb binary
> ncc -o build/telosb/main.exe -Os -O -mdisable-hwmul -Wall -Wshadow 
> -DDEF_TOS_AM_GROUP=0x7d -Wnesc-all -target=telosb 
> -fnesc-cfile=build/telosb/app.c -board= -D'TOSH_DATA_LENGTH=102' 
> -DIDENT_PROGRAM_NAME=\"BaseStationC\" -DIDENT_USER_ID=\"tandre\" 
> -DIDENT_HOSTNAME=\"homenux\" -DIDENT_USER_HASH=0xb4d39b1cL 
> -DIDENT_UNIX_TIME=0x46cc4aafL -DIDENT_UID_HASH=0xeb773d58L  
> BaseStationC.nc -lm
> In file included from 
> /opt/tinyos-2.x/tos/chips/cc2420/control/CC2420ControlC.nc:53,
>                  from 
> /opt/tinyos-2.x/tos/chips/cc2420/csma/CC2420CsmaC.nc:61,
>                  from /opt/tinyos- 
> 2.x/tos/chips/cc2420/CC2420ActiveMessageC.nc:58,
>                  from 
> /opt/tinyos-2.x/tos/platforms/telosa/ActiveMessageC.nc:61,
>                  from BaseStationC.nc:71:
> In component `CC2420ControlP':
> CC2420ControlP.nc :236: `CC2420Config.getShortAddr': async mismatch with 
> declaration
> /opt/tinyos-2.x/tos/chips/cc2420/interfaces/CC2420Config.nc:64: previous 
> declaration of `CC2420Config.getShortAddr'
> CC2420ControlP.nc:244: `CC2420Config.getPanAddr': async mismatch with 
> declaration
> /opt/tinyos-2.x/tos/chips/cc2420/interfaces/CC2420Config.nc:70: previous 
> declaration of `CC2420Config.getPanAddr'
> CC2420ControlP.nc:76: `CC2420Config.setAutoAck' not implemented
> CC2420ControlP.nc:76: `CC2420Config.isAddressRecognitionEnabled' not 
> implemented
> CC2420ControlP.nc:76: `CC2420Config.setAddressRecognition' not implemented
> CC2420ControlP.nc:76: `CC2420Config.isAutoAckEnabled' not implemented
> CC2420ControlP.nc:76: `CC2420Config.isHwAutoAckDefault' not implemented
> In component `CC2420ControlC':
> /opt/tinyos-2.x/tos/chips/cc2420/control/CC2420ControlC.nc:98: cannot 
> find `ActiveMessageAddress'
> make: *** [exe0] Error 1
>
> I know that the CC2420 stack was changed in this last version. Are we 
> still waiting for a updated BaseStationCC2420 (since in 2.0.2 cvs it 
> seems to be deleted), or am I missing something?
>
> Thanks in advance,
> Tiago Camilo
> _______________________________________________
> Tinyos-help mailing list
> Tinyos-help at Millennium.Berkeley.EDU
> https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>   



More information about the Tinyos-help mailing list