Introduction
============


What is the SEELablet?
----------------------

It's a veritable array of control and measurement equipment that lets you study a wide range of phenomena from within a comfortable programming environment. 
Equipped with an ARM-Cortex A7 Quad Core SoC and the Ubuntu Mate Operating System, an HDMI monitor, a mouse and a keyboard are all that's required to get started.

General applications include a 4-channel oscilloscope, a frequency counter, a logic analyzer and more. 

Also included are sine/triangle/square waveform generators, as well as several programmable voltage and current sources.

Add-on boards, both wired as well as wireless(NRF+MCU), enable measurement of physical parameters ranging from acceleration and angular velocity, to luminous intensity and Passive Infrared.

A 12-MHz Crystal is chosen as the reference for the digital instruments, and a 3.3V voltage regulator is chosen for the analog instruments. The device is then calibrated against professional instruments that rectify non-linear behaviour as well as offsets and slopes in order to squeeze out maximum performance. 

The Open-sourced Python library and associated experiment specific Apps(PyQt4) using a variety of powerful Python modules facilitate data analysis with interactive visuals.

The device hardware comprising of a 1.2GHz quad core ARM Cortex-A7 SoC paired with a 1GHz RAM and 600MHz accelerated graphics runs Ubuntu Mate as its primary Operating system.
The video output is either in HDMI format, or composite.

The Various Measurement and Control tools
------------------------------------------

*	Several 12-bit Analog inputs with programmable gains, and maximum ranges varying from +/-16V to +/-5mV. 
*	Frequency counter tested up to 16 MHz. 
*	4-channel Logic analyzer with 15nS resolution, and DMA based approach that does not block user access to other functions while it acquires data. Independent function calls available to measure time differences between specified level changes on different digital inputs.
*	4-channel oscilloscope capable of monitoring all the above mentioned analog inputs at maximum 1 million samples per second. CPU is free to run other commands received during acquisition.
*	Single-channel oscilloscope allows acquisition at up to 2MSPS.
*	SINE1 : 5Hz - 5KHz arbitrary waveform generator. Manual amplitude control up to +/-4Volts
*	SINE2 : 5Hz - 5KHz arbitrary waveform generator. Fixed amplitude of +/-4Volts
*	up to four phase correlated PWM outputs with maximum frequency 32MHz, 15nano second duty cycle, and phase difference control.

*	12-bit Constant Current source. Maximum current 3.3mA [subject to load resistance]. voltage monitoring must be carried out externally to check for saturation.
*	SPI,I2C,UART outputs that can be configured and controlled entirely through Python functions.
*	Onboard NRF24L01+ transceiver for wireless data acquisition.
*	5V,3.3V power supply outputs.

*	Graphical Interfaces for Oscilloscope, Logic Analyzer, streaming data, wireless acquisition, and several experiments developed that use a common framework which drastically reduces code required to incorporate control and plotting widgets.

*	Standalone Mode that uses a 128x64 OLED to display a few basic measurements.
*	WiFi mode with access point / station mode.    


Launching the Graphical Apps
-----------------------------

SEELablet includes an `extensive set of apps <./experiments.html>`_ that can be accessed by
running::

	v0-experiments

This will start a launcher with a list of available apps and experiments
as well as a section with widgets that allow one-click control and measurement.


.. figure:: ../images/vlabtool-v0-gui.png
	:width: 15cm
	:align: center
	:alt: alternate text
	:figclass: align-center
	
	Example Screenshot of Graphical Applications


.. only:: html

	Example Videos of the SEELablet
	------------------------------

	.. toctree::
	   :maxdepth: 2

	   videos

