Loading...
Searching...
No Matches
Acmesystems YARM board

Support for the Acmesystems YARM board. More...

Detailed Description

Support for the Acmesystems YARM board.

Overview

Yarm is a smart and cost effective solution for system integrators to build their own RF applications at 868 MHz avoiding all the hardware design costs requested to start a new custom RF project.

Yarm integrates:

See Acmesystems product page for more information.

In the provided configuration, stdio is available via USB. The board could be configured to provide it on the exposed UART instead, by defining

USEMODULE=stdio_uart

Depending on the connection to your PC, you will probably also need to set PORT_LINUX to a different value (default is /dev/ttyACM0), for instance

PORT_LINUX=/dev/ttyUSB0

Hardware

yarm image

MCU

MCU ATSAML21J18B
Family ARM Cortex-M0+
Vendor Microchip
RAM 32Kb
Flash 256Kb
Frequency up to 48MHz
FPU no
Timers 8 (16-bit)
ADCs 1x 12-bit (20 channels)
UARTs x 6 (shared with SPI and I2C)
SPIs max 6 (see UART)
I2Cs max 6 (see UART)
Vcc 1.8V - 3.6V
Datasheet Datasheet

RADIO

Transceiver ATA8510
Vendor Microchip
Sensitivity -123dBm
Output power -12dBm to +14.5dBm programmable in 0.4-dB steps ]
Datasheet Datasheet

NOTE:* not all MCU interfaces are available on YARM; see the pinout to know more.

Implementation Status

Device ID Supported Comments
MCU saml21 partly PLL clock not implemented
Low-level driver GPIO yes
PWM yes
UART yes
I2C yes
SPI yes
USB yes
RTT yes
RTC yes
RNG yes
Timer yes
ADC yes

Flashing the device

Both the MCU and the radio module are flashed using Atmel ICE, with the help of a small adapter. The software used is edbg, bundled with RIOT.

wiring

On Linux you might have to add a udev rule for Atmel ICE, like

bash
(
cat <<END
# Atmel-ICE JTAG/SWD in-circuit debugger
ATTRS{idVendor}=="03eb", ATTRS{idProduct}=="2141", MODE="664", GROUP="plugdev"
END
) | sudo tee -a /etc/udev/rules.d/99-atmel-ice.rules
sudo service udev restart

Supported Toolchains

Recommended toolchain for SAML21 is GNU Tools for ARM Embedded Processors. On Debian Buster, the default gcc-arm-none-eabi package works well.

Files

file  board.h
 Support for the Acmesystems YARM board.
 
file  periph_conf.h
 Peripheral MCU configuration for the Acmesystems YARM board.