[Tinyos-help] Problem with SplitControl and MultiHop

Inés C.M ines.cabrera at gmail.com
Thu Mar 10 01:40:03 PST 2005


I am using contrib/ucb/apps/SurgeTelos, and LQIMultiHopRouter, as used
in SurgeTelos.

/Inés


On Thu, 10 Mar 2005 01:32:31 -0800, Joe Polastre <joe.polastre at gmail.com> wrote:
> Which Surge and which MultiHop routing implementation are you using?
> 
> If you're using MultiHop LQI, then everything shoudl work fine.
> 
> If you're using MintRoute or ReliableRoute, then calling 'enableAck()'
> will disable promiscuous mode and cause the routing layer go into a
> state of disarray.
> 
> are you using apps/Surge or contrib/ucb/apps/SurgeTelos?
> 
> -Joe
> 
> 
> On Thu, 10 Mar 2005 10:16:12 +0100, Inés C.M <ines.cabrera at gmail.com> wrote:
> > I understand, but I can't find any problems in this initialization,
> > and still it does not work. Or should I call start() in MultiHop
> > "explicitly", AFTER the initDone() in HumidityControl, instead of
> > wiring it to StdControl?
> >
> >   command result_t StdControl.init() {
> >     initialize();
> >     call HumidityControl.init();
> >     return SUCCESS;
> >   }
> >
> >   event result_t HumidityControl.initDone() {
> >     return SUCCESS;
> >   }
> >
> >   command result_t StdControl.start() {
> >     call HumidityControl.start();
> >     return SUCCESS;
> >   }
> >
> >   event result_t HumidityControl.startDone() {
> >     uint16_t randomtimer;
> >     call CC2420Control.SetRFPower(15);
> >     call MacControl.enableAck();
> >     randomtimer = (call Random.rand() & 0xfff) + 1;
> >     call Timer.start(TIMER_ONE_SHOT, randomtimer);
> >     call TemperatureError.enable();
> >     return SUCCESS;
> >   }
> >
> > Thanks a lot again!
> > Inés
> >
> >
> > On Wed, 9 Mar 2005 09:49:27 -0800, Joe Polastre <joe.polastre at gmail.com> wrote:
> > > init MUST be called when the application boots, not at a random time
> > > during program execution.
> > >
> > > All init() functions must complete, then you can call start()
> > > functions.  If you call init then start on multihop routing, then call
> > > init on the sensor, it is possible that the sensor will re-initialize
> > > the some components of the system which would be in error.
> > >
> > > -Joe
> > >
> > >
> > > On Wed, 09 Mar 2005 17:09:39 +0100, Inés C.M <ines.cabrera at gmail.com> wrote:
> > > > Hi everyone,
> > > >
> > > > I am trying to modify the Surge application for Telos to obtain
> > > > different sensor measurements through multihop routing. By now I
> > > > manage to obtain data from all the motes and all the sensors, EXCEPT
> > > > from the temperature and humidity ones, which both use the
> > > > SplitControl interface. The problem is that, if I call
> > > > HumidityControl.init() to initialise them, as done in the Oscilloscope
> > > > application, the multihop routing stops working and I can only get
> > > > data from the root. All the other motes dissapear from the GUI in the
> > > > java Surge application, and SerialForwarder only gets data from the
> > > > mote attached to the computer (root). Any clue about why this is
> > > > happening?
> > > >
> > > > Any help is welcome!
> > > > Thanks a lot,
> > > > Inés.
> > > > _______________________________________________
> > > > Tinyos-help mailing list
> > > > Tinyos-help at Millennium.Berkeley.EDU
> > > > http://mail.Millennium.Berkeley.EDU/mailman/listinfo/tinyos-help
> > > >
> > >
> >
>


More information about the Tinyos-help mailing list