Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This page documents the Version 1, Revision 1 (V1R1) electronics design of the hyperspectral imager. If you are working on the firmware or integration of the HSI payload, you should find everything you need here (when it is finished). 

 

NB! If you are going to work with the prototype, please see the "Getting Started" guide at the bottom of this page. Remember that this is a untested prototype and that there are certain precautions you have to take when experimenting with the hardware or firmware. If you have any questions or problems - unplug the camera and reach out to Julian at julian@moon.ai or +47 46 41 66 50.

Introduction

Usually the goal of the first prototype revision is to get data as soon as possible, but in this case Fred Sigernes's v4 and v5 cameras are giving us data for testing and verification. The goal of this prototype is to get the entire processing chain up and running with image sensor and on-board processing, and to get a better understanding of the challenges involved in hyperspectral imager hardware development. Because the satellite bus is unknown at the time of the design, it's intended for desktop- drone- and balloon-testing.

 

 

Carrier BoardCarrier Board + OpticsCarrier Board + Optics + FPGA Board

Table 1: Renders of V1R1, fall 2017. 

 

PCB - Top ViewAssembled PCB - Top ViewPCB - Perspective

Table 2: Altium Designer Screenshot of production PCB, December 2017

 

PCB without ComponentsAssembled PCBFull camera PCB assembly
Image RemovedImage Added

Table 3:Pictures of production PCB, January 2018

 

 

Technical Specifications

Resolution: 2048x1088

Storage: 36GB (4GB eMMC + 32GB microSD)

Memory: 1GB

Processor: Dual Core ARM A9 (Zynq 7030 Series FGPA)

Input Voltage: 4.5-14.5V

Maximum current: 6A 

Connectivity: USB 2.0, UART

 

 

System Design

Power Supply

To allow for maximum flexibility in development and testing (and unknown satellite provider) the V1R1 is designed for an input voltage of 5-14.5V, at 6A. Supplied with the prototype is a 12V, 5.5A, power supply for desktop use but we can solder on a connector for drone/balloon testing. Any AC/DC power adapter with a 2.1mm/5.5mm barrel jack can be used as long as it is between 5-14.5V and supports currents up to 5A.

The input voltage is connected to a switch-mode power supply module for maximum efficiency and then split into four different power rail for the image sensor and FGPA. The PicoZed board requires 5V, 3.3V and 1.8V and the image sensor 2.0V, 3.0V and 3.3V.

The main SMPS can be controlled through the external connector and shut of power to the entire connector. The four power rails will turn on in sequence after the PicoZed power supplies have turned on using the "Power Good" functionality of the regulators. After all the regulators onboard the PicoZed board are up and running VCCIO_EN pin will go high and turn on the carrier card regulators. Each of the power rails have a designated test point located next to the regulator. 

When the camera is powered the green LED labeled "Power" will light up.  

List of important parts:

PCBA DesignatorFunctionalityPart NumberManufacturerOperating TemperatureDatasheet
U15V SMPSLMZ31506Texas Instruments-40 to 85Chttp://www.ti.com/lit/ds/symlink/lmz31506.pdf
U2_A, U2_B1500mA LDOTPS74801Texas Instruments

-40 to 125C

http://www.ti.com/lit/ds/symlink/tps74801.pdf
U3_A, U3_B500mA LDOTPS74701Texas Instruments-40 to 125Chttp://www.ti.com/lit/ds/symlink/tps74701.pdf

 

FPGA Interface  (PicoZed)

 

We're using the industrial version of the Avnet PicoZed board, the manufacturer number is AES-Z7PZ-7Z030-SOM-I-G.

Image Sensor 

The image sensor used is a CMOSIS CMV2000. The data is read out using low voltage differential singling (LVDS) and controlled using SPI. For maximum quantum efficiency (QA), the variation of the sensor processed on 12um epitaxial (E12) SI wafer is used. The thicker epic-layer increases the sensitivity to light above 600nm significantly. Due to the sensitivity due to high speed data transfer, the data lines are carefully impedance matched following the TIA/EIA 644 standard for LVDS signals.


Clock Generation

PicoZed PinNet NameFunctionalityComment
JX2JX1-824CLK_SRCInput CLK

Master input clock, frequency range between 5 and 48 MHz 

JX1-17

OUT_CLK_P

Output CLK

High speed LVDS output clock
JX1-19OUT_CLK_NOutput CLKHigh speed LVDS output clock
JX1-47LVDS_CLK_PInput CLK

High speed LVDS input clock, frequency range between 50 and 480 MHz. Should not be used if PLL is enabled (default). 

JX1-49LVDS_CLK_NInput CLK

High speed LVDS input clock, frequency range between 50 and 480 MHz. Should not be used if PLL is enabled (default). 

Control Pins 

The following pins are connected to the Program System (PS) part of the FGPA and are used to control the sensor functionality.

PicoZed PinNet NameFunctionalityComment
JX2-8PS_MIO_9OEEnable the SPI logic level converter*
JX2-1PS_MIO_10

T_EXP1

Input to program the exposure time externally.
JX2-6PS_MIO_11T_EXP2Input to program the exposure time externally in HDR mode.
JX2-5PS_MIO_12Frame Request

Frame request pin. When a high level is detected on this pin the programmed number of frames is captured and sent by the sensor. This signal should be at least one period of CLK_IN to assure detection on the rising edge of CLK_IN. 

JX2-2PS_MIO_13SYS_RES_N

System reset pin, active low signal. Resets the on-board sequencer and must be kept low during start-up. This signal should be at least one period of CLK_IN to assure detection on the rising edge of CLK_IN. 

JX3-41PS_MIO_46SPI MOSI

Data input pin for the SPI interface. The data to program the image sensor is sent over this pin. 

JX3-40PS_MIO_47SPI MISOSPI data output pin
JX3-42PS_MIO_48SPI CLOCK

SPI clock. This is the clock on which the SPI runs (max 48Mz) 

JX3-44PS_MIO_49SPI Enable

SPI enable pin. When this pin is high the data should be written/read on the SPI 

 

*This pin should have pin pulled high by a resistor so it's not, therefore it's necessary to pull it low immediately after boot.

 

Data Pins

The following pins are connected to the Program Logic (PL) part of the FGPA and are used to read out data from the sensor. 

PicoZed PinPicoZed Net NameNet NameComment
JX1-23JX1_LVDS_4_PCMV_OUT_P9LVDS Postitive Data Pin
JX1-25JX1_LVDS_4_NCMV_OUT_N9LVDS Negative Data Pin
JX1-29JX1_LVDS_6_PCMV_OUT_P12LVDS Postitive Data Pin
JX1-31JX1_LVDS_6_NCMV_OUT_N12LVDS Negative Data Pin
JX1-30JX1_LVDS_7_PCMV_OUT_N8LVDS Postitive Data Pin
JX1-32JX1_LVDS_7_NCMV_OUT_P8LVDS Negative Data Pin
JX1-37JX1_LVDS_8_PCMV_OUT_N14LVDS Postitive Data Pin
JX1-39JX1_LVDS_8_NCMV_OUT_P14LVDS Negative Data Pin
JX1-36JX1_LVDS_9_PCMV_OUT_N6LVDS Postitive Data Pin
JX1-38JX1_LVDS_9_NCMV_OUT_P6LVDS Negative Data Pin
JX1-41JX1_LVDS_10_PCMV_OUT_N15LVDS Postitive Data Pin
JX1-43JX1_LVDS_10_NCMV_OUT_P15LVDS Negative Data Pin
JX1-42JX1_LVDS_11_PCMV_OUT_N4LVDS Postitive Data Pin
JX1-44JX1_LVDS_11_NCMV_OUT_P4LVDS Negative Data Pin
JX1-48JX1_LVDS_13_PCMV_OUT_N3LVDS Postitive Data Pin
JX1-50JX1_LVDS_13_NCMV_OUT_P3LVDS Negative Data Pin
JX1-54JX1_LVDS_15_PCMV_OUT_N0OUTCTR_N
JX1-56JX1_LVDS_15_NCMV_OUT_P0OUTCTR_P
JX1-61JX1_LVDS_16_PCMV_OUT_N16LVDS Postitive Data Pin
JX1-63JX1_LVDS_16_NCMV_OUT_P16LVDS Negative Data Pin
JX1-62JX1_LVDS_17_PCMV_OUT_N1LVDS Postitive Data Pin
JX1-64JX1_LVDS_17_NCMV_OUT_P1LVDS Negative Data Pin
JX1-67JX1_LVDS_18_PCMV_OUT_N13LVDS Postitive Data Pin
JX1-69JX1_LVDS_18_NCMV_OUT_P13LVDS Negative Data Pin
JX1-68JX1_LVDS_19_PCMV_OUT_N7LVDS Postitive Data Pin
JX1-70JX1_LVDS_19_NCMV_OUT_P7LVDS Negative Data Pin
JX1-73JX1_LVDS_20_PCMV_OUT_N11LVDS Postitive Data Pin
JX1-75JX1_LVDS_20_NCMV_OUT_P11LVDS Negative Data Pin
JX1-74JX1_LVDS_21_PCMV_OUT_N5LVDS Postitive Data Pin
JX1-76JX1_LVDS_21_NCMV_OUT_P5LVDS Negative Data Pin
JX1-81JX1_LVDS_22_PCMV_OUT_N10LVDS Postitive Data Pin
JX1-83JX1_LVDS_22_NCMV_OUT_P10LVDS Negative Data Pin
JX1-82JX1_LVDS_23_PCMV_OUT_N2LVDS Postitive Data Pin
JX1-84JX1_LVDS_23_NCMV_OUT_P2LVDS Negative Data Pin

 

 


Quantum Efficiency


USB 2.0 Connection 

The USB port labeled "DATA" is the USB 2.0 line and it is used to stream the picture. The imager uses USB-C ports because they can support USB 3.1, with a high enough data rate to stream the image. USB-C can also (in future prototypes) be used to power the entire design, but for now they are implemented as USB 2.0 ports.

PicoZed PinNet NameFunctionalityComment
JX3-67USB_OTG_PData+Postive USB data pin
JX3-69USB_OTG_NData-Negative USB Data pin
 

 

 

USB-UART Connection

USB connection for debugging. It is connected to UART through a FTDI USB-UART bridge that provides USB driver firmware, meaning there's no need to install a driver and it can be read/written using a regular terminal with baud rates up to 3 million symbols per second. A TX and RX indicator is provided on the pcb for debug, to indicate if the camera is receiving or sending data over UART. 

Because of limited MIO pins available the USB-UART is shared with the bus connector UART. A 2-channel single-pole double throw (SPDT) bidirectional switch is used to switch between the two connectors. By default it's routed to the USB-UART but by setting pin PS_MIO_51 high the data is routed to pin 3 and 4 on the bus connector. 

PicoZed PinNet NameFunctionalityComment
JX2-3PS_MIO_14TX 
JX2-4PS_MIO_15RX 
JX3-64PS_MIO_51SPDT SwitchSet to '0' for USB and '1' for bus connector

 

 

 

 

SD Card Interface

The payload supports microSD cards for up to 32GB of storage. Because SDIO is considered a high-speed signal it is routed on the bottom layer of the PCB and all the clock and data traces are length matched to xx mm.

PicoZed PinNet NameFunctionalityComment
JX3-43PS_MIO_40Clock 
JX3-34PS_MIO_41Commands 
JX3-37PS_MIO_42Data0 
JX3-36PS_MIO_43Data1 
JX3-39PS_MIO_44Data2 
JX3-48PS_MIO_45Data3 
JX3-66PS_MIO_50CD 
 
PCBA Designator
Image Removed
Functionality
 
Part NumberManufacturerOperating TemperatureDatasheet
U9

SDIO Port expander 

TXS02612 

Texas Instruments-40 to 85Chttp://www.ti.com/lit/ds/symlink/txs02612.pdf

 

 

 

Image Added

JTAG Connector 

JTAG Connector 

There's a 14-pin JTAG Xilinx connector on the board for programming the two ARM cores and FPGA. In addition to the JTAG lines, there's a 3V3 reference voltage and GND pin.

 

The Xilinx programmer that is compatible can be found here:

https://www.xilinx.com/products/boards-and-kits/hw-usb-ii-g.html#documentation

PicoZed PinNet NameFunctionalityPicoZed PinNet NameFunctionalityComment
JX1-1JTAG_TCK Data clock 
JX1-2JTAG_TMS Chip select 
JX1-3JTAG_TDO Data Output 
JX1-4JTAG_TDI Data Input  
JX1-6CARRIER_RST  Reset 

 

 

LED Indicators

In addition to the green power LED on the PicoZed board, there are four orange LEDs on the carrier board with the following functionality:

IndicatorLabelFunctionality
LED1PowerIndicates if the payload has power
LED2TXIndicates if the payload is transmitting on debug
LED3RXIndicates if the payload is receiving on debug
LED4FPGAIndicates if the Program Logic (PL) is ready to go

 

Board Outline and Material


 

External Connector (Bus Connector)

Connector NumberPicoZed PinNet NameFunctionalityComment
1--3.3V SupplyCan power small peripherals or be used as reference voltage
2JX2-11PG_CARRIER  
3JX2-4UART RX MIO15Intended as UART RX but can be used as a GPIO- 
4JX2-3UART TX MIO14Intended as UART TX but can be used as a GPIO- 
5JX1-6CARRIER_RST ResetUsed to reset the camera, please see the Avnet PicoZed documentation for proper operation 
6JX1-5PWR_ENABLE  Power EnableUsed to turn off the camera, please see the Avnet PicoZed documentation for proper operation.
7JX2-7JX2-10VCCIO_EN  
8--Ground pin 

Image Removed

Power Good OutputUsed for power sequencing, this pin will go high (1.8V) if the PicoZed is powered correctly. It is used to turn on the power rails on carrier board and should be used to power down the PicoZed board (pull low), before turning it of (PWR_ENABLE).
8--Ground pin 

 

Image Added

Production Design Files

TypeFile

Production Design Files

TypeFileKindComment
Schematic
View file
nameNTNU-HSI-Prototype-Rev1.pdf
height250
PDFMissing watermark, not made pretty yet, duplicate components and some of the component values are wrong.
Bill-of-materials

View file
namentnu-hsi-rev1-bill-of-materials.pdf
height250

ntnu-hsi-rev1-bill-of-materials.xlsx

PDF / Excel

 

 

 

 

 

 

 

 

Bill of materials with pricing information.
Gerber

ntnu-hsi-prototype-SlotHoles.TXT

ntnu-hsi-prototype-RoundHoles.TXT

ntnu-hsi-prototype.GTS

ntnu-hsi-prototype.GTP

ntnu-hsi-prototype.GTO

ntnu-hsi-prototype.GTL

ntnu-hsi-prototype.GPT

ntnu-hsi-prototype.GPB

ntnu-hsi-prototype.GP2

ntnu-hsi-prototype.GP1

ntnu-hsi-prototype.GKO

ntnu-hsi-prototype.GD1

ntnu-hsi-prototype.GBS

ntnu-hsi-prototype.GBP

ntnu-hsi-prototype.GBO

ntnu-hsi-prototype.GBL

NC Drill
NC Drill

Top Solder

Top Paste

Top Overlay

Top Signal

Top Pad

Bottom Pad

Middle Signal

Middle Signal

Board Outline

Gerber drill

Bottom Solder

Bottom Paste

Bottom Overlay

Bottom Signal

Gerber files sent to production, not that slots are in a separate drill file.
Altium Designer

NTNU-HSI-Prototype.PrjPcb

NTNU-HSI-Prototype.PrjPcbStructure

 Altium Designer 17 project files

Datasheets

How-To Guide

Getting Started

NB! The power supply is limited to 5.5A, make sure the code you are running won't draw that much power! (This is common in FPGA payloads, at full speed they can draw much more

current than the satellite can handle).

current than the satellite can handle). This is a prototype and there might be bugs, so pay close attention to the temperature of the device and if you find bugs. Ideally you plug the device in series with a multimeter or power meter to measure current consumption. From Fred's v4 prototype the image sensor will get hot and we might need to add a heat sink or fan.  

Proper mode of operation:

1) Power on, with the PicoZed board in (should never be removed).

2) Set the OE pin LOW to enable the SPI logic level converter for the image sensor.

3) Set the UART selector LOW to route the signal through the debug USB connector.

 

 

Frequently Asked Questions (FAQ)

 

Suggested Design Changes for V2 (flight version)

  • Use 8.5x8.5cm board by Trenz electronics (industrial, more FPGA options and more MIO pins)
  • Add pull-up resistor to SPI logic level converter enable pin to avoid excess current drain.