So: Contiki, neat-o teeny-tiny footprint "OS" with IP6 stacklet, protothreads, various wizardry, and deep lack of coherence.
For the benefit of those stuck on the other end of search-tubes, I thought I'd note that RDC stands for "Radio Duty Cycle". Do you know how often it mentions that in the source or documentation? As far as I can tell, once. Gits. (cf. NETSTACK_RDC, NETSTACK_CONF_RDC, etc.)
So it turns out that the stack actually runs;
- TCP/UDP
- MAC
- RDC "MAC"
- Radio driver
And it turns out the "drivers" in core/net/mac are actually a random sprinkling of RDC and MAC drivers. Anything exporting an "rdc_driver" being one, and "mac_driver" being the other. So, obviously:
MAC drivers
csmatdma_mac
ctdma_mac_driver
nullmac
RDC drivers
contikimaccxmac
lpp
nullrdc_framer
nullrdc
sicslowmac_driver

