CANbardo

Overview

CANbardo is an open hardware Universal Serial Bus (USB) to Controller Area Network (CAN) adapter board. It is designed to be compatible with the open source CANnectivity USB to CAN adapter firmware.

Hardware

The CANbardo board is equipped with an Atmel SAME70N20B microcontroller and features an USB-C connector (high-speed USB 2.0), two DB-9M connectors for CAN FD (up to 8 Mbit/s), a number of status LEDs, and a push button. Schematics and component placement drawings are available in the CANbardo GitHub repository.

Supported Features

The canbardo 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.
canbardo
/
same70n20b

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M7 CPU1

arm,cortex-m7

ADC

on-chip

Atmel SAM family AFEC2

atmel,sam-afec

ARM architecture

on-chip

Atmel SAM SSC (Synchronous Serial Controller) controller1

atmel,sam-ssc

CAN

on-chip

Specialization of Bosch m_can CAN FD controller for Atmel SAM2

atmel,sam-can

Clock control

on-chip

Atmel Power Management Controller (PMC)1

atmel,sam-pmc

Counter

on-chip

Atmel SAM Timer Counter (TC) node4

atmel,sam-tc

DAC

on-chip

Atmel SAM family DAC1

atmel,sam-dac

DMA

on-chip

Atmel SAM XDMAC controller1

atmel,sam-xdmac

Ethernet

on-chip

Atmel SAM-family GMAC Ethernet1

atmel,sam-gmac

Flash controller

on-chip

Atmel SAM Enhanced Embedded Flash Controller (EEFC)1

atmel,sam-flash-controller

GPIO & Headers

on-chip

SAM GPIO Port5

atmel,sam-gpio

Hardware information

on-chip

ATMEL SAM Reset controller1

atmel,sam-rstc

I2C

on-chip

Atmel SAM Family I2C (TWIHS)3

atmel,sam-i2c-twihs

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv7-M NVIC (Nested Vectored Interrupt Controller)1

arm,v7m-nvic

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

MDIO

on-chip

Atmel SAM Family MDIO Driver node1

atmel,sam-mdio

MMU / MPU

on-chip

ARMv7-M Memory Protection Unit (MPU)1

arm,armv7m-mpu

MTD

on-chip

This binding describes the Atmel SAM flash area layout1

atmel,sam-flash

on-board

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

PHY

on-board

Simple GPIO controlled CAN transceiver2

can-transceiver-gpio

Pin control

on-chip

Atmel SAM Pinctrl Container1

atmel,sam-pinctrl

Power management

on-chip

Atmel SAM SUPC (Supply-Controller) controller1

atmel,sam-supc

PWM

on-chip

Atmel SAM PWM2

atmel,sam-pwm

RNG

on-chip

Atmel SAM RNG1

atmel,sam-trng

RTC

on-chip

Atmel SAM family RTC device1

atmel,sam-rtc

Sensors

on-chip

Atmel SAM Timer Counter (TC) QDEC mode4

atmel,sam-tc-qdec

Serial controller

on-chip

Atmel SAM family USART3

atmel,sam-usart

on-chip

SAM family UART1 4

atmel,sam-uart

SPI

on-chip

Atmel SAM SPI controller2

atmel,sam-spi

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv7-M System Tick1

arm,armv7m-systick

USB

on-chip

Atmel SAM Family USB (USBHS) in device mode1

atmel,sam-usbhs

Watchdog

on-chip

ATMEL SAM0 watchdog1

atmel,sam-watchdog

System Clock

The SAME70N20B is driven by a 12 MHz crystal and configured to provide a system clock of 300 MHz. The two CAN FD controllers have a core clock frequency of 80 MHz.

Programming and Debugging

Build and flash applications as usual (see Building an Application and Run an Application for more details).

Here is an example for the Blinky application.

# From the root of the zephyr repository
west build -b canbardo samples/basic/blinky
west flash