Hi,
I have a strange error which I don't know how to interprete.
I changed the RadioCountToLeds to use the CC2420ActiveMessageC.nc
directly and it works. Then I created another copy of
CC2420ActiveMessageC as CC2420ActiveMessageMineC and try to use it in
RadioCountToLeds. Even though I didn't change anything except the
configuration name, I can compile the code but I got following
infamous fan-out warning (I noticed that the size of ROM is greater
from when I used CC2420ActiveMessageC, sizes of RAM are the same in
both cases):
-------------------------------------------------------------------------------------------------------------------
$ make micaz
mkdir -p build/micaz
compiling RadioCountToLedsAppC to a micaz binary
ncc -o build/micaz/main.exe -Os -finline-limit=100000 -Wall -Wshadow -Wnesc-all
-target=micaz -fnesc-cfile=build/micaz/app.c -board=micasb -DIDENT_PROGRAM_NAME=
\"RadioCountToLed\" -DIDENT_USER_ID=\"hieulk\" -DIDENT_HOSTNAME=\"hieulk-xp1\" -
DIDENT_USER_HASH=0xfe9f1b00L -DIDENT_UNIX_TIME=0x47015be6L -DIDENT_UID_HASH=0x4d
44dff2L -fnesc-dump=wiring -fnesc-dump='interfaces(!abstract())' -fnesc-dump='re
ferenced(interfacedefs, components)' -fnesc-dumpfile=build/micaz/wiring-check.xm
l RadioCountToLedsAppC.nc -lm
nesc1: warning: calls to SubSend.getPayload in CC2420ActiveMessageP fan out, but
there is no combine function specified for the return type
nesc1: warning: calls to SubSend.maxPayloadLength in CC2420ActiveMessageP fan ou
t, but there is no combine function specified for the return type
nesc1: warning: calls to SubReceive.payloadLength in CC2420ActiveMessageP fan ou
t, but there is no combine function specified for the return type
nesc1: warning: calls to SubReceive.getPayload in CC2420ActiveMessageP fan out,
but there is no combine function specified for the return type
nesc1: warning: calls to CC2420Config.isAddressRecognitionEnabled in CC2420Activ
eMessageP fan out, but there is no combine function specified for the return typ
e
nesc1: warning: calls to CC2420Config.isAutoAckEnabled in CC2420ActiveMessageP f
an out, but there is no combine function specified for the return type
nesc1: warning: calls to CC2420Config.isHwAutoAckDefault in CC2420ActiveMessageP
fan out, but there is no combine function specified for the return type
nesc1: warning: calls to CC2420Config.getShortAddr in CC2420ActiveMessageP fan o
ut, but there is no combine function specified for the return type
nesc1: warning: calls to CC2420Config.getChannel in CC2420ActiveMessageP fan out
, but there is no combine function specified for the return type
nesc1: warning: calls to CC2420Config.getPanAddr in CC2420ActiveMessageP fan out
, but there is no combine function specified for the return type
nesc1: warning: calls to CC2420Packet.getRssi in CC2420ActiveMessageP fan out, b
ut there is no combine function specified for the return type
nesc1: warning: calls to CC2420Packet.getPower in CC2420ActiveMessageP fan out,
but there is no combine function specified for the return type
nesc1: warning: calls to CC2420Packet.getLqi in CC2420ActiveMessageP fan out, bu
t there is no combine function specified for the return type
nesc1: warning: calls to CC2420PacketBody.getHeader in CC2420ActiveMessageP fan
out, but there is no combine function specified for the return type
nesc1: warning: calls to CC2420PacketBody.getMetadata in CC2420ActiveMessageP fa
n out, but there is no combine function specified for the return type
nesc1: warning: calls to ActiveMessageAddress.amAddress in CC2420ActiveMessageP
fan out, but there is no combine function specified for the return type
nesc1: warning: calls to ActiveMessageAddress.amGroup in CC2420ActiveMessageP fa
n out, but there is no combine function specified for the return type
nesc1: warning: calls to SubSend.getPayload in UniqueSendP fan out, but there is
no combine function specified for the return type
nesc1: warning: calls to SubSend.maxPayloadLength in UniqueSendP fan out, but th
ere is no combine function specified for the return type
nesc1: warning: calls to SubReceive.payloadLength in UniqueReceiveP fan out, but
there is no combine function specified for the return type
nesc1: warning: calls to SubReceive.getPayload in UniqueReceiveP fan out, but th
ere is no combine function specified for the return type
nesc1: warning: calls to Receive.receive in UniqueReceiveP fan out, but there is
no combine function specified for the return type
nesc1: warning: calls to Receive.receive in CC2420ReceiveP fan out, but there is
no combine function specified for the return type
compiled RadioCountToLedsAppC to build/micaz/main.exe
11778 bytes in ROM
262 bytes in RAM
avr-objcopy --output-target=srec build/micaz/main.exe build/micaz/main.srec
avr-objcopy --output-target=ihex build/micaz/main.exe build/micaz/main.ihex
writing TOS image
-------------------------------------------------------------------------------------------------------------------
Here is the content of modified RadioCountToLedsC.nc:
configuration RadioCountToLedsAppC {}
implementation {
components MainC, RadioCountToLedsC as App, LedsC;
components new TimerMilliC();
components CC2420ActiveMessageMineC as MyAM;
//components CC2420ActiveMessageC as MyAM;
App.Boot -> MainC.Boot;
App.Receive -> MyAM.Receive[AM_RADIO_COUNT_MSG];
App.AMSend -> MyAM.AMSend[AM_RADIO_COUNT_MSG];
App.AMControl -> MyAM;
App.Leds -> LedsC;
App.MilliTimer -> TimerMilliC;
App.Packet -> MyAM;
}
-------------------------------------------------------------------------------------------------------------------
Could anyone help me know what the problem was and how to get rid of
these warnings.
Thanks,
~Hieu
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help