[Tinyos-devel] Low power settings
Miklos Maroti
mmaroti at math.u-szeged.hu
Mon Jun 16 12:33:09 PDT 2008
I can implement the SendNotifier for the RF230, but I think this
should be done in a platform independent way. Miklos
On Thu, May 29, 2008 at 9:48 AM, Andreas Koepke <koepke at tkn.tu-berlin.de> wrote:
> If we agree on a smaller LPL interface, it would be no problem to
> replace the SleepTime interface for the eyesIFX. For some MACs it does
> not make sense to set the interval on a per packet basis, but a fat
> interface is fine with me - the pointless commands are silently ignored.
>
> The LplSettingsC could appear as a separate component, but why do you
> want to wire it _through_ ActiveMessageC? If provided on a per MAC
> basis, it could also be wired directly to the MAC.
>
> As for the SendNotifier: I agree that the AM send virtualizer is the
> most appropriate component to host it -- no need for a platform specific
> implementation.
>
> Best regards, Andreas
>
> Philip Levis:
>> There's been a good deal of discussion on the tradeoffs in low power
>> settings for the radio. On one hand, it's clear that some protocols
>> and applications need to set LPL settings on a per-packet basis. On
>> the other hand, as the check interval is shared across protocols, the
>> common case is that one configures a single low-power setting for the
>> node, so that you don't have to configure each subsystem and protocol
>> individually.
>>
>> This is a proposal for how to handle these two needs. It involves
>> expanding the signature of AMSenderC, adding some additional logic to
>> AMQueueImplP (probably forking it for a no low-power version), and
>> adding a new component LowPowerSettingsC.
>>
>> The component LplSettingsC provides the LowPowerListening interface.
>> The goal is that the top-level application component, when it handles
>> Boot and before it turns on the radio through SplitControl, calls this
>> component to configure the LPL settings. This is essentially a check
>> interval, which sets both sender transmit duration and receiver wakeup
>> interval. LplSettingsC calls ActiveMessageC to set its rx check
>> interval with this value.
>>
>> AMQueueImplP handles SendNotifier.aboutToSend from ActiveMessageC,
>> which it dispatches to the appropriate send client. AMSenderC also
>> provides SendNotifier through a pass-through wiring. AMQueueImplP has
>> a default event handler, which calls LplSettingsC. LplSettingsC, when
>> handing SendNotifier.aboutToSend, calls LowPowerListening on
>> ActiveMessageC to set the Lpl duration on the outgoing packet. If a
>> particular AMSender needs to do something special, it can wire to
>> aboutToSend and configure the LPL settings itself.
>>
>> This design requires all ActiveMessageC components provide
>> SendNotifier and LowPowerListening. Currently, the CC2420, CC1000,
>> RF230, and XE1205 all provide the latter (LowPowerListening), but only
>> the CC2420 provides SendNotifier.
>>
>> Thoughts?
>>
>> Phil
>>
>> _______________________________________________
>> Tinyos-devel mailing list
>> Tinyos-devel at millennium.berkeley.edu
>> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-devel
> _______________________________________________
> Tinyos-devel mailing list
> Tinyos-devel at millennium.berkeley.edu
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-devel
>
More information about the Tinyos-devel
mailing list