Tiny Scope for Arduino
Switch branches/tags
Clone or download
laurb9 Merge pull request #22 from per1234/sketch-folder
Move sketch to appropriately named subfolder
Latest commit 459502d Jun 2, 2018

README.md

Tiny Scope for Arduino

Features

  • Configurable ADC speed for sampling rates from 10KHz to 300KHz (on UNO)
  • Auto grid on time base from 2ms to 50us (on UNO)
  • Vmax calibration and 3.3-5V detection using internal reference
  • 0V auto trigger
  • Display minimum-maximum voltage of captured signal
  • Square waveforms are displayed properly
  • Auto voltmeter mode when input is steady

The screenshots below are on a two-color display (yellow/blue).

Arduino UNO R3, default ADC settings Arduino UNO R3, default ADC settings, sine wave

Arduino UNO R3, fastest ADC settings Arduino UNO R3, fastest ADC settings, 255us PWM pulse

Voltmeter mode is automatically switched on with a steady voltage signal (when it would be represented by a flat line).

Voltmeter mode

Requires: Arduino UNO R3 or Teensy USB board and Monochrome 0.96" 128x64 OLED graphic display (SSD1306 driver)

Connections

  • OLED VCC - 3.3V
  • OLED GND - GND
  • OLED SCL - A5 or SCL (Teensy SCL0 pin 19)
  • OLED SDA - A4 or SDA (Teensy SDA0 pin 18)
  • PROBE WIRE - A1 (defined in tiny_scope.ino) (Teensy pin 15)
  • BUTTON - D7 button to GND

Testing

  • A1 to 5V should display 5.00 V
  • A1 to GND should display 0.00 V
  • A1 to D9 (Teensy pin 9) should display a square wave (PWM) with >2ms period and >0.5ms pulse
  • A1 to D5 should display a square wave (PWM) with >1ms period and >0.2ms pulse
  • Momentary (<0.5s) push on D7 switch cycles through available sampling speeds
  • Long >0.5s push on D7 freezes display.

Entire project

UNO R3 and Teensy 3.1 (with upside-down display mode).

Tiny Scope running on UNO R3

Tiny Scope running on Teensy 3.1

Parts

Libraries

Either use Sketch -> Import Library or make a libraries folder and drop them in there.