SCP: Oscilloscope plugin

This plugin is deprecated, and work on it has stopped for now, since @thetechnobear has written a much more fully-featured plugin here!

scp.so.zip (1.9 MB)

Here’s the beginnings of a dedicated Oscilloscope plugin, inspired by the Mordax Data.

Right now, it just displays four inputs on a full-screen scope in different colours.

Improvements planned (no timeline):

  • Adjusting the vertical scale and position of each trace with the encoders
  • Adding some voltage scale information next to each encoder

Improvements needed (but not planned, because I don’t know how to approach them):

  • Adjusting the timescale of the display. It seems like that would require changing the audio buffer size, which VST plugins don’t have access to, but I am not an expert, so if anyone can think how to do this then let me know!

Any other feedback or suggestions welcome, either here or in the form of Pull Requests or Issues on Github. The code repo is here.

Edit: I just want to say that this is me learning to make plugins for the SSP and came about partly because it was the smallest change from the sample SSP SDK (QVCA module.) So it’s early days, a bit of fun right now but hopefully it will get more useful over time…

2 Likes

Previous discussion started here.

Awe this looks wicked! any chance of a user toggle for an all black background?

Cheers,

Neil

1 Like

Feature request noted! I, too, appreciate the beauty of Data’s “simple” mode :sunglasses:

The idea of the grid was to better measure and compare waveforms, but the grid divisions are totally arbitrary right now. Maybe I should take it out and bring it back as an option once it actually means something… also, Juce happens to have a function called fillCheckerboard, which was quicker than drawing an actual grid :smirk:

1 Like

Just watched a DivKid video and remembered about the XY mode on the Data. That would be awesome to implement, too!

1 Like

yess! Love it! great progress so far!

1 Like

scp.so.zip (1.9 MB)

Okay, here’s an update. You can now:

  • Position each trace by turning the same-coloured encoder
  • Scale each trace by pushing and turning the encoders
  • Toggle the background on and off with the LeftShift key (just for you, @NeilParfitt!)
  • The background squares represent 1V vertically, so -5V - +5V (with the caveats around calibration found elsewhere, I’m just taking 1.0 = 5V.)

Known issues:

  • The way the controls change the parameters is based on the SSP SDK, and apparently it’s not the best way? The encoders behave a bit weirdly when positioning and scaling the traces, and I know for sure the background toggle button can be improved. Try holding it down if it doesn’t change.
  • THE BIG ONE: Fixed timebase. It only works for some frequencies until the timebase can be changed. This requires reworking how the audio buffer is sent to the UI, but @thetechnobear is already doing some work in this area, so I think I won’t go down that path until he shows the way.

Feedback welcome - this has been a great learning experience so far, and helping me on the road to my goal of porting more “real” modules to the SSP.

4 Likes

awesome! Can’t wait to try this out :slight_smile:

This is so dope dude thanks alot! First thing my friend said when he saw the SSP:
“Such a nice display, is there an oscilloscope for it?”

Well now there is, gorgeous!

1 Like

Clearly I need to draw the waveforms as curves instead of lines, this is what happens at higher frequencies :laughing:

I’m seeing the value of having a scope that can display multiple waveforms at once, though. Useful for monitoring eg. what @titaanzink’s excellent Ochtet patch is up to.

2 Likes

Thanks for the plug! It looks like you’re steering the SSP into digital art territory with this particular scope view.

1 Like

Deprecating this plugin, in favour of @thetechnobear’s awesome DATA plugin. Check it out instead!