On Aug 2, 2007, at 6:39 AM, Mathieu DAVID wrote:
Hi,
We wanted to know about the procedure to change the *CCA threshold*
using tinyOS.
We are trying to simulate the scenario from the tutorials in
chapter 11. However, the nodes were established, but we could not
see the packets received. We attribute this to the default value of
CCA if -110dbm. Is this correct?
And if so, how does one alter the CCA threshold to facilitate
packet transfer?
We are actually facing the problem described in the tutorial with
this output:
1 2 -54.0
2 1 -55.0
1 3 -60.0
3 1 -60.0
2 3 -64.0
3 2 -64.0
DEBUG (1): Application booted.
DEBUG (1): Application booted again.
DEBUG (1): Application booted a third time.
DEBUG (2): Application booted.
DEBUG (2): Application booted again.
DEBUG (2): Application booted a third time.
DEBUG (3): Application booted.
DEBUG (3): Application booted again.
DEBUG (3): Application booted a third time.
DEBUG (1): RadioCountToLedsC: timer fired, counter is 1.
DEBUG (1): RadioCountToLedsC: packet sent.
DEBUG (2): RadioCountToLedsC: timer fired, counter is 1.
DEBUG (2): RadioCountToLedsC: packet sent.
DEBUG (3): RadioCountToLedsC: timer fired, counter is 1.
DEBUG (3): RadioCountToLedsC: packet sent.
DEBUG (1): RadioCountToLedsC: timer fired, counter is 2.
DEBUG (2): RadioCountToLedsC: timer fired, counter is 2.
DEBUG (3): RadioCountToLedsC: timer fired, counter is 2.
In the tutorial, some commands are given to modify the parameters
of the radio channel :
/>>> from TOSSIM import *
t = Tossim([])
r = t.radio()
dir(r)
['__class__', '__del__', '__delattr__', '__dict__', '__doc__',
'__getattr__', '__getattribute__', '__hash__', '__init__',
'__module__', '__new__', '__reduce__', '__reduce_ex__',
'__repr__', '__setattr__', '__str__', '__swig_getmethods__',
'__swig_setmethods__', '__weakref__', 'add', 'connected',
'gain', 'remove', 'setNoise', 'this', 'thisown',
]
/
/The first set of methods (with the double underscores) are ones
that you usually don't call. The important ones are at the end.
They are:/
* /*|add(src, dest, gain)|*: Add a link from //src to //dest with
//gain. When //src transmits, //dest will receive a packet
attenuated by the //gain value. /
* /*|connected(src, dest)|*: Return whether there is a link from
//src to //dest. /
* /*|gain(src, dest)|*: Return the gain value of the link from //
src
to //dest. /
* /*|threshold()|*: Return the CCA threshold. /
* /*|setThreshold(val)|*: Set the CCA threshold value in dBm. The
default is -72dbM./
*But the fact is, None of the two last command exists !! *How can
we solve this issue??
What version are you referring to? For 2.0.1 and 2.0.2, it looks like
the tutorial is out of sync with the code. I removed those two calls
because the CCA threshold is often something the node itself can
adjust. A node can current adjust it by calling
GainRadioModel.setClearValue(). Note that this call is simulator
specific. The hope was that future radio models might incorporate
chip-specific interfaces (e.g., setting the CCA with a CC2420 control
interface) and map them to this underlying call.
Phil
_______________________________________________
Tinyos-help mailing list
[email protected]
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help