LXARDOSCOPE is a software implementation of an oscilloscope in LINUX, using an Arduino UNO (or ATmegaX8) for data acquisition. The graphical interface was designed to be as intuitive as possible for users who are familiar with traditional hardware oscilloscopes.
LXARDOSCOPE has been developed and tested on Mint9 (32bit) with an Arduino Uno. A serial or USB port can be used for communicating with the PC. A schematic is provided for a low cost hardware configuration without the Arduino board.
Resource utilization is modest: with LXARDOSCOPE running on my 1.6GHz computer, LXARDOSCOPE needs a maximum of 15% of CPU time, with 5 seconds of data displayed. On an old 300MHz Pentium II, utilization goes up to 55%.
- display modes: two channels, time/add/xy
- vertical: 2mV to 10V per division
- overall gain control for calibration
- horizontal: 1ms to 5 sec, for full sweep
- trace position adjustments: vertical and horizontal
- trigger: on/off, channel and edge selection
- trigger level: -10 to +10V
- hysteresis up to 5V
- signal measurements: max, min, pp, avg, rms
- signal levels and time readout for mouse pointer location selected on display
- close to 3000 samples per second, per channel
- option for reviewing snapshot of data
- option for recording input data stream to file
- option to display recorded data from file
- timebase calibration adapts to Arduino's conversion speed
- GND calibration allows for selecting arbitrary GND potential