PSLab - Pocket Science Lab

Open Source Pocket Science Lab from FOSSASIA

 PSLab Hardware Repo PSLab Firmware Repo  PSLab Android Repo

PSLab - Pocket Science Lab

The goal of PSLab is to create an Open Source hardware device (open on all layers) that can be used for experiments by teachers, students and citizen scientists. Our tiny pocket lab provides an array of sensors for doing science and engineering experiments. It provides functions of numerous measurement devices including an oscilloscope, a waveform generator, a frequency counter, a programmable voltage, current source and as a data logger.

We are developing the experiments starting on the hardware to libraries and user interfaces for desktop PCs and Android apps for smartphones. The PSLab project is inspired by the work of the Open Science Hardware community and the ExpEYES project.

New Front Panel Design

The desktop applications for the control and measurement functions are written in Python programming language. Pyqtgraph is used for plotting library. A variety of experiments can be performed using GUI applications written in python. PSLab is interfaced and powered by USB port of the computer.

Features of PSLab - Various control and measurement tools

PSLab is equipped with an array of useful control and measurement tools. This tiny but powerful Pocket Science Lab enables you to perform various experiments and study a wide range of phenomena.

Some of the important applications of PSLab are mentioned below...

  • 4-Channel, up to 2MSPS Oscilloscope
  • 12-bit Voltmeter. Programmable gain. Input ranges from +/-10mV to +/-16V
  • 3x 12-bit Programmable voltage sources/ +/-3.3V,+/-5V,0-3V
  • 12-bit Programmable current source. 0-3.3mA
  • Supports Advanced Plugins/Add-on Modules
  • 4-Channel, 4MHz, 15nS Logic Analyzer
  • 2x sine wave generators. 5Hz to 5KHz. Manual amplitude control
  • 4x PWM generators. 15nS resolution. Up to 8MHz
  • Capacitance Measurement. pF to uF range
  • I2C, SPI , UART data buses for Accel/gyros/humidity etc

For desktop PCs a Python communication library and PyQt4 based graphic user interfaces are available for a number of experiments, that make PSLab a must have tool for programmers, hobbyists, science and engineering teachers and students.

Learn More...

PSLab Code Repositories - ........

The following code repositories of PSLab are available.

Installation How to install PSLab for Desktop PCs from source?

To install PSLab for Desktop PCs on Debian based Gnu/Linux system, the following dependencies must be installed.

PyQt 4.7+, PySide, or PyQt5
python 2.6, 2.7, or 3.x
NumPy, Scipy
pyqt4-dev-tools          #for pyuic4
Pyqtgraph                #Plotting library
pyopengl and qt-opengl   #for 3D graphics
iPython-qtconsole        #optional

Now clone both the repositories pslab-desktop-apps and pslab-python

Libraries must be installed in the following order

1. pslab-apps

2. pslab

To install, cd into the directories
and run the following (for both the repos)
$ sudo make clean
$ sudo make 
$ sudo make install
Now you are ready with the PSLab software on your machine :) For the main GUI (Control panel), you can run Experiments from the terminal.
$ Experiments

Communicating with PSLab Getting started...

Connecting a PC to PSLab is as simple and straight forward as this...

>>> from PSL import sciencelab
>>> I = sciencelab.connect()     #Returns None if device isn't found
# An example function that measures voltage present at the specified analog input
>>> print I.get_average_voltage('CH1')

Various sensors can be connected to PSLab and data can be fetched with a simple python code as shown below...

>>> from PSL.SENSORS import HMC5883L #A 3-axis magnetometer
>>> M = HMC5883L.connect()
>>> Gx,Gy,Gz = M.getRaw()

Example 1: Capturing and plotting a sine wave

Connect WG1 to CH1 and run the following code.
>>> from pylab import *
>>> from PSL import sciencelab
>>> I=sciencelab.connect()
>>> I.set_gain('CH1', 3) # set input CH1 to +/-4V range
>>> I.set_sine1(1000) # generate 1kHz sine wave on output W1
>>> x,y = I.capture1('CH1', 1000, 10) # digitize CH1 1000 times, with 10 usec interval
>>> plot(x,y)
>>> show()
The output of the program is here... sine1

Design Your Own Experiments Enables user to design new experiments without coding....

PSLab is aimed at high-school science teachers and students, who may or may-not be familiar with the computer programming. For such users it is difficult to design or develop new experiments on their own. They may also find it difficult to fetch the data and plot required graphs, if a ready-made GUI is not available for that particular experiment.

To enable users to quickly design a simple experiment for studying various phenomena, we have developed a simple Experiment Designer GUI. This incorporates few controls, read-back elements and easy functions to select parameters and plot graphs. The next step on our roadmap is to offer an Android app that enables students and teachers to conduct experiments on their smartphone.


PSLab Communication Function Calls..

PSLab Developers Curious Brains

Jithin B P

Founder and Developer at Cspark Research

Jithin is a young Scientist who founded Cspark Research. He designs and developes software and hardware for various scientific instrumentation including PSLab. He has a Masters in Physics from the Indian Institute of Science Education and Research, Mohali. Jithin developed several python powered lab tools and is mainly focusing on hardware and firmware within the PSLab project.

Praveen Patil

High School Physics Teacher in Belgaum, India

Praveen is a Physics teacher who loves FOSS, Fedora and Python. He is an organizer of Science Hack Day and has been a FOSSASIA-GSoC (Google Summer of Code) alumnus in 2014, 2015 and 2016. For PSLab he is developing new experiments and sensor plug-ins and supports student projects. He also works on teacher training programs.

Asitava Sarkar

Electrical Engineering Undergraduate

Asitava is a third year undergraduate from Indian Institute of Technology Kanpur, India. He is passionate about hardware, app and web development. During GSoC 2017 he contributed to improve the existing PSLab software and the development of PSLab Android application.

Akarshan Gandotra

Computer Science Engineering Undergraduate

Akarshan is an undergraduate from The NorthCap University, Gurugram, India. He likes to develop Android Applications and work on Embedded Systems and Machine Learning. During GSoC 2017 he contributed in the development of the PSLab Android Application.

Vivek Singh Bhadauria

Android Developer, Electronics Engineer and Open-Source Enthusiast

Vivek is an undergraduate student from Delhi Technological University, India. His major is Electronics and Communication Engineering. He likes to develop Android Apps and automate tasks with Python. Most of his open-source projects can be found here. During GSOC-17, he started PSLab Android Application from scratch and contributed to other projects of Pocket Science Lab.

M Padmal

Electronic and Telecommunication Engineering Undergraduate

Padmal is an undergraduate from University of Moratuwa, Sri Lanka. He is passionate about hardware designs and Android app development. During GSoC '17 he helped improve the hardware design and the development of PSLab Android application.

PSLab Mentors and Contributors

Dr. Ajith Kumar B P

Senior Scientist at Inter University Accelerator Centre, New Delhi

Ajith is a senior scientist at the Inter University Accelerator Centre, New Delhi (IUAC). His work involves the design and development of particle accelerators and associated experimental facilities. He has developed control and data acquisition systems for particle accelerators using open source tools. The Phoenix project is the brainchild of Dr. Ajith. Part of the project is ExpEYES, a computer interface for teaching physics and engineering.

Hong Phuc Dang

Science Hack Ambassador - For the love of Science!

Hong Phuc is an Ambassador of Science Hack Day, Founder of FOSSASIA, and Organizer of SHDs across Asia. Apart from the fascination in mathematics and technology Hong Phuc is interested in developing Open Technologies that improve peoples live. As a member of the FashionTec working group she works on topics of mathematical grading of garment patterns. She also coordinates the Google Summer of Code program of the project. Professionally, Hong Phuc works as a consultant and researcher for International data research companies.

Mario Behling


Mario is a German born technologist with more than a decade of experience in international ICT development, start ups and events organization. He is the founder of Lubuntu and co-founded FOSSASIA. Mario is working on SUSI.AI following his interested in providing tools and Artificial Intelligence solutions for students, teachers, and scientists.

Lorenz Gerber

Postdoc University of Agricultural Sciences, Sweden

Lorenz is an analytical chemist by training. He works on developing analytical measurement equipments, mostly spectroscopy of different kinds. He is a postdoc of the University of Agricultural Sciences in Sweden.

Gi Soong Chee

Science and Informatics Teacher Singapore

Mr. Gi is a science and informatics teacher at Dunman High School, one of the leading co-educational high schools in Singapore in terms of academic results, and one of the largest government schools in Singapore.

Georges Khazandar

Lycee Jean Bart

Georges is a teacher of physics and chemistry at the Lycée Jean Bart, Dunkerque in France. He is a free software enthusiast and due to his efforts Science software like expEYES is now part of the Debian GNU/Linux distribution and it's derivatives like Ubuntu. He also helps with the documentation and localisation of applications and creates artwork.

Darwin Gosal

CryoWerx, Institute of Systems Science, National University of Singapore, Singapore University of Social Sciences

Darwin Gosal is the Founder of CryoWerx,an F&B retail platform using cloud-connected smart-kiosk. As a member of SiTF, the CryoWerx platform brings the disruptive cloud technologies and IoT revolution into the F&B sector,in line with the smart-nation initiative. Prior to CryoWerx, he was the Head of IT at Yale-NUS College where he architected a hybrid cloud infrastructure based on SDDC architecture, which has won the Red Hat APAC Innovation Award and was selected as finalist at the Enterprise Innovators Award 2015.

Mitch Altman

Hacker and inventor

Altman was an early developer of Virtual Reality technologies, working at VPL Research with Jaron Lanier Altman co-founded Silicon Valley start-up 3ware in February 1997 with J. Peter Herz and Jim MacDonald (who is on the advisory board of Cornfield Electronics).

Kee Wee Tang

Ministry of Defense, educator, inventor, FOSSASIA Organiser at Singapore

Kee Wee Tang, aka "Kiwi", works full time at the Ministry of Defence and is an educator, inventor and organiser of FOSSASIA Singapore. His areas of interest are digital fabrication machines, training and education, and hardware development.

Ansgar Schmidt

Hacker, Maker, Microcontroller, Home Automation, IoT, Robotics

Ansgar Schmidt is a hacker involved with microcontrollers, home automation, Internet of Things and Robotics. Check out his blog to know more about the projects he's worked on.

Haggen So

President at Hong Kong Creative Open Technology Association

Graduated from the Royal Melbourne Institute of Technology, Dr. Haggen So, has experiences in commercial software development and developed software products for renowned companies such as Kodak. Dr. So also taught in Hong Kong Baptist University as lecturer in the department of Computer Science. Dr. So was the former Project Manager for Creative Commons Hong Kong and currently the president of the Hong Kong Creative Open Technology Association.

Victoria Bondarchuk

Seoul Tech Society, Dmajor

Victoria is the co-founder of Seoul Tech Society, the largest tech meet-up in Seoul. She is interested in open source and design. In addition, she is active in User Experience Research (researching user experience and creating interfaces and products in academic, corporate and startup environments) and Project Management (how to bring UX and Product Managers together successfully).

Wan Leung Wong

Software Engineer

Wan Leung Wong is the Vice President of Hong Kong Creative Open Technology Association and the Vice-Chairperson of Hong Kong Linux User Group

Greg Austic

Software Engineer, Cofounder of PhotosynQ

Greg is an open technology advocate, co-organizer of the Gathering of Open Science Hardware GOSH and one of the first contributors to the GOSH Manifesto. He’s a jack of all trades capable of getting an idea off the ground quickly and inexpensively, most recently with the MultispeQ, a low-cost photosynthesis meter, and PhotosynQ, a platform for collecting and sharing plant health data.