[Tinyos-help] BaseStationCC2420 does not act as a sniffer: patch
David Moss
dmm at rincon.com
Tue Jan 30 09:50:08 PST 2007
Here's what I'm seeing, correct me if I'm wrong.
The CC2420BaseStation receives messages over the radio
through CC2420ActiveMessageC's Receive interface. This
interface goes through an address check before delivery:
if (call AMPacket.isForMe(msg)) {
return signal Receive.receive[call
AMPacket.type(msg)](msg, payload, len - CC2420_SIZE);
} ...
In my local version of CC2420BaseStation, I made a copy of
CC2420ActiveMessageP.nc into the CC2420BaseStation
directory and removed this check.
Note that connecting the base station to the snoop
interface isn't what you want either - then you receive
every message except messages destined for the base
station's address.
-David
On Tue, 30 Jan 2007 08:29:03 -0800
Philip Levis <pal at cs.stanford.edu> wrote:
> On Jan 30, 2007, at 6:40 AM, Alban Hessler wrote:
>
>> Hi everyone,
>>
>> We have found a small bug in the file CC2240ControlP.nc
>>for the
>> BaseStationCC2420 application of T2.
>>
>> In order to be a sniffer (that's what BaseStation is
>>according to
>> the readme), the BaseStation should disable the address
>>filtering
>> of the CC2420. For that to be done, it must explicitly
>>set the bit
>> to 0 in the registry, as the default reset value is 1.
>>(datasheet
>> of CC2420, p.65)
>>
>> So the code to set the configuration register in
>>CC2240ControlP.nc
>> should be the following:
>>
>> call MDMCTRL0.write( (( 1 <<
>>CC2420_MDMCTRL0_RESERVED_FRAME_MODE ) |
>> ( 2 << CC2420_MDMCTRL0_CCA_HYST ) |
>> ( 3 << CC2420_MDMCTRL0_CCA_MOD ) |
>> ( 1 << CC2420_MDMCTRL0_AUTOCRC ) |
>> ( 2 << CC2420_MDMCTRL0_PREAMBLE_LENGTH )) &
>> ~( 1 << CC2420_MDMCTRL0_ADR_DECODE));
>>
>>
>> Notice the added mask at the end of the instruction.
>>
>> Best Regards,
>>
>> Alban Hessler & Evgeny Osipov
>>
>
> This isn't necessary. It's not a read-modify-write of
>the register, just a plain write.
>
> Phil
>
> _______________________________________________
> 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