Scope-O-Matic is an oscilloscope in Euro Rack format build using an arduino nano. It is based on a design described in this blog.
The code the arduino runs is based on software version 2.0. Version 3 was released a few days ago on the blog but the changes are of no consequence for the use case described here. You will need an arduino nano with an Atmel ATMega 328p for this (Note: a 168p does not have enough memory for the program). Changes made to the code simplify what is displayed on the screen. The use case this was done for is to have a simple wave display that shows the waveform of signals used in a modular synthesis system. The original code was meant for doing measurements. All the original C++ code is still there, it just does not show that much info anymore as I was only interested in the waveform and not in doing exact measurements. The changes are implemented in such a way that they can be easily adapted to your need. The code can be found in the Scope-O-Matic repository.
The electronics were adapted from the original circuit diagram so that they are able to show AC-signals as well. This meant adding a few resistors to the original circuit’s input stage to create a DC-offset. Potentiometer Rv1 was added as a signal attenuator. Make sure to check that the signal is properly attenuated otherwise it will be clipped and What You See is Not What You Hear (WYSINWYH) !
The circuit is so simple that I did not investing any time in designing a strip board. I designed a front panel in Euro Rack format and went from there. Apart from the nano there are only a few components needed and most of them are attached to the panel. If you want to build this in kosmo style, you will need to make some changes obviously.
I started hot glueing the toggle buttons to the 3D-printed panel ( STL and others files can be found in the Scope-O-Matic repository).
I think I used the 10H version of this type of button:
Next I added the potentiometer and the 3.5 mm jack inputs and glued the LEDs in place.
As you can see there is not much room left for soldering, so you need a thin soldering tip to be able to do that. One LED shows that the scope is triggering, the other flashes when you press one of the buttons of the scope. I used some grey nail polish to darken the LEDs on the nano. They were flashing a bit too brightly to my taste and I could see them in my euro rack flashing between the panels.
The PCB contains only a few components.
The eagle eyed among you have probably spotted it. The socket for the power was damaged at some point but I left it in there. The text in black ‘ROOD’ signals where the red wire of the flat cable should go. I used a special type which has long copper tracks which are ideal for power and ground tracks.
You can get those from aliexpress
As you can see the pcb is hot-glued the front panel via a shallow rail.
The nano is not glued to the pcb, so that I can easily exchange it should the need arise.
I didn’t have connectors the size the nano needs, so I used a few for the pins I needed.
The display fits snuggly in a small pocket I created in the panel.
It is wired to the pcb via a hole in the pocket on the back side.
For the 1st scope I made I used a white display.
I’ve made a 2nd one with a yellow display and added an extra jack input to it (RHS of the picture below). This 2nd jack is meant as a thru. This makes is easier if e.g. you want to see the signal that is on some module which already has some patch cable connected to it. Patch that cable in the thru input of the scope and the scope into the module. This basically saves you from needing a multiple to connect the scope to an input and the 2nd wire to the module.
The time base of the scope can be set via the buttons from very fast i.e. 200 micro seconds to relatively slow i.e. 200 milli seconds, in 9 steps. You can set the triggering to positive or negative going and set the display on hold. The device is auto scaling but via the menu system you can also choose a scale. For more details I refer you to the original blog. Because the software has an auto scaling feature, you can best either choose the A5V or A50V setting and it will adapt to the input voltage. Due to the DC-offset circuitry that was added the other settings may display the signal with an offset from the screen center. So you better not use those. As already mentioned, use the atenuator knob to prevent high amplitude signals from clipping.
Any settings you make are written to the Nano’s EEPROM, so are retained at startup.
In this video you can see my 2 oscilloscopes in action:
[Edit] Please check the rest of this thread for updated versions of the schematic, software and build.