pslab-hardware
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 |
---|---|
Pin-outs
- Find the pin-out diagram of PSLab v6 here!
Applications and Firmware Source Repositories
The following software components are available:
- Firmware: https://github.com/fossasia/pslab-firmware
- Android app: https://github.com/fossasia/pslab-android
- Desktop app: https://github.com/fossasia/pslab-desktop
Buy Device
- You can get a Pocket Science Lab device from the FOSSASIA Shop.
- More resellers are listed on the PSLab website.
Communication
- Our chat channel is on Gitter here at PSLab
- Mailing List https://groups.google.com/forum/#!forum/pslab-fossasia
Repository Structure
📦pslab-hardware
┣ 📂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
┃ ┗ 📜Readme.md
┗ 📂schematics # KiCAD project files
┣ 📂3DModels # STEP 3D models
┣ 📂PSLab.pretty # Custom library files
┣ 📜 ...
┗ 📜PSLab.pro # Main project file
Version Information
Platform
- Microcontroller Platform : PIC24EP256GP204
- IDE: MPLABX IDE v3.35 (Supported on Linux/Windows/Mac)
- Compiler: MPLAB® XC16 Compiler
- Programming Tool: PICkitâ„¢ 3 In-Circuit Debugger
Parts list
-
PIC24EP256GP204 - Microcontroller
-
MCP6S21 - Programmable gain amplifier
-
MCP4728 - 4 Channel DAC
-
TC7660 - Charge Pump voltage invertor
-
TC1240A - Charge Pump voltage doubler
-
TL082 - 2 channel Op-Amp
-
LM324 - 4 channel Op-Amp
-
DS1307Z+ - RTC module
-
LDFM33PUR - 3.3 V regulator
-
LDL212PU50R - 5.0 V regulator
-
CP2102N-A02-GQFN24 - USB-UART bridge
-
74HC126 - 4 channel buffer
-
SP0503BAHTG - ESD protector
-
0.5 A Fuse
-
Assorted resistors, capacitors & diodes
Find the complete bill of materials from this link.
Optional Parts
Extension slots for an ESP is available.
- ESP8266 (ESP-01) - UART-TCP bridge
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
Oscilloscopes
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.