Skip to content

Leviathan 1A

Introduction

Leviathan 1A is the merged implementation of the SCALES i.MX8X Carrier Board and the SCALES EPS. It consolidates two previously separate development boards into a single design:

  • A revised version of the Mariner 1-C board, which served as the standalone carrier board for the i.MX8X
  • The Viking 1-C board, which served as the SCALES EPS

This merged board is designated Leviathan 1A.

The latest design revisions, SPICE simulation models, and engineering calculations are available in the scales-hardware repository.


Hardware Overview

The Leviathan 1A board contains two primary subsystems:

  • i.MX8X carrier board circuitry
  • Power system circuitry for the full SCALES platform

Board Images

Front

Leviathan 1A Front

Back

Leviathan 1A Back


i.MX8X Carrier Board Implementation

The i.MX8X carrier board section is a reduced version of the development platform provided by Phytec and includes the interfaces listed below.

Each serial and peripheral interface is explicitly defined in the custom BSP, which provides the Linux kernel with the hardware description for this carrier board. Refer to the Leviathan 1A meta-layer in the BSP for complete details on pin configuration and usage.

For convenience, the exposed signal labels are listed below and may be accessed directly from the operating system.

All GPIO, SPI, I2C, and UART signals made available to the end user are routed through the outermost DF11 connector. Refer to the scales-hardware schematic and PCB files for additional implementation details.

Component Selection

Most of these components are derived directly from the Phytec PCM-942 development board schematic. Although alternative components with similar specifications may also be suitable, this design stays as close as possible to the reference implementation for the features included here.

Ethernet

  • 2 x 1 Gb Ethernet ports are available
  • Ethernet support is configured on the SoM through the BSP
  • The supporting circuitry is directly ported from the i.MX8X development board
  • Two Ethernet configurations are available on the SoM:
  • One is preconfigured on the SoM using an onboard RGMII translator
  • The second is implemented on this carrier board

USB-to-UART (Micro USB)

  • UART0 on the SoM is reserved for UART-to-FTDI usage
  • The default BSP configures UART0 for debugging
  • This interface allows direct transmission and reception of commands and telemetry over UART
  • The onboard chip provides UART-to-FTDI translation so the board can interface with a host machine over a serial port
  • This design and supporting chip originate from the Phytec reference implementation

MicroSD Card

  • The SD card / Wi-Fi muxes have been removed
  • This allows default SD card boot configuration and use

3.3 V GPIO

Five 3.3 V GPIO pins are made available through a TXS0108 PGOOD buffer.

Exposed GPIOs:

  • GPIO1_17
  • GPIO1_29
  • GPIO1_30
  • GPIO1_26
  • GPIO1_25

Reserved internal GPIOs:

  • GPIO1_18 - Peripheral power sequencing
  • GPIO1_19 - Jetson power sequencing
  • GPIO1_20 - OBC watchdog petting

SPI

SPI is available through a TXS0108 PGOOD buffer.

Exposed SPI signals:

  • SPI2_CS1
  • SPI2_CS0
  • SPI2_SCK
  • SPI2_SDI
  • SPI2_SDO

I2C

Two I2C buses are available on the carrier board.

Reserved I2C Bus

I2C0 is reserved internally for subsystem monitoring and regulator telemetry.

Reserved I2C signals:

  • I2C0_SDA
  • I2C0_SCL

Devices on I2C0:

  • INA260, OBC subsystem: 0x41 (01000001)
  • INA260, Peripheral subsystem: 0x45 (01000101)
  • INA260, Jetson subsystem: 0x40 (01000000)
  • MCP9808, OBC subsystem: 0x19 (00011001)
  • MCP9808, Peripheral subsystem: 0x1A (00011010)
  • MCP9808, Jetson subsystem: 0x1B (00011011)

Exposed I2C Bus

The user-accessible I2C bus is exposed as:

  • I2C3_USR_SDA
  • I2C3_USR_SCL

UART

UART is available in two ways:

  • Through the FTDI controller over USB
  • Through TX and RX pins exposed on the outermost DF11 connector

These signals use 3.3 V logic levels.

Exposed UART signals:

  • UART2_RX
  • UART2_TX

Boot Partition Toggler

If use of the 32 GB eMMC on the SoM is desired, a switch is provided to toggle between boot modes.

  • Boot selection is controlled by BOOTMODE[3:0]
  • 0010 boots from eMMC
  • 0011 boots from SD card

Since all other boot configurations have been removed, only the final bit needs to be switched using the onboard selector.


SCALES EPS Implementation

The Leviathan 1A version of the SCALES EPS powers three subsystems: the OBC, the Jetson, and the Peripheral subsystem. The OBC and Jetson both include watchdog protection, while the Peripheral subsystem does not. The Jetson and Peripheral subsystem can be power-sequenced on command by the OBC.

Power Requirements

The system accepts a nominal +28 V input with a maximum current of 8 A.

Subsystem power requirements:

  • ML / Edge Computer - NVIDIA Jetson: +20 V, 4 A
  • OBC / Flight Computer - i.MX8X: +3.3 V, 2 A
  • Peripheral System - 5-port Microchip Ethernet switch: +5 V, 2 A

Component Selection

Concept of Operations

  • The OBC is the primary subsystem and is always enabled
  • The OBC controls the ML and Peripheral subsystems through load switches
  • The OBC must hold the corresponding subsystem enable pin high for that subsystem to remain active
  • The OBC and Jetson each have watchdog protection to verify normal operation

Fault Response

OBC fault - If the OBC hangs and fails to pet the watchdog, it is power-cycled - The load switch enable pin is held high relative to the battery voltage

Jetson fault - If the Jetson hangs and fails to pet the watchdog, it is rebooted

Peripheral fault - If the Ethernet switch hangs, the OBC can power-sequence it directly

Telemetry and Monitoring

  • The OBC monitors subsystem current and voltage through the INA260 devices over I2C
  • This provides basic telemetry on subsystem operating state
  • Three dedicated temperature sensors also report telemetry back to the i.MX8X over a 3.3 V I2C bus

Usage Guide

Using the Leviathan 1A board with the i.MX8X is straightforward, but it requires a prebuilt Linux image using the latest SCALES BSP with the updated device tree modifications and additional packages.

Once an SD card has been flashed with the image:

  1. Set the boot toggle switch to the SD Card position
  2. Insert the SD card into the board
  3. Apply power through the XT-60 connector
  4. The system will boot automatically
  5. The default password is root

If the watchdog solder pads on the back of the board have been soldered, the BSP must include the watchdog petting package. This ensures that the device does not enter a boot loop.

If this package is not included, leave the watchdog pads unsoldered.

Setup Resources

  • For a custom Linux image setup, refer to this work-in-progress guide
  • To access the serial terminal over USB, refer to this guide and skip to Flashing and Booting the Board in Step 3

  • The custom linux image for this board is maintained and regularly updated in the scales-firmware repository. This repo also includes thermal testing software along with watchdog software for the jetson. Access the repo here