Background

Electronics can be a lot of fun- when you’ve got the right equipment. Today, most serious hobbyists own a power supply, a multimeter, a frequency generator and an oscilloscope. This setup allows them to quickly and easily carry out experiments and build interesting projects. Ingolf, a physicist, likes to understand things- his motto is “to measure is to know”. Thirty years ago, he built his first “Messmöbel” from scratch. His Messmöbel (german for “piece of furniture which measures”) combines everything he typically needs in a nice wooden cabinet. It contains an audio amplifier, a two channel, 10 MHz oscilloscope with input preamplifiers and time base, function generators (Wien Bridge and voltage controlled oscillator), and a multimeter. The power supplies provides variable voltage and current between -12 and 12 volts.


Problem

Ingolf’s Messmöbel still sits proudly in his lab, but more and more of Ingolf’s project rely on computer control. Now, the ideal device would be connected to a computer- giving him more flexibility with his experiments while still being easy to use. His requirements were simple: improved functionality, integration with his computer, and of course be enclosed in a wooden cabinet. And it had to be built in an afternoon.


Solution

Viewport- the brains, runs on the PC and the Propeller to provide these features:

  • Pulse Generator: 1hz-128Mhz
  • Configurable output patterns ranging from accurate dc voltages to sine waves, to TV pictures
  • 80Mhz Logic State Analyzer (under development)
  • 40Mhz High Speed Oscilloscope with 8 bit resolution on two channels
  • 8 Channel Oscilloscope with up to 12 bit resolution and 100Ksamples/second
  • 8 Digital IO lines- these can be used to drive servos, lights, or used to sense switches, etc.
  • Power supply for 3.3, 5, and variable 0..9V
A breadboard area lets Ingolf prototype simple circuits while the front panel allows connectivity to other devices. The Viewport Dreamkit software runs on seven of the Propeller’s eight cogs:
  • The Dreamkit Application runs spin code on 2 cogs to generate pulses, drive the front-panel interface, and control the variable power supply.
  • The Viewport Quicksample plugin runs interleaved assembly code on 4 cogs to provide up to 80Mhz of digital, or 40Mhz of analog sampling.
  • The Viewport Conduit runs assembly code on 1 cog to transfer data at 2 Megabaud over the USB cable.
This leaves Ingolf with 1 cog for his experiments. In his first experiment with the new Messmöbel Ingolf analyzed the SPI communication between the Propeller and an ADC chip. With Viewport, he triggered on the chip enable signal, took measurements of all IO activity, and then “pasted” his result into a Word document. With his old Messmöbel this same experiment took much more work: connect wires to the right pins, take each measurement separately, take photos using a camera, and then Paintshop the traces into one picture.