]> oss.titaniummirror.com Git - tinyos-2.x.git/commitdiff
updated README.txt, changed a comment
authorjanhauer <janhauer>
Thu, 2 Apr 2009 14:02:11 +0000 (14:02 +0000)
committerjanhauer <janhauer>
Thu, 2 Apr 2009 14:02:11 +0000 (14:02 +0000)
tos/lib/mac/tkn154/DispatchSlottedCsmaP.nc
tos/lib/mac/tkn154/DispatchUnslottedCsmaP.nc
tos/lib/mac/tkn154/README.txt

index 9d551042bb4e16dacaea188d9988a73304600a48..7492d54094b1788455f972d410e2a8e82395d222 100644 (file)
@@ -205,7 +205,6 @@ implementation
       m_lastFrame = m_currentFrame;
       m_currentFrame = NULL;
       m_txStatus = IEEE154_NO_BEACON;
-      dbg_serial("DispatchSlottedCsmaP", "CAP component got token, remaining time: %lu\n");
       post signalTxDoneTask();
       return;
     } else if (capDuration < guardTime) {
@@ -644,8 +643,11 @@ implementation
     uint8_t *payload = (uint8_t *) frame->data;
     uint8_t *mhr = MHR(frame);
     uint8_t frameType = mhr[MHR_INDEX_FC1] & FC1_FRAMETYPE_MASK;
+
     if (frameType == FC1_FRAMETYPE_CMD)
       frameType += payload[0];
+    dbg("DispatchSlottedCsmaP", "Received frame, DSN: %lu, type: 0x%lu\n", 
+        (uint32_t) mhr[MHR_INDEX_SEQNO], (uint32_t) frameType);
     atomic {
       if (DEVICE_ROLE && m_indirectTxPending) {
         message_t* frameBuf;
index f997b7986ec5c6411e8a2666e1f0cbd527570c95..b323dcefd45e7b3eb0553d8886c5fc5517041d2d 100644 (file)
@@ -468,9 +468,10 @@ implementation
     uint8_t *mhr = MHR(frame);
     uint8_t frameType = mhr[MHR_INDEX_FC1] & FC1_FRAMETYPE_MASK;
 
-    dbg("DispatchUnslottedCsmaP", "Received frame, DSN: %lu, result: 0x%lx\n", (uint32_t) mhr[MHR_INDEX_SEQNO]);
     if (frameType == FC1_FRAMETYPE_CMD)
       frameType += payload[0];
+    dbg("DispatchUnslottedCsmaP", "Received frame, DSN: %lu, type: 0x%lu\n", 
+        (uint32_t) mhr[MHR_INDEX_SEQNO], (uint32_t) frameType);
     atomic {
       if (m_indirectTxPending) {
         message_t* frameBuf;
index 01e3989edc674adbe2578933d991a33696e776aa..e091c419909a86e740adecf24bac10cd03f188d1 100644 (file)
@@ -1,29 +1,37 @@
 This directory contains "TKN15.4", a platform-independent IEEE 802.15.4-2006
-MAC implementation. The code is under active development, but most of the 
-functionality described in the standard is implemented (and cursorily tested). 
-The MAC itself is platform-independent, but it requires (1) a suitable radio 
-driver, (2) Alarms/Timers with symbol precision and (3) some "platform glue" 
-code (defining guard times, etc.). Currently the only supported platform is 
-TelosB (but without additional hardware support on TelosB the timing in 
+MAC implementation. The code is under active development, but most of the
+functionality described in the standard is implemented and tested.
+The MAC itself is platform-independent, but it requires (1) a suitable radio
+driver, (2) Alarms/Timers with symbol precision and (3) some "platform glue"
+code (defining guard times, etc.). Currently the only supported platform is
+TelosB (but without additional hardware support on TelosB the timing in
 beacon-enabled mode is not standard compliant).
 
-This code is the basis for the implementation of the TinyOS 15.4 WG:
-http://tinyos.stanford.edu:8000/15.4_WG
-
-Status 3/4/09
--------------
+Status (last updated 4/2/09)
+----------------------------
 
 Missing functionality:
-- security 
 - GTS 
-- PAN ID conflict resolution
-- multiple indirect transmissions to the same destination
+- security services
+- PAN ID conflict notification/resolution
+- indirect transmissions are incomplete, this is missing:
+  -- returning an empty DATA frame when there is no data for the device
+  -- set pending flag if there are multiple indirect transmissions pending
+  -- purging indirect transmissions on MLME_PURGE.request
+  -- keep frame in transaction queue in case CSMA-CA algorithm fails
+- responding to active scans in nonbeacon-enabled PANs
 
-Documentation
--------------
 
-A technical report on TKN15.4 is under way and will be available at:
-http://www.tkn.tu-berlin.de/publications/reports.jsp
+Known Issues:
+- resetting the MAC during operation (via MLME_RESET) has not been tested
+- if initial beacon Tx timestamp is invalid, then coordinator can hang 
+- frame pending flags are (need to be) always set in the ACK headers
+- transmitting coordinator realignment frames has not been tested
+- using an incoming and outgoing superframe at the same time has not been tested
+- during an ongoing CSMA-CA transmission incoming frames are ignored
+- on a beacon-enabled PAN: if the device cannot find the beacon the DATA frame 
+  is not transmitted (but it should be transmitted using unslotted CSMA-CA, see 
+  Sect. 7.5.6.1 "Transmission")
 
 Implementation 
 --------------
@@ -39,6 +47,15 @@ upper case". To match the syntax used in the IEEE 802.15.4 standard the
 interfaces provided by the MAC to the next higher layer deviate from this
 convention (they are all caps, e.g. MLME_START).
 
+Documentation
+-------------
+
+A technical report on TKN15.4 is available here:
+http://www.tkn.tu-berlin.de/publications/papers/TKN154.pdf
+
+TKN15.4 is the basis for the implementation of the TinyOS 15.4 WG:
+http://tinyos.stanford.edu:8000/15.4_WG
+
 Copyright
 ---------