Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


PSLab-Hardware Gitter Twitter Follow

This repository contains the PSLab hardware design files. PSLab is a tiny pocket science lab that provides an array of test and measurement instruments for doing science and engineering experiments. It can function like an oscilloscope, waveform generator, frequency counter, programmable voltage and current source and also as a data logger. The first version of hardware (v1) was developed by Jithin B P. Later versions were developed by Padmal.

PCB Layout

Front Side Back Side


  • Find the pin-out diagram of PSLab v6 here!

Applications and Firmware Source Repositories

The following software components are available:

Buy Device


Repository Structure

 ┣ 📂archives                                   # Source files for previous PSLab versions
 ┃ ┣ 📂Breakout_Boards
 ┃ ┣ 📂PSLab KiCAD
 ┃ ┣ 📂PSLab KiCAD v2
 ┃ ┗ 📂PSLab KiCAD v3
 ┣ 📂docs                                       # Supplementary material
 ┃ ┣ 📂components
 ┃ ┃ ┣ 📜BillOfMaterials.csv                    # Component list
 ┃ ┃ ┗ 📜InteractiveBoM.html                    # Interactive version of BoM
 ┃ ┣ 📂datasheets                               # PDF datasheets for components used in PSLab
 ┃ ┣ 📂drawings                                 # CAD dimension drawings
 ┃ ┣ 📂images
 ┃ ┃ ┣ 📂pslab_version_previews
 ┃ ┃ ┣ 📜 ...
 ┃ ┃ ┗ 📜PSLab_v6_top.png
 ┃ ┣ 📂pin_layouts                              # Pin labels and specifications
 ┃ ┃ ┣ 📜PSLab_Pin_Layout.pdf
 ┃ ┃ ┗ 📜PSLab_Pin_Layout.svg
 ┃ ┣ 📂position_files
 ┃ ┃ ┗ 📜PositionFile.csv                       # Pick and place information
 ┃ ┣ 📂reference                                # TeX documentation (stale)
 ┃ ┗ 📂schematics
 ┃ ┃ ┗ 📜PSLab.pdf                              # Board schematic in PDF
 ┣ 📂output
 ┃ ┣ 📂Gerber                                   # Gerber files for the current board design
 ┃ ┗ 📂Images                                   # Images of the four copper layers
 ┣ 📂print                                      # Silk screen images
 ┃ ┣ 📂Back-Side-Images
 ┃ ┗ 📜
 ┗ 📂schematics                                 # KiCAD project files
   ┣ 📂3DModels                                 # STEP 3D models
   ┣ 📂PSLab.pretty                             # Custom library files
   ┣ 📜 ...
   ┗ 📜                                # Main project file

Version Information

Version Content Preview
PSLab KiCAD v1 Original version with SEELABLET schematics and layout files
PSLab KiCAD v2 Developed version with new additions (Voltage regulator, Oscillator)
PSLab KiCAD v3 Device layout changed to Arduino Uno form factor
PSLab KiCAD v4 Assembly optimized version with Arduino Mega form factor having components mounted only on top side
PSLab KiCAD v5 Added socket for external bluetooth module and bottom silk screen with pin description
PSLab KiCAD v6 Added external power input, RTC module, SD Card slot, USB type C, ESP 01 and upgraded UART and power ICs


Parts list

Find the complete bill of materials from this link.

Optional Parts

Extension slots for an ESP is available.

Hardware Specs

  • 3-Channel up to 2MSPS Oscilloscope. Software selectable amplification stages
  • 12-bit Voltmeter with programmable gain. Input ranges from +/-10 mV to +/-16 V
  • 3x 12-bit Programmable voltage sources +/-3.3 V,+/-5V,0-3 V
  • 12-bit Programmable current source. 0-3.3 mA
  • Supports Advanced plugins/Add-on Modules
  • 4-Channel, 4 MHz Logic Analyzer
  • 2x Sine/Triangular wave generators. 5 Hz to 5 KHz. Manual amplitude control for SI1
  • 4x PWM generators. 15 nS resolution. Up to 8 MHz
  • Capacitance Measurement. pF to uF range
  • I2C, SPI and UART data buses for Accelerometer gyroscope humidity and temperature sensor modules etc

Feature list for the acquisition and control


One of the main features of PSLab is the 3-channel Oscilloscope which can monitor analog inputs at maximum of 2 million samples per second. It includes controls such as triggering, and gain selection. Uses Python-Scipy for curve fitting.

Waveform Generators

  • SI1 : 5 Hz – 5 KHz arbitrary waveform generator. Manual amplitude control up to +/-3 Volts
  • SI2 : 5 Hz – 5 KHz arbitrary waveform generator. Amplitude of +/-3 Volts. Attenuable via software
  • SQx : There are four phase correlated PWM outputs with maximum frequency 32 MHz, 15 nano second duty cycle, and phase difference control.

Measurement Functions

  • Frequency counter tested up to 16 MHz.
  • Capacitance Measurement. pF to uF range
  • PSLab has several 12-bit analog inputs (function as voltmeters) with programmable gains, and maximum ranges varying from +/-5 mV to +/-16 V.

Voltage and Current Sources

  • 12-bit Constant Current source. Maximum current 3.3 mA (subject to load resistance).
  • PSLab has three 12-bit Programmable voltage sources +/-3.3 V,+/-5 V,0-3 V. (PV1, PV2, PV3) controls

Other useful tools

  • 4MHz, 4-channel Logic analyzer with 15 nS resolution. Voltage and current sources
  • SPI, I2C and UART outputs
  • Graphical Interfaces for Oscilloscope, Logic Analyser, streaming data and several experiments developed that use a common framework which drastically reduces code required to incorporate control and plotting widgets.
  • PSLab also has space for an ESP-01 module for WiFi access with access point/station mode.