[riot-users] Exchange of the transceiver module on the SAMR21 Xplained Pro Platform

Hauke Petersen hauke.petersen at fu-berlin.de
Tue Feb 7 17:27:46 CET 2017


Hi Friedrich,

acutally what you want to do is quite simple. You actually don't even 
need to exchange the transceiver, you could as well run your system with 
both of them, the at86rf + your PLC transceivers.

So if you take the gnrc_networking example as a base, and say that your 
PLC driver comes with all the neccessary auto_init code and board 
configuration (more of this below), all you need to do is:
```
USEMODULE=YOUR_PLC_DRIVER_NAME_HERE BOARD=samr21-xpro make all
```
This will build the GNRC networking example and link your PLC 
transceiver right in.

Now about the auto_init code: have a look at the auto_init code for the 
at86rf transcevier (-> sys/auto_init/netif/auto_init_at86rf2xx.c), or 
maybe also the code for the enc28j60 (Ethernet), as this might be closer 
to your PLC device. This is what you have to implement for your PLC 
device as well.

Regarding the parameters for your PLC driver: have a look at the device 
driver development guide [1], especially the part about the default 
parameter file. This should give you all the information you need.

Hope this is what you were looking for and happy hacking,
Hauke

[1] 
https://github.com/RIOT-OS/RIOT/wiki/Guide:-Writing-a-device-driver-in-RIOT


On 07.02.2017 10:59, Wiegel, Friedrich (IAI) wrote:
>
> Hello everybody,
>
> as part of my master thesis at the Karlsruhe Institute of Technology, 
> I will connect a Powerline transceiver to the SAMR21 Xplained Pro 
> platform. This one runs with RIOT OS. For the PLC transceiver, I 
> develop the driver, which we also want to make open source.
>
> The transceiver communicates with the host μC via API via UART. That 
> means, the driver looks similar to the Xbee drivers from 
> *_../RIOT/drivers/xbee/._*
>
> After completion of the driver I would like to replace the AT86RF233 
> transceiver from SAM R21 Xplained Pro platform buy PLC transceiver.
>
> *Unfortunately, until now I can't figure out how to do that. Is there 
> any documentation that you could recommend?*
>
> I have read all the tutorials and how-tos as well as documentation 
> that I have found so far. I know that a driver is a module and I know 
> how to assign a module such as shell to the makefile of some 
> application. In the makefile.dep of the board I found the following:
>
> *ifneq (,$(filter gnrc_netdev_default netdev_default,$(USEMODULE)))*
>
> *  USEMODULE += at86rf233*
>
> *Endif*
>
> I guess I need to replace this and the SPI assignments in the 
> *bord.h*. Is that right?
>
> I would be very grateful for your help.
>
> Best regards,
>
> Friedrich Wiegel
>
>
>
> _______________________________________________
> users mailing list
> users at riot-os.org
> https://lists.riot-os.org/mailman/listinfo/users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.riot-os.org/pipermail/users/attachments/20170207/3b6fc69e/attachment.html>


More information about the users mailing list