- 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).
Voltmeter mode is automatically switched on with a steady voltage signal (when it would be represented by a flat line).
Requires: Arduino UNO R3 or Teensy USB board and Monochrome 0.96" 128x64 OLED graphic display (SSD1306 driver)
- 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
- 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.
UNO R3 and Teensy 3.1 (with upside-down display mode).
- Arduino board:
- Arduino UNO R3, Arduino Pro Mini, Arduino Pro Trinket or Other Arduino Atmega328 board, or
- Teensy 3 (less expensive and more powerful)
- 0.96" OLED display with SSD1306 and I2C mode (that's what I tried. SPI mode is also supported by the Adafruit library but wiring is different). Many stores sell these and in different colors.
- Arduino IDE
- type B USB cable, few jumper wires
Either use Sketch -> Import Library or make a libraries folder and drop them in there.
- Adafruit_SSD1306 from https://github.com/adafruit/Adafruit_SSD1306
- Must edit Adafruit_SSD1306.h to pick the set display type to SSD1306_128_64
- Adafruit_GFX from https://github.com/adafruit/Adafruit-GFX-Library