Reference Radio-driver Implementation

Dear RIOTers,

at Phytec, we are currently working on a Radio-driver implementation for the Freescale Kinetis-MKW2x CPU. Basic Radio-functionalities exists using the old RIOT-network interface. Before we start a pull request, we want to adapt the driver to the new RIOT-network interface.

I´ve also looked at PR/1733, that provides the adaption of the CC2420 driver to the new network interface. But in this Radio-driver, transceiver.h is also included. Thats a bit confusing to me. Is the transceiver interface needed for the CC2420-driver?

As I understand it, the old transceiver interface must not be used anymore?

Is there currently any driver interface that can be used as reference, to understand the complete system?

Thanks in advance,

Best regards Jonas Remmert

Hello Jonas, truth is we are currently somewhat in a transition phase. We want the new netdev interface and have in place as soon as possible, but there are still modules and applications that use the old transceiver interface. Moreover, the cc2420 is older than the netdev API and was just adapted to it (to avoid confusion: the adaption to netdev is not even merged, yet [1]). I think a better (though in my eyes still not perfect, since it’s also serving the transceiver API) reference implementation is the new cc110x driver by Fabian Nack. For IEEE 802.15.4 maybe the Xbee driver by Kévin Roussel [2] is a better reference than the cc2420.

[1] https://github.com/RIOT-OS/RIOT/pull/1733 [2] https://github.com/RIOT-OS/RIOT/pull/2250/files