# Lab Switch

The Lab Switch is a USB-attached device that has a few galvanically isolated inputs and output for switching loads and signals in a lab environment.

## What it can do

It has two relays to switch loads of several ampere connected to the banana jacks on the front panel.
There are four independent opto-coupler inputs and outputs at the rear.
In parallel to the relays, there are opto-couplers that can be used instead if only a low current needs to be switched.

## Example usage

The images below show the Lab Switch being used to test how power cycling affects a Milkymist™ One.
The Lab Switch is inserted into the 5 V DC power supply such that it can switch the 5 V supply and ground.
For further control, the M1 is connected to a PC via the JTAG board.

In the left image, power is turned off. This is indicated by green LEDs on both channels. The red main LED indicates that the switch is under remote control.
In the middle image, power has been turned on and the M1 is booting into RTEMS and Flickernoise. One can see two small LEDs (appearing yellow) in the M1 that indicate this it is powered and booting.
In the right image, the M1 has booted into Flickernoise and is rendering a visual effect. This is also indicated by all three LEDs of the M1 being lit.
A few seconds later, the Lab Switch cuts power and the cycle repeats.

## The software

The firmware is currently extremely simple and just handles toggling via the front buttons and direct remote control via USB.

## Future work

The hardware is currently only designed for low "safe to touch" voltages.
It would be desirable to be able to also switch AC mains and to connect inputs or outputs to places that may be at a high potential with respect to other inputs and outputs. For this, it will be necessary to make a number of modifications to the circuit. Some of them are detailed in the README.

In the future, the firmware will be extended to allow the uploading of "scripts" that will allow for more complex patterns of interaction.
For example, instead of using a channel button as a toggle, it could switch a device on for a defined interval and then switch it off again.

## Sources, mailing list, IRC

The electrical design, the mechanical design, and the firmware can all be found in the Qi-Hardware git.

Development discussions and such happen on the qi-hardware mailing list and on the #qi-hardware channel on freenode.

Last update: 2011-09-12 Werner Almesberger