.. _atsamr34_xpro: SAM R34 Xplained Pro Evaluation Kit ################################### Overview ******** The SAM R34 Xplained Pro evaluation kit is ideal for evaluation and prototyping with the SAM R34 Cortex®-M0+ processor-based microcontrollers. The kit includes Atmel’s Embedded Debugger (EDBG), which provides a full debug interface without the need for additional hardware. The SAMR34 and SAMR35 parts are produced as a System-in-Package (SiP), including both a SAML21 die, and a Semtech SX1276 LoRa radio die. This board is also referred to as DM320111. .. image:: ../../../../../../../../../zephyr/boards/arm/atsamr34_xpro/doc/img/atsamr34-xpro.jpg :align: center :alt: ATSAMR34-XPRO Hardware ******** - ATSAMR34J18 ARM Cortex-M0+ processor at 48 MHz - 32.768 kHz crystal oscillator - 256 KiB flash memory, 32 KiB of SRAM, 8KB Low Power SRAM - One yellow user LED - One mechanical user push button - One reset button - On-board USB based EDBG unit with serial console Supported Features ================== The atsamr34_xpro board configuration supports the following hardware features: .. list-table:: :header-rows: 1 * - Interface - Controller - Driver / Component * - NVIC - on-chip - nested vector interrupt controller * - Flash - on-chip - Can be used with LittleFS to store files * - SYSTICK - on-chip - systick * - WDT - on-chip - Watchdog * - GPIO - on-chip - I/O ports * - PWM - on-chip - Pulse Width Modulation * - USART - on-chip - Serial ports * - I2C - on-chip - I2C ports * - SPI - on-chip - Serial Peripheral Interface ports * - TRNG - on-chip - True Random Number Generator The following hardware features are supported by Zephyr, but not yet fully supported by the SOC: .. list-table:: :header-rows: 1 * - Interface - Controller - Driver / Component * - LoRa Radio - on-chip - Internal SX1276 LoRa Radio Other hardware features are not currently supported by Zephyr. The default configuration can be found in the Kconfig ``boards/arm/atsamr34_xpro/atsamr34_xpro_defconfig``. Pin Mapping =========== The SAM R34 Xplained Pro evaluation kit has 3 GPIO controllers. These controllers are responsible for pin muxing, input/output, pull-up, etc. For more details please refer to `SAM R34 Family Datasheet`_ and the `SAM R34 Xplained Pro Schematic`_. .. image:: ../../../../../../../../../zephyr/boards/arm/atsamr34_xpro/doc/img/atsamr34-xpro-pinout.jpg :align: center :alt: ATSAMR34-XPRO-pinout Default Zephyr Peripheral Mapping: ---------------------------------- - SERCOM0 UART TX : PA04 - SERCOM0 UART RX : PA05 - SERCOM1 I2C SDA : PA16 - SERCOM1 I2C SCL : PA17 - SERCOM4 SPI MISO : PC19 - SERCOM4 SPI MOSI : PB30 - SERCOM4 SPI SCK : PC18 - SERCOM4 GPIO CS : PB31 - SERCOM5 SPI MISO : PB02 - SERCOM5 SPI MOSI : PB22 - SERCOM5 SPI SCK : PB23 - SERCOM5 GPIO CS0 : PA23 - SERCOM5 GPIO CS1 : PA14 - USB DP : PA25 - USB DM : PA24 - GPIO/PWM LED0 : PA19 System Clock ============ The SAMR34 MCU is configured to use the 32.768 kHz external oscillator with the on-chip PLL generating the 48 MHz system clock. Serial Port =========== The SAMR34 MCU has six SERCOM based USARTs with one configured as USART in this BSP. SERCOM0 is the default Zephyr console. - SERCOM0 115200 8n1 - connected to the onboard Atmel Embedded Debugger (EDBG) PWM === The SAMR34 MCU has 3 TCC based PWM units with up to 4 outputs each and a period of 24 bits or 16 bits. If :code:`CONFIG_PWM_SAM0_TCC` is enabled then LED0 is driven by TCC0 instead of by GPIO. SPI Port ======== The SAMR34 MCU has 6 SERCOM based SPIs, with two configured as SPI in this BSP. - SERCOM4 - connected to the internal LoRa radio - SERCOM5 - connected to EXT1 and EXT3 Programming and Debugging ************************* The SAM R34 Xplained Pro comes with a Atmel Embedded Debugger (EDBG). This provides a debug interface to the SAMR34 chip and is supported by OpenOCD. Flashing ======== #. Build the Zephyr kernel and the ``hello_world`` sample application: .. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: atsamr34_xpro :goals: build :compact: #. Connect the SAM R34 Xplained Pro to your host computer using the USB debug port. #. Run your favorite terminal program to listen for output. Under Linux the terminal should be :code:`/dev/ttyACM0`. For example: .. code-block:: console $ picocom -b 115200 /dev/ttyACM0 - Speed: 115200 - Data: 8 bits - Parity: None - Stop bits: 1 #. To flash an image: .. zephyr-app-commands:: :zephyr-app: samples/hello_world :board: atsamr34_xpro :goals: flash :compact: You should see "Hello World! atsamr34_xpro" in your terminal. References ********** .. target-notes:: .. _Microchip website: https://www.microchip.com/en-us/development-tool/dm320111 .. _SAM L21 Family Datasheet: https://ww1.microchip.com/downloads/en/DeviceDoc/SAM_L21_Family_DataSheet_DS60001477C.pdf .. _SAM R34 Family Datasheet: https://ww1.microchip.com/downloads/en/DeviceDoc/SAM-R34-R35-Low-Power-LoRa-Sub-GHz-SiP-Data-Sheet-DS70005356C.pdf .. _SAM R34 Xplained Pro Schematic: https://ww1.microchip.com/downloads/Secure/en/DeviceDoc/SAMR34_SiP_Reference_Design_Package_V3.0.exe .. _Semtech SX1276: https://www.semtech.com/products/wireless-rf/lora-transceivers/sx1276