Interceptor Developer Guide

Feature List

TODO

Interceptor Block Diagram

QuarterMaster Block Diagram

Interfaces

AM4378 Processor

The Core Processor is a 1 GHz Cortex-A9 processor built by TI.

DDR3 RAM

The base Interceptor Module comes with 1 GB of DDR3 RAM.

eMMC Storage

The base Interceptor Module comes with 8 GB of eMMC flash. This contains the bootloader and OS images and can be used for data storage and other application images.

TPM (Trusted Platform Module)

The TPM chip is an encrypted hardware key storage module that supports the TPM 2.0 specification from the Trusted Computing Group (TCG). This chip can be used for Device Provisioning and Key Management.

RTC (Realtime Clock)

The Realtime Clock provides a hardware-backed time clock.

Wi-Fi and Bluetooth

The combined Wi-Fi and Bluetooth Interface uses an ESP32 Chip over SDIO. This interface can be configured to act as both a Bluetooth host or peripheral or as a Wi-Fi client or Soft Access Point.

PMIC (Power-Management IC)

The on-board Power Management IC controls the module’s voltages and basic power-down functionality. This can be configured via a dedicated I2C interface.

HDMI Display

The processor’s Display Subsystem (DSS) outputs a 16 bits per pixel RGB/TTL signal that is then transformed into an HDMI output on the QuarterMaster. This can be used to drive mid-resolution displays and HMIs.

USB Debug

The serial debug console is accessible through the micro-USB port on the QuarterMaster. This allows access to the boot-up process and core device configuration when enabled.

JTAG

The JTAG debug interface is exposed on the QuarterMaster using the standard 20-pin ARM connector.

USB 2.0 Ports

4 USB 2.0 device ports are exposed via an on-board USB Hub chip on the QuarterMaster. This device is configured automatically on boot and should recognize devices through the standard UDEV interface.

USB OTG Port

The Micro USB OTG port is located on the side of the QuarterMaster and can be used in both a peripheral or host configuration.

Gigabit Ethernet

The Interceptor’s RGMII bus is connected to a Gigabit Ethernet PHY on the QuarterMaster and can be configured in Base 10/100/1000 modes.

I2C

The QuarterMaster exposes 2 I2C buses with I2C2 connected to the Temperature Sensor and HDMI EDID interface. This interface can operate up to 400 kHz.

I2C is a serial interface that uses two signals: SDA and SCL, Serial Data and Serial Clock, respectively, to communicate with board-level peripherals. Additional sensors and devices can be connected to the same bus as long as the new device addresses do not overlap with any of the devices on the bus.

SPI

The QuarterMaster exposes 3 SPI buses with SPI2 connected to the 3D IMU. This interface can operate up to 48 MHz.

SPI is a serial interface that uses 3 primary signals: MOSI, MISO, and SCLK; Master-out-Slave-in, Master-in-Slave-out, and Serial Clock, respectively. In addition, for each device on the bus, a single (typically) active-low Slave Select or Chip Select (CS) line is required to start communication with the peripheral.

UART

The QuarterMaster provides 3 UART Serial Interfaces with UART1 and UART3 exposing the RTS and CTS control lines. These interfaces can operate up to 3.6864 MHz and support the full range of possible serial baud rates.

GPIOs

The QuarterMaster provides up to 21 General Purpose Input/Outputs operating at a voltage level of 3.3V through the on-board edge connectors. Additional GPIOs are included via the Expansion and Feature Connectors. These pins can be software-configured as Inputs or Outputs with processor-integrated internal pull-ups and pull-downs. Full specifications on the different configurations can be found in the AM437X Processor Datasheet.

ADC

The QuarterMaster exposes up to 16 ADC Inputs via the Expansion Connector operating at a 0-1.8V range. These ADC inputs are organized into 2 ADC banks: ADC0 and ADC1, and can each be configured with different sample rates up to 1 MSps (Mega-samples per second) and trigger mechanisms.

CAN Bus

PWM

eCAP

QSPI (Quad-SPI)

Temperature Sensor

3D IMU (Inertial Measurement Unit)

Feature Connector

Expansion Connector

Development Environment Configuration

System Requirements

SDK Installation

Overview

The Processor SDK Linux Installer (ti-processor-sdk-linux-[platform]-<version>-Linux-x86-Install.bin) will install the necessary components to start your development on the processor. The SDK consists of source for the Matrix App launcher starting point application, a development filesystem, a target filesystem, example applications, toolchain and board support package, ease of use scripts and documentation. The Processor SDK Linux now includes the ARM GCC toolchain. The Processor SDK Linux was built and tested against a specific Linux Distribution name and version, Ubuntu 16.04 or 18.04. Note this does not prevent the user from installing the SDK on other Linux distributions.

How to get the SDK Installer

  1. Go to http://www.ti.com/tool/PROCESSOR-SDK-AM437X and Click Get Software for Part Number “PROCESSOR-SDK-LINUX-AM437X”
  2. Click on the latest available AM437x Linux SDK Essentials For example, at the time of installation the latest available file was “ti-processor-sdk-linux-am437x-evm-0.6.01.00.08-Linux-x86-Install.bin” and the version number was v6.01. The version of the file may change depending upon when you download the SDK.
  3. Once you click on the “ti-processor-sdk-linux-am437x-evm-0.6.01.00.08-Linux-x86-Install.bin” file it would automatically download onto your system.

How to Run the SDK Installer

  1. Bring up a terminal window and change directories to where the installer is located (probably the Downloads directory).
  2. Example: /home/[username]/ Downloads/ti-processor-sdk-linux-am437x-evm-0.6.01.00.08-Linux-x86-Install.bin
  3. Make sure the execute permissions are set for the file, to do so run the following command: chmod +x ./ti-processor-sdk-linux-[platform]-<version>-Linux-x86-Install.bin
  4. Example: chmod +x ./ ti-processor-sdk-linux-am437x-evm-0.6.01.00.08-Linux-x86-Install.bin
  5. Run the SDK using the following command: ./ti-processor-sdk-linux-[platform]-<version>-Linux-x86-Install.bin
  6. Example: ./ti-processor-sdk-linux-am437x-evm-0.6.01.00.08-Linux-x86-Install.bin

NOTE: If you are having trouble running the above commands then you are probably running a 32-bit version of Linux, whereas the installer is 64-bit and will not execute properly.

SDK Installer Execution Steps

  1. Confirm: User is to confirm if loading the Processor SDK Linux is ok. This is important to note if the user is trying to over-install on an existing directory and has made changes to the directory.
  2. Directory Install Location: The user will be prompted for a location on where to put the Processor SDK Linux. An example is given below.
  3. Installation of software: The software is installed.

After the installation refer to section Building Linux for next Steps

Code Composer Studio Installation

JTAG Debug Connection

(Later) Security Architecture

U-Boot

TODO The U-Boot source code is included in the SDK’s board-support directory.

Linux Kernel

Yocto

Ubuntu

Debian

Building Apps

Toolchain Configuration

TODO How to configure the toolchain (gcc/g++, linker, etc.) for building basic C/C++ applications

Deploying Apps

TODO How to deploy a c++ app via SFTP, configure Ethernet, etc.

Related Links

  • Creating a Bootable SD Card
  • (External) AM4378 Technical Manual Reference
  • (External) AM4378 Datasheet

sudo apt-get install minicom

Next doc

Please add items to the CMS collection!