]> oss.titaniummirror.com Git - tinyos-2.x.git/commitdiff
resurrect the dummy low power listening
authormmaroti <mmaroti>
Thu, 15 May 2008 07:04:12 +0000 (07:04 +0000)
committermmaroti <mmaroti>
Thu, 15 May 2008 07:04:12 +0000 (07:04 +0000)
tos/chips/rf230/DefaultMacC.nc
tos/chips/rf230/DummyLayerC.nc
tos/chips/rf230/DummyLayerP.nc [new file with mode: 0644]
tos/chips/rf230/LowPowerListeningLayerC.nc

index 1e767293a141c11055fa3db5c19cd578e450485d..105100edfcb10360a23d5441ee32dd0226c4a2fc 100644 (file)
@@ -72,16 +72,19 @@ implementation
        RF230LayerC.lastTouch -> DefaultPacketC.lastTouch;
 
        components ActiveMessageLayerC;
-#if defined(LOW_POWER_LISTENING)
+#ifdef LOW_POWER_LISTENING
        components LowPowerListeningLayerC;
 #else  
        components new DummyLayerC() as LowPowerListeningLayerC;
-#endif 
+#endif
        components MessageBufferLayerC;
        components UniqueLayerC;
        components TrafficMonitorLayerC;
+#ifdef RF230_SLOTTED_MAC
+       components SlottedCollisionLayerC as CollisionAvoidanceLayerC;
+#else
        components RandomCollisionLayerC as CollisionAvoidanceLayerC;
-//     components SlottedCollisionLayerC as CollisionAvoidanceLayerC;
+#endif
        components SoftwareAckLayerC;
        components new DummyLayerC() as CsmaLayerC;
        components RF230LayerC;
@@ -102,9 +105,11 @@ implementation
        LowPowerListeningLayerC.SubControl -> MessageBufferLayerC;
        LowPowerListeningLayerC.SubSend -> MessageBufferLayerC;
        LowPowerListeningLayerC.SubReceive -> MessageBufferLayerC;
+#ifdef LOW_POWER_LISTENING
        LowPowerListeningLayerC.PacketSleepInterval -> DefaultPacketC;
        LowPowerListeningLayerC.IEEE154Packet -> IEEE154PacketC;
        LowPowerListeningLayerC.PacketAcknowledgements -> DefaultPacketC;
+#endif
 
        MessageBufferLayerC.Packet -> DefaultPacketC;
        MessageBufferLayerC.RadioSend -> TrafficMonitorLayerC;
index f1f6f699792f858351d7bd9e123fe616248de9dc..e3c55dea3352de88b545b3490f41476b9c34a6ff 100644 (file)
@@ -36,9 +36,6 @@ generic configuration DummyLayerC()
                interface RadioCCA;
 
                interface DummyConfig as UnconnectedConfig;
-               interface PacketField<uint16_t> as UnconnectedPacketSleepInterval;
-               interface IEEE154Packet as UnconnectedIEEE154Packet;
-               interface PacketAcknowledgements as UnconnectedPacketAcknowledgments;
        }
 
        uses 
@@ -52,11 +49,6 @@ generic configuration DummyLayerC()
                interface Receive as SubReceive;
 
                interface DummyConfig as Config;
-               interface PacketField<uint16_t> as PacketSleepInterval;
-               interface IEEE154Packet;
-               interface PacketAcknowledgements;
-
-               interface LowPowerListening as UnconnectedLowPowerListening;
        }
 }
 
@@ -72,8 +64,7 @@ implementation
        Receive = SubReceive;
 
        Config = UnconnectedConfig;
-       PacketSleepInterval = UnconnectedPacketSleepInterval;
-       IEEE154Packet = UnconnectedIEEE154Packet;
-       PacketAcknowledgements = UnconnectedPacketAcknowledgments;
-       LowPowerListening = UnconnectedLowPowerListening;
+
+       components DummyLayerP;
+       LowPowerListening = DummyLayerP.LowPowerListening;
 }
diff --git a/tos/chips/rf230/DummyLayerP.nc b/tos/chips/rf230/DummyLayerP.nc
new file mode 100644 (file)
index 0000000..8ce3261
--- /dev/null
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2007, Vanderbilt University
+ * All rights reserved.
+ *
+ * Permission to use, copy, modify, and distribute this software and its
+ * documentation for any purpose, without fee, and without written agreement is
+ * hereby granted, provided that the above copyright notice, the following
+ * two paragraphs and the author appear in all copies of this software.
+ * 
+ * IN NO EVENT SHALL THE VANDERBILT UNIVERSITY BE LIABLE TO ANY PARTY FOR
+ * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT
+ * OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE VANDERBILT
+ * UNIVERSITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ * 
+ * THE VANDERBILT UNIVERSITY SPECIFICALLY DISCLAIMS ANY WARRANTIES,
+ * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
+ * AND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
+ * ON AN "AS IS" BASIS, AND THE VANDERBILT UNIVERSITY HAS NO OBLIGATION TO
+ * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
+ *
+ * Author: Miklos Maroti
+ */
+
+module DummyLayerP
+{
+       provides interface LowPowerListening;
+}
+
+implementation
+{
+       command void LowPowerListening.setLocalSleepInterval(uint16_t sleepIntervalMs) { }
+
+       command uint16_t LowPowerListening.getLocalSleepInterval() { return 0; }
+  
+       command void LowPowerListening.setLocalDutyCycle(uint16_t dutyCycle) { }
+  
+       command uint16_t LowPowerListening.getLocalDutyCycle() { return 10000; }
+  
+       command void LowPowerListening.setRxSleepInterval(message_t *msg, uint16_t sleepIntervalMs) { }
+  
+       command uint16_t LowPowerListening.getRxSleepInterval(message_t *msg) { return 0; }
+  
+       command void LowPowerListening.setRxDutyCycle(message_t *msg, uint16_t dutyCycle) { }
+  
+       command uint16_t LowPowerListening.getRxDutyCycle(message_t *msg) { return 10000; }
+  
+       command uint16_t LowPowerListening.dutyCycleToSleepInterval(uint16_t dutyCycle) { return 0; }
+
+       command uint16_t LowPowerListening.sleepIntervalToDutyCycle(uint16_t sleepInterval) { return 10000; }
+}
index a60ff739df61208d264dc5c2678b2fd13bd8be70..b1efca25b17cbfa5479c0c5f7df7b5d3eed04514 100644 (file)
@@ -21,6 +21,8 @@
  * Author: Miklos Maroti
  */
 
+#warning "*** USING LOW POWER LISTENING LAYER"
+
 configuration LowPowerListeningLayerC
 {
        provides