= Description = The ACKMAC is a modified ALOHA MAC that serves as the framework for all other MACs. In this scheme, nodes have no knowledge of any other nodes; there is no carrier sensing (CSMA/CA), and there is no request-to-send/clear-to-send (RTS/CTS). Instead, nodes transmit whenever they have information to transmit, and only move on to the next packet once the original transmit is acknowledged (ACKed). If no ACK is received, a collision is inferred and the packet is re-transmitted. This behavioral description can be transformed to a state-machine, which in turn can be transformed to C-code. [[Image(ALOHAflowchart.jpg, align=center, 600)]] We bridge that state machine to a source and a sink (ethernet and OFDM physical layer respectively for a transmitter, and vice versa for a receiver). In that way, we have a project that creates a virtual wire between two WARP nodes. Any ethernet and higher layer traffic will be forwarded across the wireless medium. Note: Further detail regarding the interrupt system can be found in [http://direct.xilinx.com/bvdocs/appnotes/xapp778.pdf XAPP778] = Code = Latest Revision: [source:/ResearchApps/MAC/ACKMAC/ackmac.c@L ackmac.c], [source:/PlatformSupport/WARPMAC/warpmac.c@L warpmac.c], [source:/PlatformSupport/WARPMAC/warpmac.h@L warpmac.h] Note: This code relies on many external dependencies and will not compile on traditional architectures. = Documentation = To be released soon.