Skip to content

fossasia/pslab-mini-hardware

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pslab-mini-hardware

This repository contains the PSLab-Mini hardware design files. PSLab-Mini is a scaled-down version of the PSLab board, aiming to provide instruments for doing signal measurements. It consists of an Oscilloscope, a Logic analyzer, and a Multimeter.

It also integrates an ESP chip in conjunction with the main MCU(STM32), for enabling wireless connectivity via the board.

PCB Layout

Front Side Back Side

Prototype Pictures

PSLab Mini V1 PSLab Mini V1

Prototype Case

The PSLab Mini is designed to use Raspberry Pi 3/4 Cases, which are already widely available, without any modification.

All the ports remain accessible in the casing (USB, BNC Connectors, and battery connector).

PSLab Mini V1 Case 1 PSLab Mini V1 Case 2

Communication

Platform

  • Main Microcontroller : STM32H563RIT6
  • Secondary Microcontroller : ESP32C3
  • Compiler: gcc-arm-none-eabi
  • Programming Tool:
    • For uploading the bootloader onto the board: STLink/Any other ARM programmer
    • For uploading the firmware onto the board: Directly using USB (OpenBLT bootloader is already present on the board)

Parts list

  • STM32H563RIT6 - Main Microcontroller
  • ESP32C3 - Secondary Microcontroller(for internet connectivity)
  • W25Q32JV - 32 Mega bit(4 Mega Byte) flash for ESP32
  • OPA356AIDBVR - 1 channel High-Speed CMOS Op-Amp
  • TLV9001IDCK - 1 channel Low-Speed CMOS Op-Amp
  • IP5189T - Battery management chip
  • AMS1117-3.3 - 5 V to 3.3 V buck converter
  • MT2496 - 5 V to -2 V, inverting buck converter
  • SP0503BAHT - ESD Protector
  • Assorted resistors & capacitors

Details of the project

Design Goals

  • Compact and manufacturable: All components placed on one PCB side

Core functionalities

  • Oscilloscope

    • 2 channels, 12-bit ADC (at 5MSPS)
    • Uses BNC connectors to connect probes to the board
    • Higher sampling rate than the current PSLab Board
  • Logic Analyser

    • 2 Channels
  • Multimeter

    • AC/DC voltage, resistance, capacitance, frequency

Technical Requirements

  • Interfaces
    • Open Toolchain : compiles with gcc(gcc-arm-none-eabi)
    • ADC : ≥ 2 channels, 12-bit
    • 2 x UART, 2 x SPI, 1 x I2C exposed from the chip pinout(STM32) Out of which, it has the following segregation:
      • 1 x UART, 1 x SPI - Used to interface between the ESP32 and STM32
      • 1 x UART, 1 x SPI, 1 x I2C - exposed to external headers to connect various peripherals to the board.

Pinout Used on the board.

STM32

GPIO

Pin Name Pin (on Microcontroller) Type
GPIO 0 PA5 Analog Pin
GPIO 1 PA6 Analog Pin
GPIO 2 PA7 Analog Pin
GPIO 3 PC4 Analog Pin
GPIO 4 PC5 Analog Pin
GPIO 5 PB0 Analog Pin
GPIO 6 PC8 Digital Pin
GPIO 7 PC9 Digital Pin
GPIO 8 PA8 Digital Pin

Instruments

Pin Name Pin (on Microcontroller) Type
LA1 PA3 Logic Analyser Channel-1
LA2 PA2 Logic Analyser Channel-2
FQY PA4 Frequency Measurement
VOL PC0 Voltage Measurement
RES PC1 Resistance Measurement
CAP PC3 Capacitance Measurement

BNC Connectors

Connector Number Pin (on Microcontroller) Type
CH1 PA0 Oscilloscope Channel-1
CH2 PA1 Oscilloscope Channel-2

Buses

UART_1 Connected to ESP32
SPI_2 Connected to ESP32
UART_6 Connected to External header pins
SPI_3 Connected to External header pins
I2C_1 Connected to External header pins

ESP32

Buses

SPI_1 Connected to External NOR flash
UART_1 Connected to STM32
SPI_2 Connected to STM32

Reset functionality of the board

The reset button on the board resets both the STM32 and the ESP32 simultaneously.

In addition, the STM32 can reset ESP32 through an output pin:

PB5 (STM32) → CHIP_EN (ESP32)

Documentation related to the microcontroller

STM32

ESP