Heimann HTPA Eval Board (rev0)

Overview

The Heimann HTPA Eval Board (rev0) is a development platform for the Heimann Thermopile Sensor Array (HTPA) family sensors. Array sensors range from 8x8 pixels to 160x120 pixels, each with calibrated per pixel temperature output. Zephyr support is available as htpa_eval board with different soc variants: ATSAME70Q20B, ATSAME70Q21, and ATSAME70Q21B. The default target shown below is ATSAME70Q20B.

Heimann HTPA Eval Board

Heimann HTPA Eval Board (rev0)

Hardware

  • ATSAME70Q20B/Q21/Q21B ARM Cortex-M7 processor

  • 12 MHz crystal oscillator => SOC @ 300MHz

  • 32.768 kHz crystal oscillator

  • 1 MiB or 2 MiB internal flash, depending on SoC variant

  • 384 KiB RAM

  • 1 MiB external SRAM

  • Ethernet interface

  • USB high-speed controller

  • RGB status LEDs

  • Camera power and indicator LEDs

  • User push-button

  • JTAG debug interface

Supported Features

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

htpa_eval/same70q20b target

On-target memory for this board target: 384 KiB of RAM, 1 MiB of Flash.

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

Microchip SAM Ethernet Controller1

microchip,sam-ethernet-controller

on-chip

Atmel SAM-family GMAC Ethernet1

atmel,sam-gmac

on-chip

Atmel SAM Family MDIO Driver node1

atmel,sam-mdio

on-board

Generic MII PHY1

ethernet-phy

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

Memory controller

on-board

Atmel Static Memory Controller (SMC)1

atmel,sam-smc

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

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

SDHC

on-chip

ATMEL (Microchip) SAM HSMCI SD host controller1

atmel,sam-hsmci

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 UART14

atmel,sam-uart

SPI

on-chip

Atmel SAM SPI controller2

atmel,sam-spi

SRAM

on-chip

Generic on-chip SRAM1

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

htpa_eval/same70q21 target

On-target memory for this board target: 384 KiB of RAM, 2 MiB of Flash.

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

Microchip SAM Ethernet Controller1

microchip,sam-ethernet-controller

on-chip

Atmel SAM-family GMAC Ethernet1

atmel,sam-gmac

on-chip

Atmel SAM Family MDIO Driver node1

atmel,sam-mdio

on-board

Generic MII PHY1

ethernet-phy

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

Memory controller

on-board

Atmel Static Memory Controller (SMC)1

atmel,sam-smc

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

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

SDHC

on-chip

ATMEL (Microchip) SAM HSMCI SD host controller1

atmel,sam-hsmci

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 UART14

atmel,sam-uart

SPI

on-chip

Atmel SAM SPI controller2

atmel,sam-spi

SRAM

on-chip

Generic on-chip SRAM1

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

htpa_eval/same70q21b target

On-target memory for this board target: 384 KiB of RAM, 2 MiB of Flash.

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

Microchip SAM Ethernet Controller1

microchip,sam-ethernet-controller

on-chip

Atmel SAM-family GMAC Ethernet1

atmel,sam-gmac

on-chip

Atmel SAM Family MDIO Driver node1

atmel,sam-mdio

on-board

Generic MII PHY1

ethernet-phy

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

Memory controller

on-board

Atmel Static Memory Controller (SMC)1

atmel,sam-smc

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

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

SDHC

on-chip

ATMEL (Microchip) SAM HSMCI SD host controller1

atmel,sam-hsmci

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 UART14

atmel,sam-uart

SPI

on-chip

Atmel SAM SPI controller2

atmel,sam-spi

SRAM

on-chip

Generic on-chip SRAM1

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

UART0 is routed as the Zephyr console on this board. For board-specific connector and signal details, refer to the board schematic and hardware documentation.

System Clock

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

Programming and Debugging

The htpa_eval board supports the runners and associated west commands listed below.

flash debug rtt debugserver attach
openocd ✅ (default) ✅ (default)

ROM and Boot Behavior

Factory-new SAME70 devices boot the SAM-BA [3] boot loader from ROM rather than the flashed image. Boot selection is controlled by the GPNVM1 (General-Purpose NVM bit 1) flag:

  • GPNVM1 = 0 boots the ROM SAM-BA loader

  • GPNVM1 = 1 boots from flash

If GPNVM0 is set, the device cannot be programmed via the SAM-BA loader. A full chip erase is required, which clears the flash and GPNVM bits. Note: J-Link (the preferred flash option) can program and debug at all time.

Flashing

  1. Build and flash the Hello World application for the ATSAME70Q20B variant:

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

    The other supported variants are htpa_eval/same70q21 and htpa_eval/same70q21b.

  2. Connect your serial terminal to the board console at 115200 8N1.

    You should see Hello World! htpa_eval in your terminal.

SAM-BA CLI

The board also supports SAM-BA uploads over the external UART interface. This path is useful when you want to work without a debug probe.

Before using the SAM-BA CLI, assert the board’s flash erase jumper so the device can be erased and recovered if needed. The flash erase signal is PB12. The board’s R7 resistor can be shorted while the board is booting to trigger the flash erase sequence. After the erase sequence is complete, you can upload the image with the SAM-BA command-line tools over the board’s UART0 serial connection.

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

References