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.
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M7 CPU1 |
|
ADC |
on-chip |
Atmel SAM family AFEC2 |
|
ARM architecture |
on-chip |
Atmel SAM SSC (Synchronous Serial Controller) controller1 |
|
CAN |
on-chip |
Specialization of Bosch m_can CAN FD controller for Atmel SAM2 |
|
Clock control |
on-chip |
Atmel Power Management Controller (PMC)1 |
|
Counter |
on-chip |
Atmel SAM Timer Counter (TC) node4 |
|
DAC |
on-chip |
Atmel SAM family DAC1 |
|
DMA |
on-chip |
Atmel SAM XDMAC controller1 |
|
Ethernet |
on-chip |
Atmel SAM-family GMAC Ethernet1 |
|
Flash controller |
on-chip |
Atmel SAM Enhanced Embedded Flash Controller (EEFC)1 |
|
GPIO & Headers |
on-chip |
SAM GPIO Port5 |
|
Hardware information |
on-chip |
ATMEL SAM Reset controller1 |
|
I2C |
on-chip |
Atmel SAM Family I2C (TWIHS)3 |
|
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 |
|
MDIO |
on-chip |
Atmel SAM Family MDIO Driver node1 |
|
MMU / MPU |
on-chip |
ARMv7-M Memory Protection Unit (MPU)1 |
|
MTD |
on-chip |
This binding describes the Atmel SAM flash area layout1 |
|
on-board |
Fixed partitions of a flash (or other non-volatile storage) memory1 |
||
PHY |
on-board |
Simple GPIO controlled CAN transceiver2 |
|
Pin control |
on-chip |
Atmel SAM Pinctrl Container1 |
|
Power management |
on-chip |
Atmel SAM SUPC (Supply-Controller) controller1 |
|
PWM |
on-chip |
Atmel SAM PWM2 |
|
RNG |
on-chip |
Atmel SAM RNG1 |
|
RTC |
on-chip |
Atmel SAM family RTC device1 |
|
Sensors |
on-chip |
Atmel SAM Timer Counter (TC) QDEC mode4 |
|
Serial controller |
on-chip |
Atmel SAM family USART3 |
|
on-chip |
|||
SPI |
on-chip |
Atmel SAM SPI controller2 |
|
SRAM |
on-chip |
Generic on-chip SRAM description1 |
|
Timer |
on-chip |
ARMv7-M System Tick1 |
|
USB |
on-chip |
Atmel SAM Family USB (USBHS) in device mode1 |
|
Watchdog |
on-chip |
ATMEL SAM0 watchdog1 |
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