Willy-JL a54304c73a Merge oscilloscope from https://github.com/anfractuosity/flipperscope hai 1 ano
..
.github 0b5b9ddadf Add oscilloscope from https://github.com/anfractuosity/flipperscope %!s(int64=2) %!d(string=hai) anos
docs a54304c73a Merge oscilloscope from https://github.com/anfractuosity/flipperscope hai 1 ano
icons 0b5b9ddadf Add oscilloscope from https://github.com/anfractuosity/flipperscope %!s(int64=2) %!d(string=hai) anos
photos 0b5b9ddadf Add oscilloscope from https://github.com/anfractuosity/flipperscope %!s(int64=2) %!d(string=hai) anos
scenes a54304c73a Merge oscilloscope from https://github.com/anfractuosity/flipperscope hai 1 ano
screenshots 0b5b9ddadf Add oscilloscope from https://github.com/anfractuosity/flipperscope %!s(int64=2) %!d(string=hai) anos
.gitsubtree 914d8eacf9 Fix merge %!s(int64=2) %!d(string=hai) anos
README.md 0b5b9ddadf Add oscilloscope from https://github.com/anfractuosity/flipperscope %!s(int64=2) %!d(string=hai) anos
application.fam a54304c73a Merge oscilloscope from https://github.com/anfractuosity/flipperscope hai 1 ano
scope.c 3f2fa0eaa2 Merge oscilloscope from https://github.com/xMasterX/all-the-plugins hai 1 ano
scope_10px.png 0b5b9ddadf Add oscilloscope from https://github.com/anfractuosity/flipperscope %!s(int64=2) %!d(string=hai) anos
scope_app_i.h fe2077c82e New formatting hai 1 ano

README.md

flipperscope

To compile and install

cd flipperzero-firmware/applications_user
git clone https://github.com/anfractuosity/flipperscope.git
cd ..
./fbt DEBUG=1 VERBOSE=1 fap_scope
./fbt launch_app APPSRC=applications_user/flipperscope

Alternatively the binary can now be installed from https://lab.flipper.net/apps/flipperscope or the Flipper Mobile App.

Provide signal to pin 16/PC0, with a voltage ranging from 0V to 2.5V and ground to pin 18/GND.

Press the 'ok' button (button in the centre of joypad) to pause/unpause the waveform display.

Demo showing three different waveform types from a signal generator.

Also see Derek Jamison's demonstration of this app as well as other interesting projects.

Measurements

  • Measures frequency of waveform in hertz
  • Measures voltage: min, max, Vpp

Signal Generator

Flipper Zero running flipperscope

Rigol

Flipper Zero running flipperscope

Processing captures

You can use the following simple Python script, for processing the captured waveforms, from flipperscope.

import matplotlib.pyplot as plt
import numpy as np
import struct

fig, ax = plt.subplots()
data = open("Sine.dat", "rb").read()
y = [(float(x[0]) / 2500) * 2.5 for x in struct.iter_unpack("<H", data)]
x = np.arange(len(y))

ax.plot(x, y, label='Voltage')
ax.set_xlabel('Sample')
ax.set_ylabel('Voltage / V')
ax.set_title('ADC Voltage')
ax.set_ylim([0, 2.5])
ax.legend()
plt.show()

Captured waveform

To Do

  • Customisable input pin
  • Trigger type mode
  • FFT
  • ...

Inspiration