RoboKit 1

Overview

The TDK RoboKit1 is a development board for use primarily with ROS2 and provides a large number of small ground robotics useful sensors including chirp sensors for time of flight (e.g. ultrasonic obstacle detection).

It pairs a 300MHz Cortex-M7 ATSAME70Q21 with an array of TDK sensors and pin headers useful for robotics.

Hardware

  • ATSAME70Q21 ARM Cortex-M7 Processor

  • 12 MHz crystal oscillator (Pres)

  • 32.768 kHz crystal oscillator

  • Micro-AB USB device

  • Micro-AB USB debug (Microchip EDBG) interface supporting CMSIS-DAP, Virtual COM Port and Data

  • JTAG interface connector

  • One reset pushbutton

  • One red user LED

  • TDK ICM 42688-P 6-Axis 32KHz IMU

  • TDK ICP-10111 Pressure Sensor

  • TDK NTC Thermistor for Temperature

  • AKM AK09918C Magnetometer

  • 2 TDK HVCi-4223 Cortex-M3 Dedicated Motor Controller

  • 3 TDK ICS-43434 Stereo Microphones

  • Connector for Industrial Dual IMU (TDK IIM-46230)

  • TDK CH101 Ultrasonic Range Sensor Array (9 Connectors, comes with 3)

Supported Features

The robokit1 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.

robokit1/same70q21b target

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M7 CPU1

arm,cortex-m7

ADC

on-board

Texas Instrument Single Channel SPI ADC1

ti,ads7052

on-chip

Atmel SAM family AFEC1 1

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

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

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 PWM1 1

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-board

ICM-42688 motion tracking device1

invensense,icm42688

on-chip

Atmel SAM Timer Counter (TC) QDEC mode4

atmel,sam-tc-qdec

on-board

Asahi Kasei AKM09918C Magnetometer1

asahi-kasei,akm09918c

on-board

EPCOS B57861S0103A039 thermistor1

epcos,b57861s0103a039

Serial controller

on-chip

Atmel SAM family USART1 2

atmel,sam-usart

on-chip

SAM family UART3 2

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

Connections and IOs

The TDK RoboKit Hardware Guide has detailed information about board connections.

System Clock

The SAM E70 MCU is configured to use the 12 MHz external oscillator on the board with the on-chip PLL to generate a 300 MHz system clock.

Serial Port

The ATSAME70Q21 MCU has five UARTs and three USARTs. One of the UARTs is configured for the console and is available as a Virtual COM Port via the USB2 connector.

Programming and Debugging

Flashing the Zephyr project onto SAM E70 MCU requires the OpenOCD tool. Both west flash and west debug commands should correctly work with both USB0 and USB1 connected and the board powered.

Flashing

  1. Run your favorite terminal program to listen for output. Under Linux the terminal should be /dev/ttyACM0. For example:

    $ minicom -D /dev/ttyUSB0 -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

  2. Connect the TDK RoboKit1 board to your host computer using the USB debug port (USB1), USB2 for a serial console, and remaining micro USB for power. Then build and flash the Hello World application.

    # From the root of the zephyr repository
    west build -b robokit1 samples/hello_world
    west flash
    

    You should see “Hello World! robokit1” in your terminal.

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 robokit1 samples/hello_world
west debug

References

TDK RoboKit1 Product Page:

https://invensense.tdk.com/products/robokit1-dk/