Re: [Tinyos-help] Program flow

2007-02-13 Thread Aditya Bhave

Hello,

SO suppose both of my init's and start's do some variable setting and return
SUCCESS.
What code gets exceuted next?

In my application, my mote does something only when it receives the first
packet over the radio. SO my start and init just set some state variables
and then I wait for ReceiveMsg.receive to be called.

While my mote is waiting, what code gets exceuted on the processor. Is there
some system idle process that gets executed and if so, where and what is the
name of the corresponding component?

Thanks for your help

On 2/13/07, Philip Levis [EMAIL PROTECTED] wrote:


On Feb 13, 2007, at 1:01 PM, Ankur Kamthe wrote:

 Read this http://www.tinyos.net/tinyos-2.x/doc/html/tep107.html for
 more details
 But from what I gather, its initialization first then the start
 routines are called sequentially.
 So, its init, init, start, start


TEP 107 is about TinyOS 2.x, not 1.x.

But your conclusion is correct. A fan-out does not make calls in
parallel (it can't, given there is a single thread of execution); it
calls each one in an unspecified order.

Phil
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help





--
regards,
Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Re: [Tinyos-help] how to program the MICA2.................??

2006-08-09 Thread Aditya Bhave
In short,make mica2compiles the program into an executablemake mica2 install compiles the program and loads it onto the mote (ull have to edit the MakeRules file in /apps to tell the installer what port to use etc
make mica2 reinstallsimply loads an existing executable onto the moteOn 8/9/06, Zane D. Purvis 
[EMAIL PROTECTED] wrote: if i want to burn sample programs given in tinyos (like BLINK
 etc)... i have builded it using make command. i have got it for all the platforms. i have one srec file and an exe file... could anyone now get me how to burn the code into MICA2. is there
 anyIDE for that.?? i have both the programming board and mica board with me in order to test.The first part of the tutorial may be helpful to you:
http://www.tinyos.net/tinyos-1.x/doc/tutorial/index.htmlAfter you've got your environment set up correctly, you can just usethe command:make install mica2___
Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Re: [Tinyos-help] packet loss

2006-07-23 Thread Aditya Bhave
Yup only the first packet will most likely get through. Another way to do this is to keep a repeatable timer say every 100 ms (enough for one packet to get through) and every time the timer fires to send the subsequent messages
On 7/23/06, Michael Schippling [EMAIL PROTECTED] wrote:
You can't do that...send() doesn't have a queue so only the first message will go out.The rest, until you get a sendDone(), will be ignored. I beleive thereturn value from send() indicates whether it was successful.
The way to send as fast as possible is to post the subsequent send()sfrom sendDone().MSNilay Chheda wrote: i am trying to broadcast packets back to back. The problem is that most of the packets are either lost or are not sent at all.
 the following is the code snippet.result_tsendData(int dest, uint8_t com) {if (!pending) { pending = TRUE; . . .
 atomic { message-src = ""> message-dest = dest; // for bcast message-com = com; // for JOIN } for(i=0;i5; i++)
{call Send.send(TOS_BCAST_ADDR, sizeof(IntMsg), data); } . . }event result_t Send.sendDone
(TOS_MsgPtr msg, result_t success) {if (pending  msg == data) { pending = FALSE; } return SUCCESS; }
 Can anybody guide how to avoid packet losses? Thanks Nilay 
 ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU 
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help-- 
regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Re: [Tinyos-help] multihop problems

2006-07-10 Thread Aditya Bhave
A packet will multi-hop if node2 is not within radio range of base. Its packet will reach node1 only who then has to send it to the base station.Im not really able to understand your question. To find out neighbors, have each mote broadcast a special packet
typedef struct Neighbor{ int src; /* source mote ID */ int hopCount; /* initilaize to 0 */}If a mote A receives a packet of the above type from node B with hopCount set to 0, it can conclude that B is its neighbor. Also by controlled flooding, these packets need to be multihopped across the network with the hopCount being incremeneted each time. In this way, motes can get an idea about the topology of the network.
To start the nodes in sequence, let each node wait for a START message from the base station i.e they are all in receive mode not doing anything till the START message arrives. The base station will transmit the START message.
On 7/10/06, Tehn Yit Chin [EMAIL PROTECTED] wrote:
Hi,I have the following setupnode2 -- node1 -- base|^++node2 and node1 has the surge application installed.base has the TOSBase installed.
No matter what I try, I can't seem to get a packet to multihop fromnode2 to node1 to base. All the packets appears to single hop to the base.A couple of questions.1) Does the base node needs to transmit for node1 to work out one of its
neighbours is node 0? One of things I tried is to install surge intobase node but this does not appears to be cause the packet to multihop.2) Will the packet multihop with only two nodes in the network?
3) Is there a power up sequence? ie base node first, and then node 1 andthe node 2?4) What are the conditions that will cause a packet to multihop?Any suggestion is appreciated.--Tehn Yit Chin
Embedded System Engineer, Grey Innovation Pty. Ltd.___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help-- 
regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Re: [Tinyos-help] multihop problems

2006-07-10 Thread Aditya Bhave
I never used surge. Its quite simple to write the multi-hop routine yourself. Check back in the message archives. I had provided the detailed code.I used controlled flooding. Another way to do routing is to build routing tables, something i think surge may be doing, wherein the packets try and follow an optimum path to the destination. But the code outline will be similar in this case as well.
On 7/10/06, Tehn Yit Chin [EMAIL PROTECTED] wrote:
Thanks for the information.Does the multihop works out-of-the-box with the surge application?Tehn Yit ChinEmbedded System Engineer, Grey Innovation Pty. Ltd.Aditya Bhave wrote: A packet will multi-hop if node2 is not within radio range of base. Its
 packet will reach node1 only who then has to send it to the base station. Im not really able to understand your question. To find out neighbors, have each mote broadcast a special packet
 typedef struct Neighbor { int src; /* source mote ID */ int hopCount; /* initilaize to 0 */ } If a mote A receives a packet of the above type from node B with hopCount
 set to 0, it can conclude that B is its neighbor. Also by controlled flooding, these packets need to be multihopped across the network with the hopCount being incremeneted each time. In this way, motes can get an idea
 about the topology of the network. To start the nodes in sequence, let each node wait for a START message from the base station i.e they are all in receive mode not doing anything till
 the START message arrives. The base station will transmit the START message. On 7/10/06, Tehn Yit Chin [EMAIL PROTECTED]
 wrote: Hi, I have the following setup node2 -- node1 -- base |^ ++
 node2 and node1 has the surge application installed. base has the TOSBase installed. No matter what I try, I can't seem to get a packet to multihop from node2 to node1 to base. All the packets appears to single hop to the
 base. A couple of questions. 1) Does the base node needs to transmit for node1 to work out one of its neighbours is node 0? One of things I tried is to install surge into
 base node but this does not appears to be cause the packet to multihop. 2) Will the packet multihop with only two nodes in the network? 3) Is there a power up sequence? ie base node first, and then node 1 and
 the node 2? 4) What are the conditions that will cause a packet to multihop? Any suggestion is appreciated. -- Tehn Yit Chin
 Embedded System Engineer, Grey Innovation Pty. Ltd. ___ Tinyos-help mailing list 
Tinyos-help@Millennium.Berkeley.EDU https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Re: [Tinyos-help] help:event Receive.receive(),simultaneous!!

2006-07-06 Thread Aditya Bhave
I dont think you can.Packet loss is a problem in all networks-wired or wireless.

What you can do is reduce the rate at which the sending node injects
packets into the network. For example suppose node 1 wants to send 2
messages in succession. After sending the first message, wait for a
period of time say 500 ms (sufficient for the packet to actualy
eave the sending node and possibly reach other nodes). On timer firing,
send the second message.
Another way to solve the problem is to let your application return the receive buffer back to TinyOS as soon as possible

event TOS_MsgPtr ReceiveMsg.receive(TOS_MsgPtr m)
{
 //extract the payload field and copy to local storage space
// post a task to process the payload
return m;
}

In this way, if your storage space is quite big (capable of holding say
5 packets), you increase the probability of allowing TinyOS to receive
each message properly and your application program to not miss them.
 On 7/6/06, Munaretto, Daniel [EMAIL PROTECTED] wrote:
Hi all,is
there a fast and easy way to receive all messages arriving from the
network without lossing packets (simultaneous arriving messages to the
same node)?Because if i only useevent TOS_MsgPtr ReceiveDataNC.receive(TOS_MsgPtr m){Datagram *dg=(Datagram *)m-data;[..]..[..]
 return m;}i
see in TOSSIM that some packets too close with each other (i mean in
the time,really closed in arriving time), only the first is taken and
elaborated,the next ones are not considered.But
i want to consider all these packets for my project, it's really
important!!!I hope someone can help me!Thanks for your availability!!CheersDaniele___Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] About Events and Commands

2006-06-29 Thread Aditya Bhave
The SendMsg.send() coomand is actually implemented in AMstandard.nc. You must be reading Chapter 4 of the tutorials. Look at the wiring of SendMsg.send. It is wired to GenericComm. This in turn is wired to AMStandard which in turn uses several low level system modules wherein the individual bits are actually transmitted
over the radio.My advice is unless you want to change the tinyOS functionality, there is no point in trying to figure out where the functionality is actually being implememnted. Having a higher level understanding of how send and receive work and how they should be used is sufficient to build applications.
There is a very very deep tree of modules in tinyos. Most of the system modules are in the tos/lib or tos/system folders. On 6/29/06, saadia khan
 [EMAIL PROTECTED] wrote:
While going through the tutorials and apps in tinyOS, i found that the events of an interface are implemented in the modules that use them and the commands are called but not implemented in those modules, 
e.g., in Surge Application, the SurgeM.nc (the module) uses Send interface and implements the event Send.sendDone() and calls the command Send.send() in the task SendData(). My question is that where is the functionality for the 
Send.send() command ?Kindly someone guide me in this case because as far as i've understood, there should be another module that gives implementation of this command but i'm not able to find it.thankyou
S Khan
___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Help me with power range and signal strength!

2006-06-28 Thread Aditya Bhave
Many users (including me) have had no success using the CC1000Control interface and the setRFPower commands. The way I did it was to edit the CC1000Control.h file in /tos/system/platforms/mica2. Ive forgotten the excat location now but there is a 2-D array called PARAM..something somewhere. In the xxxMhz array (xxx is the radio freq of the motes u are using..there is a seperate array for each type of freq) change the value of the PA_POW variable. (this is a register in the CHIPCON chip that can be used to adjust the transmitter power). By default it is 0xff on MICA2 motes. When i changed it to 0x00 i got a range of about 4-6 feet in an indoor lab environment.
On 6/28/06, Rahul Sawant [EMAIL PROTECTED] wrote:
Hi

Use the formula on pg 28 of this document. 
http://www.xbow.com/Support/Support_pdf_files/MPR-MIB_Series_Users_Manual.pdf


also u have declared data in MyMsg to be an array of size 18 ie it runs from 0 to 17 and u r using
data[18] is it right just check that.

Rahul
On 6/27/06, Hieu Tran 
[EMAIL PROTECTED] wrote: 


Hi all!
I searched in the archieves and found some of the topics that disscuss about power range however I still have problem with it.

in the CC1000ControlM at the line:

// Set default parameter values // POWER 0dbm gCurrentParameters[0xb] = ((8  CC1K_PA_HIGHPOWER) | (0  CC1K_PA_LOWPOWER)); call HPLChipcon.write(CC1K_PA_POW, gCurrentParameters[0xb]);


I guess I can make a change to power range here so I make change :

 gCurrentParameters[0xb] =1;//I want to change to the minimum power range call HPLChipcon.write(CC1K_PA_POW, gCurrentParameters[0xb]);

After that I recompile my program and run it. However It seems that my change does not go in to effect (the range is still large).
Can you tell me the correct way to make the change to the power range?

I have one more question about signal strength.

I made the change at the TOS_Base, I try to read the signal strength from TOS_Msg

event TOS_MsgPtr RadioReceive.receive(TOS_MsgPtr Msg) {
cmd= (struct MyMsg *)Msg-data;
temp1 = (int8_t) (((Msg-strength)8)  0xF);//take 8 MSB
cmd-data[17] = temp1;//put in to packet at data[17]temp2 = (int8_t) ((8(Msg-strength))  0xF);//take 8 LSBcmd-data[18] = temp2;//put in ton packet at data[18]
..


Here is MyMsg structure:
typedef struct MyMsg { uint16_t seqno; int8_t action; uint16_t source; uint8_t hop_count; uint16_t destaddr;   int8_t data[18];} MyMsg;


After that, I use Listen program to read signal strength value, however all the times these values are always 0 or 1 (convert to decimal number). Can anyone tell me is this a correct way to receive signal strength? If correct, how canconvert this value to dBm?


many thanks!

Tran!






















Yahoo! Messenger with Voice. Make PC-to-Phone Calls
 to the US (and 30+ countries) for 2¢/min or less. 
___Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Fwd: [Tinyos-help] Help me with power range and signal strength!

2006-06-28 Thread Aditya Bhave
-- Forwarded message --From: Aditya Bhave [EMAIL PROTECTED]Date: Jun 29, 2006 12:42 AM
Subject: Re: [Tinyos-help] Help me with power range and signal strength!To: bhushan bhatt [EMAIL PROTECTED]You need to modify the 
CC1000Control.h file in tos/system/platforms/mica2.Im assuming youre motes freq is 914 Mhz.In
that case there is a 2D array called CC1K_Params.Look for
the PA_POW variable under the 914 Mhz range (there is a seperate
row for each type of freq). Look in row 1. It is presently
// PA_POW 0x0b ((0x8CC1K_PA_HIGHPOWER) | (0x0CC1K_PA_LOWPOWER)), 
 //0xffChange the above to// PA_POW 0x0b//  ((0x8CC1K_PA_HIGHPOWER) | (0x0CC1K_PA_LOWPOWER)), 0x00You
can see that I have changed PA_POW to the value 0x00 FROM 0xff
(default). The 0x0b (decimal number 11) is not a value...it indicates
the position of the element within row 1 of the CC1K_Params array. By giving diff values to PA_POW from 00 to ff, you can change the range.Let me know if it works.
If you are using a diff freq mote, change the PA_POW variable corresponding to that freq

On 6/28/06, bhushan bhatt 
[EMAIL PROTECTED] wrote:
I have the same problem and tried to control the power by changing
CC2420 Radio file for tmote but i still cant get the desired range. I
still get range more than 30 feet. Does someone know and have reduced
the range for tmotes ??
BhushanAditya Bhave [EMAIL PROTECTED]
 wrote: Many users (including me) have had no success using the CC1000Control interface and the setRFPower commands. 
The way I did it was to edit the CC1000Control.h file in
/tos/system/platforms/mica2. Ive forgotten the excat location now but
there is a 2-D array called PARAM..something somewhere. In the xxxMhz
array (xxx is the radio freq of the motes u are using..there is a
seperate array for each type of freq) change the value of the PA_POW
variable. (this is a register in the CHIPCON chip that can be used to
adjust the transmitter power). By default it is 0xff on MICA2 motes.
When i changed it to 0x00 i got a range of about 4-6 feet in an indoor
lab environment. 
On 6/28/06, Rahul Sawant [EMAIL PROTECTED] wrote:

 Hi
  Use the formula on pg 28 of this document.  

http://www.xbow.com/Support/Support_pdf_files/MPR-MIB_Series_Users_Manual.pdf   also u have declared data in MyMsg to be an array of size 18 ie it runs from 0 to 17 and u r using data[18] is it right just check that.
  Rahul On 6/27/06, 
Hieu Tran  [EMAIL PROTECTED] wrote:  

  Hi all! I searched in the archieves and found some of the topics that disscuss about power range however I still have problem with it.
  in the CC1000ControlM at the line:  // Set default parameter values // POWER 0dbm gCurrentParameters[0xb] = ((8  CC1K_PA_HIGHPOWER) | (0
  CC1K_PA_LOWPOWER)); call HPLChipcon.write(CC1K_PA_POW, gCurrentParameters[0xb]);   I guess I can make a change to power range here so I make change :   gCurrentParameters[0xb] =1;//I want to change to the minimum power range
 call HPLChipcon.write(CC1K_PA_POW, gCurrentParameters[0xb]);  After
that I recompile my program and run it. However It seems that my change
does not go in to effect (the range is still large).
 Can you tell me the correct way to make the change to the power range?  I have one more question about signal strength.  I made the change at the TOS_Base, I try to read the signal strength from TOS_Msg
  event TOS_MsgPtr RadioReceive.receive(TOS_MsgPtr Msg) { cmd= (struct MyMsg
 *)Msg-data; temp1 = (int8_t) (((Msg-strength)8)  0xF);//take 8 MSB cmd-data[17] = temp1;//put in to packet at data[17]temp2 = (int8_t) ((8(Msg-strength))  0xF);//take 8 LSB
cmd-data[18] = temp2;//put in ton packet at data[18] ..   Here is MyMsg structure: typedef struct MyMsg { uint16_t seqno;
 int8_t action; uint16_t source; uint8_t hop_count; uint16_t destaddr;   int8_t data[18];} MyMsg;   After
that, I use Listen program to read signal strength value, however all
the times these values are always 0 or 1 (convert to decimal number).
Can anyone tell me is this a correct way to receive signal strength? If
correct, how canconvert this value to dBm?   many thanks!  Tran!   
 

   Yahoo! Messenger with Voice. 

Make PC-to-Phone Calls  to the US (and 30+ countries) for 2�/min or less.  ___Tinyos-help mailing list
 Tinyos-help@Millennium.Berkeley.EDU 

https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help   ___
Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU 

https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help -- regards,Aditya Bhave ___

Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU

https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help 
		How low will we go? Check out Yahoo! Messenger's low 

 PC-to-Phone call rates.
-- regards,Aditya Bhave

-- regards,Aditya Bhave

Re: [Tinyos-help] How does event implemented in tinyos?

2006-06-15 Thread Aditya Bhave
in tinyos, events can be preempted by other events. So i think the event sendone() is called immediately,On 6/15/06, Shiyuan 
[EMAIL PROTECTED] wrote:When we say signal Send.sendDone(...), does this put an event in an event
queue - like windows mechnism? Or it will excute the event handler eventresult_t SendMsg.sendDone() function body immediately?Thanks.___Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] Help with simulators

2006-06-12 Thread Aditya Bhave
Hello all,Does any one know of a good simulator (preferably on a Windows based PC) that one can use to develop applications using the motes. I do not have access to the actual hardware and would like to work on projects with simulations. TOSSIM and TinyViz are completely non-intuitive and not documented. 
Specifically, the simulator should allow me to see network topology, simualte events and allow different nodes to run different codes.-- Thank youregards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Re: Neighbor List

2006-06-06 Thread Aditya Bhave
I am not too aware of the Neighbourhood graph. But its a relatively simple matter to code it yourself. Have each mote broadcast a Hello packet. All its neighbours will receive the packet and can record the node IDs in a link list or array. You can even simultaneously record the RSSI and come to know approximately how far each neighbour is.
On 6/7/06, Keyan Mahadevan [EMAIL PROTECTED] wrote:
Hello,
Is there any documentation on how I can use the Neighborhood graph? I basically want each node to have a list of its neighbors. 
Thanks for your help
Kn

___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] Radio receive power

2006-05-28 Thread Aditya Bhave
I am working on the tinyos 1.1.10 environment. I am working with the MICA2 motes having 2 different types of antennas. I want to calibrate the radios so that the one-hop distance is approximately the same between any two pair of motes. The 
CCConst1000.h in /tos/platform/mica folder provides a CCLK1_Param array in which the radio transmit power can be adjusted by setting value of PA_POW. How can I set the sensitivity of the receiver? Which register should i modify to change the receive power? 
I need this information rather urgently. Any help would be greatly appreciated-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] MAC Protocol used

2006-05-25 Thread Aditya Bhave
I think the tinyos-1.1.10 uses simply CSMA not even with collision detection. In fact with wireless, collision detection is difficult due to hidden and exposed station problems. The newer versions of tinyos-1.x (.15 onwards) uses something called B-Mac and S-Mac or at least thats what is proposed to be used. You may want to google these terms to see how they operate or read the following article 
http://www.isi.edu/ilense/macss/On 5/25/06, bhushan bhatt 
[EMAIL PROTECTED] wrote:Hi all, I was just wondering which MAC protocol is used by motes  when they transmit ? Is it some kind of an RTS/CTS with backoff ???
-Bhushan
		Yahoo! Messenger with Voice.
 PC-to-Phone calls for ridiculously low rates.
___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] RE: Welcome to the Tinyos-help mailing list (Digest mode)

2006-05-18 Thread Aditya Bhave
I do not think the JUMP or BRANCH instructuon is actually stored in the interrupt vector table. It would be redundant information. Basically the interrupt vector number is used as an index into the interrupt vector table (IVT). The entry at that index will give the 32 bit address to jump to to execute the interrupt service routine. Where have you read that the instruction is also stored in the IVT?
On 5/18/06, [EMAIL PROTECTED] [EMAIL PROTECTED]
 wrote:Hi , In the reset vector address we place the instruction branch or jump and
even the address to where we have to jump or branch but the addressitself is 32 bits...? How is it that we are able to accommodate the 32 bits address and eventhe instruction in the 32 bits space
Thanks and Regards,PradeepThe information contained in this electronic message and any attachments to this message are intended for the exclusive use of the addressee(s) and may contain proprietary, confidential or privileged information. If you are not the intended recipient, you should not disseminate, distribute or copy this e-mail. Please notify the sender immediately and destroy all copies of this message and any attachments.
WARNING: Computer viruses can be transmitted via email. The recipient should check this email and any attachments for the presence of viruses. The company accepts no liability for any damage caused by any virus transmitted by this email.
www.wipro.com___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help-- 
regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Multi-Hop

2006-05-18 Thread Aditya Bhave
I belive there are multi-hop components in tinyos-1.1.15. But its quite easy to code it yourself. This is what I did in my project.Assume you want to send a packet of type ABC to the base station. ABC can be made to hold your ADC readings.
Each node in the netwrok maintains a link list.. call it ABCReceived. Each node of this link list has one field1. NodeID /* stores the node ID of the mote from which the message was received previously */
Each mote will have a receive event like so event result_t ReceiveMsg.receive(TOS_MsgPtr m){ buffer = *m; /* buffer is module specific */ post process(); return m;}task void process()
{ ABC *p = (ABC*)(buffer.data);  check in link list to see if ABC packet from node p.NodeID has already been received before if(not){  add a new node to link list call it q such that 
q.NodeID = p.NodeID msg = buffer; /* msg is again module specific */ call SendMsg.send(TOS_BCAST_ADDR, sizeof(ABC), msg);}else /* packet has already been received and hence forwarded before */
 do nothing;return;}The above algorithm basically implements controlled flooding forwarding packets along the netwrok if they are new and discarding previosuly received packets. Naturally ABCReceived has to be intialized to an empty list in the init() function of this module.
On 5/18/06, Arya Afrashteh [EMAIL PROTECTED] wrote:
We have developed a small application that reads in data from the ADC andsends this data to the base station which displays it to the computer.Wewant to make our application so that it has multi-hop capability. How
exactly do we add multi-hop capability?Do we simply wire a couple ofinterfaces together and if so, which ones?OR, do we have to construct themulti-hop message with the sequence numbers and everything and send that
along, and implement some other things?RadioCRCPacket as Radio,SHM_SensorM.RadioControl - Radio;SHM_SensorM.RadioSend - Radio;SHM_SensorM.RadioReceive - Radio;
That is the component we currently use in our SHM_Sensor.nc to send broadcastpackets to the base station.___Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Sounder

2006-05-17 Thread Aditya Bhave
I dont see the relationship between surge and sounders. SounderC is a system component (/tos/sensorboards/micasb ) that handles the sounder sensor on the motes. You can do the followingevent TOS_MsgPtr ReceiveMsg.receive
(TOS_MsgPtr m){ /* extratc the payload field of the packet and decide whether to sound the sounder */ /* If so, */ call SounderControl.start();}To stop the sounder call SounderControl.stop
()The above module should usesinterface StdControl as SounderControl;and in the configurationmodule_name.SounderControl - SounderC;You can issue call SounderControl.init() in the init function of the module
On 5/17/06, antonio gonga [EMAIL PROTECTED] wrote:
I've a sound sensor connected in a Mote, i don´t know how to play a sound when I receive data from another mote. I have forward the data packet received to BaseStaion. I'm trying to use surge and SurgeM application but i'm not sure if I will be successfull. 

Thanks



___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] reducing transmission range to 3 feet for Mica2 motes

2006-05-15 Thread Aditya Bhave
If you are using the MICA2 motes with tinyos-1.1.10 you should edit the CC1000Const.h file in /tos/platform/mica2.Scroll down to CC1K_Params[5][31] in the file. Depending on the freq of the motes you are using, you should change the contents of PA_POW at the appropriate place. The default value is 0xff. If you change it to 0x00 you can get a range of 3 feet or around that much.
If you are using tinyos-1.1.15 you should edit the MakeXbowLocal file. Check the manual that comes on the CD to see what and where to change.I perosnally did the above in my project. If you figure out how the same thing can be done using the Pots interface in the program itself, please let me know. Thanx
On 5/15/06, Prashant Kr. Gupta [EMAIL PROTECTED] wrote:
I have been trying to reduce the radio range by using Pot interface...
but it seems that it doesn't helps much... what can i do

thanks
prashant

___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] reducing transmission range to 3 feet for Mica2 motes

2006-05-15 Thread Aditya Bhave
Yes the SetRFPower is supposed to work that way, but on quite a few threads on this mailing list in the past, Ive read that many users did not find any change when issuing this command. I tried to do it myself and it also didnt have any effect. The range remained as large as before.
Editing the file directly seems to work. My MICA2 motes were giving a range of 200 feet when placed on tiled flooring in a corridor 400 ft by 10 ft size enclosed by tiled walls. The environent and height at which the motes are deployed also has significant impact on their range. I was able to get the range down to 4 1/2 feet by setting PA_POW to 0x00 as explained prev. You should experiment with different values in the env you deploy your motes.
Of course as Michael says doing this is a pain because then you cant dynamically change the range in the program.On 5/16/06, Michael Schippling
 [EMAIL PROTECTED] wrote:You should be able to set xmit power dymanically using:
// set Xmit strength// mica2 916 Mhz-200x02 -- 2//-100x09 -- 9//0 (1mw)0x80 -- 128//50xFF -- 255
call CC1000Control.SetRFPower( value );There is a similar i'face for the micaz as well, but I don't havean example right at hand.Also if you compile under the contrib/xbow tree you get the MakeXbowLocal
file that has a compile time define for xmit power. In fact, I was notcompletely successful at getting the mica2 radio to work without the xbowcode. I know that tree is usable with 1.1.7 and above, so you don't need
to go all the way to .15.MSAditya Bhave wrote: If you are using the MICA2 motes with tinyos-1.1.10 you should edit the CC1000Const.h file in /tos/platform/mica2. Scroll down to CC1K_Params[5][31] in the file. Depending on the freq of
 the motes you are using, you should change the contents of PA_POW at the appropriate place. The default value is 0xff. If you change it to 0x00 you can get a range of 3 feet or around that much.
 If you are using tinyos-1.1.15 you should edit the MakeXbowLocal file. Check the manual that comes on the CD to see what and where to change. I perosnally did the above in my project. If you figure out how the same
 thing can be done using the Pots interface in the program itself, please let me know. Thanx On 5/15/06, *Prashant Kr. Gupta* [EMAIL PROTECTED]
 mailto:[EMAIL PROTECTED] wrote: I have been trying to reduce the radio range by using Pot interface... but it seems that it doesn't helps much... what can i do
 thanks prashant ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU
 mailto:Tinyos-help@Millennium.Berkeley.EDU 
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
 -- regards, Aditya Bhave  ___
 Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU 
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] extracting RSSI value for mica2

2006-05-13 Thread Aditya Bhave
The RSSI value is captured by the MICA2 motes on ADC channel 0. In the new tinyos, msg - strength does give the RSSI value directly. Otherwise youll have to read from the ADC channel 0 to get it. Roberto posted something on this a few days back. Youll have to do some conversion on the value obtained. Read the archives to find out the conversiob formula
On 5/13/06, tejasw [EMAIL PROTECTED] wrote:
hi all,I am using mica2 and I need to extract the RSSI value from a receivedpacket..however the current apps dont seem to support extracting RSSIvalue..Also, in TOSSIM the strength value always shows up '0'..
Any help..?Thanx in advancetejasw___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help-- 
regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Cannot create docs

2006-05-11 Thread Aditya Bhave
The only reason i can think of is the wrong paths set in the Makefile of the apps in the/contrib folder. Edit the Makefile to include the Makerules file in the /apps folder of the main tinyos tree.(See the Makefile in tinyos-1.x
/apps/Blink to see how the Makefile should be written)On 5/11/06, 闻磊 [EMAIL PROTECTED] wrote:
hi,
recently i work on the Tinyos to complete my bachelor paper.But i meet some strange things,so i want to ask if anyone could solve it.
I use tinyos1.1.0.it is ok when i compile the programs in the apps,but when i turn into the /tinyos-1.x/contrib,all the apps in the location cannot be compiled,and when i use the command 'make docs pc',there is a lot of error.

Any answer concerning this would be appreciated.
Thank you.

___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] how two components share data

2006-05-09 Thread Aditya Bhave
Yes the shared header file approach def works. I have included three such header files in various components in my project and it seems to be working smoothly. Just make sure to include the access to the shared data within atomic statements to avoid race conditions.
On 5/9/06, Michael Schippling [EMAIL PROTECTED] wrote:
I couldn't make externs work between components either...So I have used an interface in each component that takes a pointerto the variable in question and saves it locally. Each componentthen does an indirect access to the variable through the pointer.
e.g.:in comp1 --long stuff;setup(){call comp2.setVariable( stuff );}in comp2 --long *stuffp;setVariable( long *p )
{// save pointerstuffp = p;// set variable to something*stuffp = 0xDADABABE;}However it has occurred to me that one should be able to do it via
a shared header file, and I just tried it. This actually compilesand looking at the app.c output it seems ok, but I don't know if itreally works because I haven't run the code...in header.h --#ifndef DEFED
uint16_t monstate;#define DEFED#endif // DEFEDextern uint16_t monstate;in each component --includes header;implementation
{// use global variablemonstate = 0xBEEF;}If you try the header method, let me know how it goes...MS
[EMAIL PROTECTED] wrote: hi, I m trying how ti share a variable between two components. I m using global variable concept, but not working. Did anyone like this or any other method is there?
 Thanks, kiran. ___ Tinyos-help mailing list Tinyos-help@Millennium.Berkeley.EDU
 https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help___
Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Mica2 Transmission Range

2006-05-08 Thread Aditya Bhave
HI Brett,If you are using the tinyos 1.1.15 check out the MakeXbowLocalfile in the /apps folder. You can manually set the radio power from 0x00 to 0xff. This will in turn affect the transmission range of the motes. In an indoor environment, 0x00 gave us a range of 7 feet between two mica2s (run the CntToLedsAndRfm and RfmToLeds application on 2 motes to get an idea of the range) while 0xff gave us a range of over 250 feet. The range was similar in an outdoor env although more packet losses were encountered. Raising the motes aobe the ground def helps in increading the range
On 5/8/06, Brett Parsons [EMAIL PROTECTED] wrote:
Hi All,Can anyone give me a rough idea as to the maximum transmission range ofa mica2 mote?I know that this would be influenced by many factors(e.g., interference), but if I were to place some motes in the middle of
an open field, approx. how far would they be able to transmit?Thanks,Brett P___Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Help me with oscilloscope GUI!

2006-04-28 Thread Aditya Bhave
You can also open a new cygwin window and run the oscilloscope program from there. It still connects successfully to the SerialForwarderOn 4/28/06, Diego Bartolomé Arquillo
 [EMAIL PROTECTED] wrote:







You must execute the Serial Forwarder in background 
(with  at the end).
BR,
Diego


  - Original Message - 
  
From: 
  Hieu Tran 
  To: 
tinyos-help@Millennium.Berkeley.EDU 
  
  Sent: Friday, April 28, 2006 12:51 
  PM
  Subject: [Tinyos-help] Help me with 
  oscilloscope GUI!
  
  Hi all!
  I am just getting started with TinyOS and Nesc. From the tutorial 6, I 
  ran the Serial Forwarder Program and I can see the packet counter sent over 
  the serial port. Next I move to the oscilloscope GUI, in the tutorial 
  said:
  
  Leaving the serial forwarder running, execute the 
  command:
  java net.tinyos.oscope.oscilloscope
  
  However, I can not type this command on the cygwin window 
  since the Serial Forwarder program is running. Thats why I can not see the GUI 
  simulation. Any one give me some help to overcome this trouble?
  Many thanks!
  
  
  Yahoo! 
  Messenger with Voice. PC-to-Phone calls for ridiculously low rates.
  
  

  ___Tinyos-help mailing 
  listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] MICA2 radio doubt....urgent help needed

2006-04-27 Thread Aditya Bhave
Hi all,I have already posted this question before but havent got any satisfactory replies. Everyone seems to say to dig through the various layers of code and figure it out. I need to know how the radio works on the MICA2 motes. Does anybody know for sure...specifically i have two questions
1. From the tutorial, it seems that the send buffer is 1 packet wide. Can someone explain how exactly the send() command of GenericComm works. IS it a blocking or non blocking send? What happens if i try to send packet2 while packet1 is still being transmitted? Does the lower layer protocol take care of collisions etc
2. The same doubt is with receive. How big is the receivers buffer? What happens if I am inside a receive() event, processing packet1 and packet2's receive event is triggered. Will my one-packet size buffer be overwriiten? Can I do something like this in my code
event TOS_MsgPtr ReceiveMsg.receive(TOS_MsgPtr msg){ /* extract the payload field, AnchorXY is my custom defined packet, i know for sure this event is triggered on receiving a packet of this type */
 struct AnchorXY *q = (AnchorXY*)(msg - data);  /* do some processing on this data call a local function process() */ process(*q); /* Multi-hop this message */
 call SendMsg.send(TOS_BCAST_ADDR, sizeof(struct AnchorXY), msg); return msg;}The above code is sometimes working sometimes not. I suspect its because the send() command is non blocking therefore msg is returned to TinyOS before it is sent over the radio. Now maybe the buffer is getting overwritten with next received packet and that is why some packets are not getting sent. Is my reasoning right?
I request someone to please provide detailed explanation on how the radio works. The pdf file that comes with the CD isnt of much help. What does an application programmer need to know about send and receive to avoid the problems we are facing..(packets not getting sent). I am using the latest TinyOS . I dont know the number...think 
1.1.0... I ordered the prof kit from Crossbow just a month back.Thanx in advance-- regards,Aditya Bhave

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] Help with porting programs to new TinyOS

2006-04-13 Thread Aditya Bhave
I wrote a localization application using the old tinyos (i dont know the version, it just says tinyos-1.x, but i purchased the full thing from Crossbow in June 2003). There ListenRaw was working properly.Recently about a week back, i purchased the latest professiuonal kit with a MIB510 instead of the earlier parallel ported programming board and installed the lastest tinyos. When I try and run Listen application, it reports a packet length of 0. How did this happen. The packet i want to send to the UART is 10 bytes and it worled perfectly well with the old tinyos
Any help would be greatly appreciated-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] multiple source codes for tinyviz

2006-03-20 Thread Aditya Bhave
Yes thats the biggest disadv of TinyViz. One solution is to combine your n source codes into 1 and use a switch case statement to decide which code to run on each mote. The other alternative is to go for another simulator like Avrora that does allow what u want.
On 3/20/06, Roberto [EMAIL PROTECTED] wrote:
if I want to simulate under tinyviz different motes with differentsource codes, for examples for coordinator, router etc...I cannot do it?I read that tinyviz is able to simulate only one source code___
Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDUhttps://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Light barrier application

2006-03-15 Thread Aditya Bhave
HI Christian,Why dont use the same principle used in burglar detection. Assuming your bottles are passing by on a conveyor belt for example, you could position two sensors, one on either side of the belt. One sensor continously sends an infrared beam to the other and when the passing bottle intercepts the beam, the receiving sensor will notice the interruption and record the bottle. After waiting for say t ms by which time the bottle should pass the sensors completely, the receiving sensor can once again wait for beam intercepted events.
Of course this may consume a lot of power since the sending mote is continously on. An alternative is to let the sending mote send the beam for t ms every T secs (say 100 ms every 1 sec) and sleep the remaining time. Of course this means some kind of time sync between sleeping and the time the bottles pass by on the belt. Do they pass by randonly or is there some measure of confidence?
This proj seems interesting. Please let me know how u finally do it.On 3/13/06, Hoell, Christian (EXT) 
[EMAIL PROTECTED] wrote:Hi everyone,I'm currently developing an application counting bottles on a
transportation system.I'd like to use the photo sensors on the tmote.But it's quite hard for me to detect a bottle passing by without usingan extra light.I've also played with a white LED and try to trigger on the reflexion of
the bottles but didn't manage to count all the bottles or I got two ormore triggers per bottle.My current approach lookes like that:I'm sampling the photo sensor a 10ms the compare the last two valueswith the current one and if the present is about 10% bigger than the
former one I'll set a flag (high flag) and the go on sampling and waitfor some value where the present value is about 10% smaller than theformer ones.It works ok but as I was telling you before the results are not as good
as they should be.Furthermore I think with sampling at 10ms there's also a lot of powerconsumed by the microcontroller.Could anyone propose a differet approach to me?Thanks a lotGreetings
Christian___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] diff between task and command

2006-03-15 Thread Aditya Bhave
What is the difference between a task and a command. Arent both of them preemtable by events, but cannot preempt each other? What is the use of posting a task if in any case the posted tasks are going to be run sequentially?
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] RSSI

2006-03-14 Thread Aditya Bhave
>From what I read in the manual of MICA2 whenever the motes receive a signal, the stength of the signal is stored in ADC channel 0. So u can access the channel 0 on ADC and retrieve this value. Then there are some standard formulas that give you the range given the signal strength and receiver characteristics such as surface area of receiver etc
I wish to do the same thing in my [roject. If u happen to find out what components and interfaces to use for this purpose , please let me know.On 3/13/06, 
Roberto Pagliari [EMAIL PROTECTED] wrote:
How can I do RSSI measurements?___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeu cley.edu/cgi-bin/mailman/listinfo/tinyos-help-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] Help with ranging

2006-03-09 Thread Aditya Bhave
Hello,I am implementing a localization algorithm with the MICA2 motes. I want to perform refinement using RSSI as the ranging technology.1. Can someone please tell me what are the relevant componets and interfaces to do ranging or do I need to code everything from scratch? 
2. Does TinyOs have support for better ranging technologies-- regards,Aditya Bhave

___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Help with simulations

2006-03-09 Thread Aditya Bhave
Hi Vinayak,The simulators u mentioned do not allow preemption. In my project, we are using severak timers and many things are being done on these timers firing. Are there any simulators that allow preemption?
Secondly whats the diff between commands and tasks. As per the doc, tasks cannot preempt each other. Aren't commands tasks only? What does posting a task mean? If TinyOS is going to exceute the tasks in the order they are posted, I might as well create my own components to do the joib and call them in the right order.
Thanx in advanceOn 3/9/06, Vinayak Naik [EMAIL PROTECTED] wrote:
You can try Avrora or EmTOS simulators.- VinayakOn 3/9/06, 
Aditya Bhave [EMAIL PROTECTED]
 wrote:
Can someone please provide me details on a good simulator for TinyOs. In our project we have to constantly test and debug using the actual hardware and its taking a hell lot of time. Nido is no good because each mote in Nido needs to run the the same code, whereas in my project i have three groups of motes each running a seperate code. 
TinyViz looks good but there is no doc on it..and I cant seem to figure out how to use it Any help would be appreciated-- regards,
Aditya Bhave

___Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] UART

2006-03-08 Thread Aditya Bhave
Well you should read chapter 4 of the online tutorials. Basically TinyOS defines the SendMsg interface whereby you as an application programmer can define where to send your packets. One of the paramters of the send() command of this interface is the destination field. If you specify TOS_UART_ADDR for this field, the command will transmit the packet over the serial port cable to your PC. The programming board must be connected to the PC's serial port and the mote running this code must be placed on the board.
On the PC you need a program that will read the serial port and display the data received. Two in-built programs exist. ListenRaw will display the data on the console (cygwin). SerialForwarder will send this data to TCP port 9000 and act as a server. Details of these 2 programs can be found in chapter 6 of the tutorials.
On 3/8/06, wassim znaidi [EMAIL PROTECTED] wrote:
i'm a new user of the tinyos and i don't understand about UART i found it many times (UART adress, ...)please can any one help me or tell me where can i found an explanation of this definition
tanks

___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] Help with TinyDB

2006-03-04 Thread Aditya Bhave
When I try to run TinyDBMain.class as explained in the tutorial, it gives the following error

Exception in thread main java.lang.NoClassDefFoundError: TinyDBMain

Can someone please help

Thanx-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


[Tinyos-help] Help with radio in MICA2

2006-03-03 Thread Aditya Bhave
Hi I am working on the MICA2 motes on the topic of localization. I had two questions1. In nesC, how do i change the power of the radio. Tha manual says that appropriate values need to be written to register 0x0B. Do i need to use assembly? 
2. Can I program the mote to transmit at a particular freq but receive a range of frequencies3. Can someone provide me a link to some documentation that explains how radio comm is handled in nesC. I have already read the tutorial but need to know in more detail.
 1. What happens when the mote wants to send/receive a packet while another packet is in the process of being sent/received? 2. What is the size of the buffer that the receive event accesses? From the tutorial it seems capable of holding only one packet of type TOS_Msg. Can I program to have a bigger buffer size?
Any help would be greatly appreciated.Thanx-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


Re: [Tinyos-help] Help with radio in MICA2

2006-03-03 Thread Aditya Bhave
Hi Ian.I am not too clear what is TDMA protocol (is it Ttime division multiple access..how does it work)

We are using the GenericComm component for radio communication. I had specifically two questions

1. As per your reply, TinyOs has some sort of an internal queue for the
send operation. I can initiate multiple sends and TinyOs buffers them
and sends them whenever the channel is free. Is that right? But this
kind of protocol is CSMA and is used in Ethernet, and from what Ive
read, the hidden station problem and exposed station problem in wirless
networks doesnt make CSMA a good choice for a protocol.

2. If a mote is busy receiving a Tos_Msg packet and another packet
comes along, does it ignore the second packet or puts it in some
internal buffer? Increasing the size of the data payload field in the
Tos_Msg packet is not going to work, what i wanted to know is the
response of the mote when 2 or more distinct (in terms of handler IDs)
TOS_Msg packets arrive on the mote?
-- regards,Aditya BhaveOn 3/3/06, Vinayak Naik [EMAIL PROTECTED] wrote:
-- Forwarded message --
From: Ian Welch [EMAIL PROTECTED]Date: Mar 3, 2006 11:53 AM
Subject: Re: [Tinyos-help] Help with radio in MICA2To: Vinayak Naik [EMAIL PROTECTED]
-The Radio works on TDMA, so it listens to the channel it's going to transmit on, if it's clear it sends it's packet, if it's not clear it waits a random ammount of time before a retrying.
-You can change the size of the Tos_Msg to send more or less data. All data is held in Tos_Msg data array. Refer to the tutorials to get more info on this.
-IanOn 3/3/06, Vinayak Naik 

[EMAIL PROTECTED] wrote:

1. You can use CC1000Control interface to control radio tx power. The command is CC1000Control.SetRFPower(1)- Vinayak
On 3/3/06, Aditya Bhave 
[EMAIL PROTECTED] wrote:



Hi I am working on the MICA2 motes on the topic of localization. I had two questions1. In nesC, how do i change the power of the radio. Tha manual says that appropriate values need to be written to register 0x0B. Do i need to use assembly? 
2. Can I program the mote to transmit at a particular freq but receive a range of frequencies3. Can someone provide me a link to some documentation that explains how radio comm is handled in nesC. I have already read the tutorial but need to know in more detail.
 1. What happens when the mote wants to send/receive a packet while another packet is in the process of being sent/received? 2. What is the size of the buffer that the receive event accesses? From the tutorial it seems capable of holding only one packet of type TOS_Msg. Can I program to have a bigger buffer size?
Any help would be greatly appreciated.Thanx-- regards,Aditya Bhave

___Tinyos-help mailing list


Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help


___Tinyos-help mailing listTinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help




-- regards,Aditya Bhave
___
Tinyos-help mailing list
Tinyos-help@Millennium.Berkeley.EDU
https://mail.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help