SAM4L WM-400 Cape Board
Overview
The SAM4L WM-400 Cape is a full featured design to enable IEEE 802.15.4 low power nodes. It is a Beaglebone Black cape concept with an Atmel AT86RF233 radio transceiver. User can develop Touch interface and have access to many sensors and conectivity buses.
Hardware
ATSAM4LC4B ARM Cortex-M4 Processor
12 MHz crystal oscillator
32.768 kHz crystal oscillator
1 RS-232 interface
1 RS-485 full duplex interface
Micro-AB USB OTG host/device
1 user touch button and One user pushbutton
4 user LEDs
1 AT86RF233 IEEE 802.15.4 transceiver
1 MPL115A2 I²C Barometric Pressure/Temperature Sensor
1 VCNL4010 Proximity/Light Sensor
1 CC2D33S Advanced Humidity Temperature Sensor
1 NCP18WF104J03RB NTC Temperature Sensor
1 TEMT6000X01 Ambient Light Sensor
Supported Features
The sam4l_wm400_cape
board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo
-
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M4 CPU1 |
|
Clock control |
on-chip |
Atmel Power Management Controller (PMC)1 |
|
Counter |
on-chip |
||
Flash controller |
on-chip |
Atmel SAM4L Flash Controller Double Word (FLASHCALW)1 |
|
GPIO & Headers |
on-chip |
SAM4L GPIO Port3 |
|
Hardware information |
on-chip |
ATMEL SAM4L Unique 120-bit Serial Number1 |
|
I2C |
on-chip |
||
IEEE 802.15.4 |
on-board |
ATMEL AT86RF2xx 802.15.4 wireless transceiver1 |
|
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
ARMv7-M NVIC (Nested Vectored Interrupt Controller)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
MMU / MPU |
on-chip |
ARMv7-M Memory Protection Unit (MPU)1 |
|
MTD |
on-chip |
Flash node1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory2 |
||
on-board |
I2C EEPROMs compatible with Atmel’s AT24 family1 |
||
on-board |
Atmel AT45 (or compatible) SPI flash1 |
||
Pin control |
on-chip |
Atmel SAM Pinctrl Container1 |
|
RNG |
on-chip |
Atmel SAM RNG1 |
|
Serial controller |
on-chip |
||
SPI |
on-chip |
Atmel SAM SPI controller1 |
|
SRAM |
on-chip |
Generic on-chip SRAM description1 |
|
Timer |
on-chip |
ARMv7-M System Tick1 |
|
USB |
on-chip |
Atmel SAM Family USB (USBC) in device mode1 |
|
Watchdog |
on-chip |
ATMEL SAM4L watchdog1 |
Connections and IOs
For detailed information see SAM4L WM-400 Cape [1] Information.
System Clock
The SAM4L MCU is configured to use the 12 MHz internal oscillator on the board with the on-chip PLL to generate an 48 MHz system clock.
Serial Port
The ATSAM4LC4B MCU has 4 USARTs. One of the USARTs (USART3) is shared between RS-232 and RS-485 interfaces. The default console terminal is available at RS-232 onboard port or via USB device.
Programming and Debugging
The SAM4L WM-400 Cape board has a 10-pin header to connect to a Segger JLink. Using the JLink is possible to program and debug the SAM4LC4B chip. The board came with a SAM-BA bootloader that only can be used to flash the software.
Flashing
For JLink instructions, see J-Link Debug Host Tools.
Run your favorite terminal program to listen for output. Under Linux the terminal should be
/dev/ttyACM0
. For example:$ minicom -D /dev/ttyACM0 -o
The -o option tells minicom not to send the modem initialization string. Connection should be configured as follows:
Speed: 115200
Data: 8 bits
Parity: None
Stop bits: 1
Connect the SAM4L WM-400 Cape board to your host computer using the USB debug port. Then build and flash the Hello World application.
# From the root of the zephyr repository west build -b sam4l_wm400_cape samples/hello_world west flash
You should see
Hello World! sam4l_wm400_cape
in your terminal.For SAM-BA bootloader instructions, see SAM Boot Assistant (SAM-BA).
Connect the SAM4L WM-400 Cape board to your host computer using the USB debug port pressing the S1 button. Then build and flash the Hello World application. After programming the board the application will start automatically.
# From the root of the zephyr repository west build -b sam4l_wm400_cape samples/hello_world west flash -r bossac
Debugging
You can debug an application in the usual way. Here is an example for the Hello World application.
# From the root of the zephyr repository
west build -b sam4l_wm400_cape samples/hello_world
west debug