Giter VIP home page Giter VIP logo

scoppy's Introduction

If you are looking for the Scopy Oscilloscope by Analog Devices you can find it here.

Scoppy

Scoppy is an oscilloscope and logic analyzer powered by your Android phone/tablet and Raspberry Pi Pico or Pico W. Signals are measured by the Pico and the waveforms are displayed on the Android device. No programming is required and both the app and firmware are free to download1. Installation is super easy and should only take a few minutes.

The Pico W version allows you to use your phone/tablet as the oscilloscope display without the need for a physical connection between your phone and the Pico W.

The aim of the Scoppy project is to give electronics novices and hobbyists and STEM students access to an ultra-ultra cheap oscilloscope that is useful for viewing low voltage, low frequency signals. Scoppy is also a logic analyzer with a sample rate of 25MS/s.

What you'll need

  • An Android device that's running Android version 6.0 (Marshmallow) or higher. The device must also support USB OTG (On-The-Go) - most modern phones/tablets do (if you don't see the app when browsing the Play Store then your device probably doesn't support this feature)
  • A USB OTG adapter/cable compatible with your phone/tablet (available for a few dollars)
  • A Rasperry Pi Pico or Pico W board

Important
Please use the latest versions of the App (v1.020) and Firmware (v11). Older versions of the firmware may not work with the latest version of the app and vice versa

Getting started

See the Installation and Getting Started guide.

Want more information?

Start at the documentation index.

Discussions/Forum

Go to the Discussions section of this repository to well ... discuss Scoppy. For example, ask and answer questions, give feedback, request features, report bugs, share your front-end designs or comment on just about anything related to Scoppy, Oscilloscopes, Logic Analyzers or electronics in general.

Measuring different voltage ranges (oscilloscope mode)

To remove the 0-3.3V input voltage limitation (and do whatever signal conditioning magic takes your fancy) you’ll need to add an analog front end. This can be as simple as a voltage divider or as complex as you want it to be. The Documentation contains some examples of simple and cheap AFE designs and you are encouraged to share your own front end designs and ideas with other Scoppiers. Just head to the forum.

Here's an example of a two channel, super-cheap front end that is easy to build and uses readily available components.

Two channel front end

Or for something a bit more fancy, here's a front-end that features multiple voltage ranges per channel, 10X probe compatibility and an input impedance of 1M||22pF. The schematic and PCB design can be found here at OSHWLab. The boards can also be purchased at the FHDM store.

FScope

Tips

  • If the traces or grid lines look too narrow then you can change the width in Settings (tap Menu to see the Settings option)
  • Long-pressing most of the control buttons will set the corresponding setting to a default value eg. long-pressing the horizontal position button will reset the horizontal position back to zero. Long-pressing the trigger level button will set the trigger level to the centre of the waveform.
  • Long-pressing any of the +/- buttons will continuously change the corresponding value. The longer you press it the faster the value will change.
  • Tap the GND indicator (the right pointing arrow on the left of the screen) to change the selected channel. The selected channel is the one that responds to vertical swiping/zooming and tapping the vertical scale and position buttons.

Quirks

  • If the screen turns off or the app is no longer in the foreground, the run mode will change to STOPPED (to prevent draining the battery). You will need to tap RUN to restart the scope.
  • The OFF trigger mode prevents all triggering and Scoppy will set the horizonal position so that it is displaying the most recent samples (it normally tries to find a trigger point near the centre of the sample record). This in combination with a long Time/Div setting is equivalent to roll mode on many 'scopes.

Troubleshooting

  • If your phone has a Micro-USB connecter then check that the Micro-USB plug of the OTG cable/adapter is plugged into the phone and not into the Pico!
  • If the Pico doesn't seem to be connecting try the following:
    • tap STOP and then RUN
    • OR
    • unplug the USB cable and plug it back in
  • If it's still not working then it's possible that your phone/tablet doesn't support USB OTG. You can test this by attaching a USB thumb drive to the OTG cable/adapter. You should be able to browse the files on the drive.
  • Some diagnostic information is also writtern to the Pico UART on GPIO 0 & 1

Specifications and features (oscilloscope)

  • Max. Sampling Rate: 500kS/s (shared between channels)
  • Time/Div: 5us - 20secs
  • Memory depth depends on sampling rate. It ranges between 2kpts (shared between channels) and 20kpts in Run mode and up to 100kpts for Single shot captures.
  • 2 channels
  • Auto and Normal triggering
  • Cursors
  • X-Y Mode
  • FFT
  • Wireless connectivity

Specifications (logic analyzer)

  • Max. Sampling Rate: 25MS/s (per channel)
  • Time/Div: 50ns - 100ms
  • 8 channels

Known Bugs

  • When long-pressing the + or - buttons, moving your finger laterally will have the same effect as lifting your finger off the button. The only workaround is to keep your finger stready when long-pressing these buttons.

Links

Tutorials/Experiments

1Advertising and in-app purchase

The free (zero cost) version of the app is limited to one channel and USB. A single banner ad may be displayed at the top of the screen. To enable the extra channel(s) and wireless support and remove all advertising, a small in-app purchase is required (approx. US$2 for a lifetime purchase - exact price depends on your location).

Gallery

Scoppy Oscilloscope App Screenshot

Scoppy Development Scoppy app on a Nokia 2.1

Scoppy Logic Analyser Logic Analyzer mode

Scoppy FFT FFT of a square wave

Scoppy FFT Both Channels FFT showing both channels and the YT (scope) window

Scoppy XY + YT X-Y and YT displayed simultaneously

scoppy's People

Contributors

fhdm-dev avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.