I'd have a look at your buffering scheme for when the node is out of range.
It looks like you may be double reporting some messages.
MS
Klaas Thoelen wrote:
> Hi again,
>
> After a of tweaking I didn't get much improvement...
>
> To answer Eric's question (thanks for your reply!); nope, I just have one
> basestation which is sending out beacons. And furthermore also just one free
> node for now, which certainly does _not_ transmit beacons.
>
> I used the printf component to print out the id's of the beacons that my free
> node receives. This is listed below:
>
> $ java PrintfClient -comm [EMAIL PROTECTED]:micaz
> Thread[Thread-1,5,[EMAIL PROTECTED]:57600: resynchronising
> Printf started!
> recv uid: 0
> recv uid: 1
> recv uid: 2
> recv uid: 3
> recv uid: 4
> recv uid: 5
> recv uid: 6
> recv uid: 8
> recv uid: 9
> recv uid: 10
> recv uid: 11
> recv uid: 12
> recv uid: 13
> recv uid: 14
> recv uid: 15 -> here I switched off the basestation
> recv uid: 12
> recv uid: 13
> recv uid: 14
>
> So somehow the messages 12, 13, 14 are reported to be received again while
> the
> basestation is off. Note that my basestation transmits beacons every 5
> seconds
> and that my free node transmits a readings message every 20 seconds. Except
> when
> the free node is out of range, then it stores the readings in its cache.
>
> When I switch off the transmission of readings messages at the free node, I
> don't seem to get these 'ghost' messages anymore. So are there maybe some
> issues
> concerning the buffers that are used for sending and receiving that I'm
> unaware
> of? Or does anybody know what else can be wrong?
>
> I hope somebody can give me a clue!
>
> Best regards!
> Klaas
>
> Eric Decker schreef:
>> Do you have multiple beacons?
>> Regardless I would try embedding in the beacon packet a unique identifier
>> that would
>> allow a clue as to if the packet being received is from the beacon you
>> turned off.
>>
>> eric
>>
>>
>> On Wed, Jun 4, 2008 at 9:17 AM, Klaas Thoelen <[EMAIL PROTECTED]>
>> wrote:
>>
>>> Hi *,
>>>
>>> I'm currently developing an application which involves a basestation
>>> sending out
>>> beacon messages which are to be received by free nodes. Upon reception, a
>>> free
>>> node knows that it is in range of a certain basestation and restarts a
>>> timer. If
>>> the timer fires (the interval is 2.5 times the beaconing interval), the
>>> node is
>>> considered out of range. Pretty simple, I would say.
>>>
>>> However, a fair amount of time when I switch off my basestation (and thus
>>> only 1
>>> free node is on), my free node still receives beacon messages!? Although no
>>> other node is on, let alone transmitting.
>>>
>>> So my question is, where do these 'ghost' messages could come from? I was
>>> thinking multipath, but I doubt it since it happens over an interval of
>>> over
>>> half a minute. Or some messages which are delivered to my application but
>>> which
>>> are not removed from some reception buffer and thus reappear later, but
>>> again I
>>> doubt it since this is not happening all the time...
>>>
>>> My code which handles the reception is:
>>>
>>> event message_t* AMReceiveCommandMsg.receive(message_t* msg_in, void*
>>> payload,
>>> uint8_t len) {
>>> if (len == sizeof(CommandMsg)) {
>>> CommandMsg* cmdMsg = (CommandMsg*)payload;
>>> if (cmdMsg->type == 2) { //this is a beaconing
>>> message
>>> connected = TRUE;
>>> call BeaconTimer.startPeriodic(beacon_interval);
>>> }
>>> }
>>> return msg_in;
>>> }
>>>
>>> I think this is standard as in the tutorials, so I don't see a problem
>>> here.
>>>
>>> I'm using TinyOS 2.0.2 on micaz.
>>>
>>> Does somebody have an idea where I can search for a solution to this?
>>>
>>> Best regards,
>>> Klaas
>>> _______________________________________________
>>> Tinyos-help mailing list
>>> [email protected]
>>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
>>>
>>
>>
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
--
Platform: WinXP/Cygwin
TinyOS version: 1.x, Boomerang
Programmer: MIB510
Device(s): Mica2, MicaZ, Tmote
Sensor board: homebrew
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help