The main goal when I built this was to have a simple to use yet capable scope to view oscillations and an inductance meter to learn about oscillator circuits.
Commercial versions of these tools have a high price that is prohibitive to many of us, so the more affordable and open source approach of this project may allow more and more makers and hackers to explore this wonderful part of electronics.
Building our multiScope isn't hard from the hardware perspective, it is in the software that most magic happens. The base of this project was the STM32-O-Scope (which is also based on another scope), from which I got the DMA code. Without it, our scope wouldn't be so fast.
The STM32F103C8T6 is a 32bit ARM microcontroller (with a quite long name) that has higher clock and ADC resolution than any AVR based Arduino, but is still cheaper than them. Another great thing is that you may program it using the good old Arduino IDE.
I've chosen a touch screen dispay for multiScope to keep user interaction simple and flexible. With these same principles in mind, the input signal is connected to a voltage divider that can be replaced in order to reduce voltage to 3.3V, the maximum value STM32 will safely handle.
Our inductance meter is based on LM339 and a simple LC circuit whose resonant frequency we measure to get the unknown L value.
You may adapt multiScope to your needs. As I had a bmp180 lying around, it was included as an extra feature, but it's your choice. If you don't want it or want to include another kind of sensor, just change a few lines of code.
Hi! Thanks for your project! I try original O-Scope project without touchscreen, but got some problem:
I used newest rogerclarkmelbourne/Arduino_STM32 Core and downloaded
pingumacpenguin/STM32-O-Scope sketch compiled and uploaded it to the device via UART from 0x800000 address. Then I started the device. The grid and coordinate lines were displayed on the screen. Also on the screen were displayed inscriptions below 0.0 uS/Sample etc... But any noise or pulse signal from PB1 on my Probe. Why the chart is not drawn?