This is the documentation for the latest (main) development branch of Zephyr. If you are looking for the documentation of previous releases, use the drop-down menu on the left and select the desired version.

Atmel AT86RF2XX Transceivers

Overview

The Atmel AT86RF2xx is a high performance radio transceiver targeted for IEEE 802.15.4, ZigBee, RF4CE, 6LoWPAN, and ISM applications. The AT86RF2xx is a true SPI-to-antenna solution and can be operated by any external microcontroller.

The current IEEE 802.15.4 AT86RF2xx Zephyr driver currently works with any 2.4 Ghz transceiver, except AT86RF230. The RF2xx driver allows use of IEEE 802.15.4 and Thread protocol network stacks.

This is a generic shield focused not only on Atmel Development Boards Kits. There are compatible designations for AT AVR-RZ600 1 and AT REB233-XPRO 2. This means, any Atmel board with 10-pin Xplained or 20-pin Xplained Pro extension headers can be used. You can check Atmel Xplained Pro Hardware Development Kit User Guide 3 for more information. Besides that, Arduino and MikroBus standard headers are available to complement the shield module configurations. For any other project that doesn’t fit on the current available variations an overlay can be created. However, the overlay is the last resource and is recommended use standard header always possible.

RZ600 Module

The RZ600 Development Kit needs Atmel Xplained or Xplained-Pro header connector. The modules from this kit are available without any transceiver advanced features. For Xplained headers the atmel_rf2xx_xplained 5 must be selected. For Xplained-Pro header the atmel_rf2xx_legacy 7 must be enabled.

AVR-RZ600

Pins Assignment of the RZ600 Module

Pin

Name

Function

1

RST

GPIO - Reset

2

MISC

DNU - Do Not Use

3

IRQ

GPIO - Interrupt

4

SLP_TR

GPIO - Multi purpose control signal

5

CS

SPI Chip Select

6

MOSI

SPI Master Out / Slave In

7

MISO

SPI Master In / Slave Out

8

SCLK

SPI Clock

9

GND

10

VDD

POWER +3.3V

REB233-XPRO Module

The REB233-XPRO development kit uses Atmel Xplained Pro header. It is enabled selecting atmel_rf2xx_xpro 6 option.

REB233-XPRO Top

Pins Assignment of the REB233-XPRO Module

Pin

Name

Function

1

ID

DNU - Do Not Use

2

GND

3

DIG1

DNU - Do Not Use

4

DIG3

DNU - Do Not Use

5

DIG2

GPIO - RX Frame Time Stamping

6

CLKM

DNU - Do Not Use

7

RST

GPIO - Reset

8

9

IRQ

GPIO - Interrupt

10

SLP_TR

GPIO - Multi purpose control signal

11

SDA

EEPROM - AT24MAC602

12

SCL

EEPROM - AT24MAC602

13

14

15

CS

SPI Chip Select

16

MOSI

SPI Master Out / Slave In

17

MISO

SPI Master In / Slave Out

18

SCLK

SPI Clock

19

GND

20

VDD

POWER +3.3V

Note

DIG2 is not current implemented on RF2xx driver.

Arduino Shields

Arduino Uno R3 header is available without advanced features. It is enabled selecting atmel_rf2xx_arduino 8 variante option.

Pins Assignment of the Arduino Shield Modules

Pin

Name

Function

D0

D1

D2

IRQ

GPIO - Interrupt

D3

D4

D5

D6

D7

D8

RST

GPIO - Reset

D9

SLP_TR

GPIO - Multi purpose control signal

D10

CS

SPI Chip Select

D11

MOSI

SPI Master Out / Slave In

D12

MISO

SPI Master In / Slave Out

D13

SCLK

SPI Clock

D14

D15

GND

VDD

POWER +3.3V

VCC

POWER +5.0V

MikroBus Shields

MikroBus header is available available without advanced features. It is enabled selecting atmel_rf2xx_mikrobus 9 variante option.

Pins Assignment of the MikroBus Shield Modules

Pin

Name

Function

AN

RST

GPIO - Reset

RST

CS

CS

SPI Chip Select

SCK

SCLK

SPI Clock

MISO

MISO

SPI Master In / Slave Out

MOSI

MOSI

SPI Master Out / Slave In

VCC-3.3

VDD

POWER +3.3V

GND

GND

GND

GND

VCC-5.0

VCC

POWER +5.0V

SDA

SCL

TX

RX

INT

IRQ

GPIO - Interrupt

PWM

SLP_TR

GPIO - Multi purpose control signal

Supported variations

The below table suggests shield variation accordingly with end user application. When a standard connector (arduino, mikrobus, xplained, xplained-pro) is available on board, user should select the matching shield configuration. When atmel_rf2xx shield is used with a board that doesn’t feature a standard connector, a dedicated <board>.overlay file should be provided. The remaining configurations should be used based on the board standard headers available.

Connector Standard

Shield Designation

Variation

Without standard (overlay)

atmel_rf2xx 4

1

Atmel Xplained header

atmel_rf2xx_xplained 5

2

Atmel Xplained Pro header

atmel_rf2xx_xpro 6

3

Atmel Xplained Pro header

atmel_rf2xx_legacy 7

4

Arduino

atmel_rf2xx_arduino 8

5

MikroBus

atmel_rf2xx_mikrobus 9

6

Requirements

This shield requires a board which provides a configuration that allows an SPI interface, an interrupt signal and two GPIO. (see Shields for more details).

Note

Boards that already have a network interface: Check network documentation to understand how properly configure both interfaces. To keep simple, make sure IEEE 802.15.4 is the only interface enabled at Networking -> Link Layer Options. This will avoid problems running Zephyr samples.

Tested Boards

Board

Disabled Interface

Variation

ATMEL sam4s_xplained

2

ATMEL sam4e_xpro

Ethernet

3 , 4

ATMEL sam_v71_xult

Ethernet

3 , 4 , 5

Sample usage

You can try use IEEE 802.15.4 and/or OpenThread with the Zephyr Echo server and Echo client samples, which provide out-of-the-box configuration for both IEEE 802.15.4 and OpenThread. To enable IEEE 802.15.4 support in the samples, build them with overlay-802154.conf overlay config file. Same way, to enable OpenThread support, build them with overlay-ot.conf overlay config file. See Socket Echo Server and Socket Echo Client for details.

Build and Programming

Set -DSHIELD=<shield designator> when you invoke west build.

west build -b sam4s_xplained samples/net/sockets/echo_server -- -DSHIELD=atmel_rf2xx_xplained -DOVERLAY_CONFIG=overlay-802154.conf
west flash
west build -b [sam4e_xpro | sam_v71_xult] samples/net/sockets/echo_server -- -DSHIELD=[atmel_rf2xx_xpro | atmel_rf2xx_legacy] -DOVERLAY_CONFIG=overlay-802154.conf
west flash
west build -b [sam_v71_xult | frdm_k64f | nucleo_f767zi] samples/net/sockets/echo_server -- -DSHIELD=atmel_rf2xx_arduino -DOVERLAY_CONFIG=overlay-802154.conf
west flash
west build -b lpcxpresso55s69_ns samples/net/sockets/echo_server -- -DSHIELD=atmel_rf2xx_microbus -DOVERLAY_CONFIG=overlay-802154.conf
west flash