]> oss.titaniummirror.com Git - tinyos-2.x.git/blobdiff - tos/chips/rf2xx/rf230/RF230RadioP.nc
automatically request acks for non-broadcast messages in LPL mode
[tinyos-2.x.git] / tos / chips / rf2xx / rf230 / RF230RadioP.nc
index 57ad57a9b4c48ace9f68173b733afd1783c3f997..f4b0eab716172d4bfd62c7768d5bf90b3eaec53d 100644 (file)
@@ -189,6 +189,14 @@ implementation
                call Ieee154PacketLayer.setDestPan(msg, grp);
        }
 
+       command error_t ActiveMessageConfig.checkFrame(message_t* msg)
+       {
+               if( ! call Ieee154PacketLayer.isDataFrame(msg) )
+                       call Ieee154PacketLayer.createDataFrame(msg);
+
+               return SUCCESS;
+       }
+
 /*----------------- CsmaConfig -----------------*/
 
        async command bool CsmaConfig.requiresSoftwareCCA(message_t* msg)
@@ -312,7 +320,12 @@ implementation
 
 #ifdef LOW_POWER_LISTENING
 
-       async command bool LowPowerListeningConfig.getAckRequired(message_t* msg)
+       command bool LowPowerListeningConfig.needsAutoAckRequest(message_t* msg)
+       {
+               return call Ieee154PacketLayer.getDestAddr(msg) != TOS_BCAST_ADDR;
+       }
+
+       command bool LowPowerListeningConfig.ackRequested(message_t* msg)
        {
                return call Ieee154PacketLayer.getAckRequired(msg);
        }