Hi Jan
I found a possible bug in the "DataP.nc" and/or "TKN154NonBeaconEnabledP.nc".
When you use the non-beacon enabled mode as well as the MCPS_PURGE
functionality, the compiler suggests that PurgeGtsDevice and PurgeGtsCoord are
not connected. In fact these don't need to be connected, but something should
be changed at DataP.nc:
command ieee154_status_t MCPS_PURGE.request ( uint8_t
msduHandle) { if (call PurgeDirect.purge(msduHandle) == IEEE154_SUCCESS ||
call PurgeIndirect.purge(msduHandle) == IEEE154_SUCCESS || call
PurgeGtsDevice.purge(msduHandle) == IEEE154_SUCCESS || call
PurgeGtsCoord.purge(msduHandle) == IEEE154_SUCCESS) return
IEEE154_SUCCESS; else return IEEE154_INVALID_HANDLE; }
Maybe change it for (I've not tested it):
command ieee154_status_t MCPS_PURGE.request ( uint8_t
msduHandle) { if (MLME_GET.macBeaconOrder() != 15 &&
MLME_GET.macSuperframeOrder() != 15) // beacon mode { if (call
PurgeDirect.purge(msduHandle) == IEEE154_SUCCESS || call
PurgeIndirect.purge(msduHandle) == IEEE154_SUCCESS || call
PurgeGtsDevice.purge(msduHandle) == IEEE154_SUCCESS || call
PurgeGtsCoord.purge(msduHandle) == IEEE154_SUCCESS) return
IEEE154_SUCCESS; else return IEEE154_INVALID_HANDLE; } else //
non-beacon mode { if (call PurgeDirect.purge(msduHandle) ==
IEEE154_SUCCESS || call PurgeIndirect.purge(msduHandle) ==
IEEE154_SUCCESS) return IEEE154_SUCCESS; else return
IEEE154_INVALID_HANDLE; } }
Am I right?
Regards
David
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help