]> oss.titaniummirror.com Git - tinyos-2.x.git/commitdiff
Updated behavior and comments
authorrincon <rincon>
Tue, 10 Jul 2007 17:20:46 +0000 (17:20 +0000)
committerrincon <rincon>
Tue, 10 Jul 2007 17:20:46 +0000 (17:20 +0000)
apps/tests/cc2420/LplBroadcastPeriodicDelivery/README.txt
apps/tests/cc2420/LplBroadcastPeriodicDelivery/TestPeriodicP.nc

index e59d430b7d8d4bec7e4de83722b5199d24af1603..b57203e62c2330fadb55e9a4e4b42784bf684525 100644 (file)
@@ -1,22 +1,52 @@
-Tx != 0
-Rx == 0
+README for RadioCountToLeds
+Author/Contact: tinyos-help@millennium.berkeley.edu
 
-This app sends a message from Tx to AM_BROADCAST_ADDR and waits 1000 ms between each delivery
-so the Rx mote's radio shuts back off and has to redetect to receive the next
+Description:
+
+To compile for motes with CC2420 radios, you must do:
+  env CFLAGS="-DLOW_POWER_LISTENING" make <platform>
+
+Install the application to two nodes with the following ID's:
+  Node 0 (Receiver node): id = 0
+  Node 1 (Transmitter node): id = 1 (or.. id > 0)
+
+
+This app sends a message from Transmitter node to 
+AM_BROADCAST_ADDR and waits 1000 ms between each 
+delivery so the Rx mote's radio shuts back off and 
+has to redetect to receive the next
 message.
 
 
+EXPECTED OUTPUT
+  Transmitter Node:
+    * Toggles its led0 every second.
+      - led0 ON indicates transmission, which lasts
+        for a full second.
+
+  Receiver Node:
+     * led1 remains on (except at the beginning)
+     * If led0 lights up after the beginning of the
+       test, without resetting the transmitter node,
+       there is a problem.  This means a duplicate
+       message was received
+     * led2 toggles once each for each transmission
+       received.
+
+Summary:  Receiver node's led2 should be toggling once
+a second and led0 should never light up (except at the beginning).
+
+
+
+Tools:
+
+RadioCountMsg.java is a Java class representing the message that
+this application sends.  RadioCountMsg.py is a Python class representing
+the message that this application sends.
+
+Known bugs/limitations:
 
-EXPECTATIONS
-Transmitter - always ID 1
-  * Transmitting for 1000 ms, and then pause for 1000 ms.  
-  * Broadcast address will not cut transmission short under any circumstances
-  * Led0 indicates transmission
-  * Transmitter receive check interval once every 1000 ms
-  
-Receiver - any other ID than 1
-  * Receive check interval once every 1000 ms
-  * Led1 indicates final reception
+None.
 
-Led2 is left up to DutyCycleP to toggle when the radio is on.
 
+$Id$
index d572ac0bb897d54f51c56208d08b4170dfc77fa6..fa5c1917f6629f7c14c1a105b0e594c100683389 100644 (file)
@@ -56,6 +56,8 @@ implementation {
   uint8_t count;
   message_t fullMsg;
   bool transmitter;
+
+  uint8_t lastCount;
   
   /**************** Prototypes ****************/
   task void send();
@@ -89,8 +91,20 @@ implementation {
   }
   
   event message_t *Receive.receive(message_t *msg, void *payload, uint8_t len) {
+    TestPeriodicMsg *periodicMsg = (TestPeriodicMsg *) payload;
+
     if(!transmitter) {
-      call Leds.led1Toggle();
+      if(lastCount == periodicMsg->count) {
+        call Leds.led0On();
+        call Leds.led1Off();
+      } else {
+        call Leds.led1On();
+        call Leds.led0Off();
+      }
+
+      lastCount = periodicMsg->count;
+
+      call Leds.led2Toggle();
     }
     return msg;
   }