Hello,
I am using TinyOS 2.1 and Telosb motes, I am programming for multi-hop
connection, finding routes and transmitting packets from the find routes were
working fine.
When I take a deep look, I had a problem in collecting neighbor nodes, if my
transmission power is increased to 0dbm (maximum), provided all the nodes are
in the transmission range with others. still each node could not collect all
the neighbors from the network ( 10-15 motes) .
I checked with my code, if network is 4 in size ( say i have source node (S),
destination node (D) and two intermediate nodes (I1 and I 2))
I could collect, source node collects [ I1 and I2 as neighbors], Intermediate
node 1[ I2 and S as neighbors] and Destination node collects[S, I1 and I2 as
neighbors] and destination node could be the neighbor to others only if it
broadcast the route reply packet. so here I point only for route request.
if network is 15 in size ( say i have source node (S), destination node (D)
and twelve intermediate nodes (I1 to I 12))
source node could collect only (7 neighbors) , destination node (7 neighbors)
and each intermediate nodes (collection varies form 5-10 neighbors).
(provided, I have checked all the nodes in the networks have broadcast once)
If anyone have come across these type of errors, please point out what the
mistake am I doing?
event void radio_timer.fired(){
// code to transmit the packet
}
event message_t* rreqreceiver.receive(message_t* msg, void* payload, uint8_t
len) {
if (len == sizeof(RouteDiscovery_t)) {
RouteDiscovery_t *rd_msg = (RouteDiscovery_t*) payload;
if (rd_msg->type==RREQ_phase){
// collect the neighbor id
// check for duplicate route request ( so each node
broadcast only once)
if (rd_msg->desn!=TOS_NODE_ID){ // I am not the destination
// code to send the packet from intermediate nodes
}else{ // I am the destination
generate route reply and broadcast it
}
}
}
return msg;
}
Thanks,
Swetha
[email protected]
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help