Miniscope v2f
Extremely cheap low-speed PC/USB oscilloscope with STM32 (STM32F042) microcontroller - variant of miniscope v2e with input amplifier (MCP6S21 PGA) added. This is minor update, but input PGA fixes problem with input leakage of STM32F042 allowing increasing input impedance at the same time.
Quick specification
- follows miniscope v2a-d idea: very simple device streaming data in real time to PC; DLL and GUI (Win32) are handling all the functionality,
- sampling: 480 kSps, 8 bit, streaming via USB FS with libusb (32/64bit) used as driver,
- 8 voltage ranges (0..30V, 15V, 7.5V, 6V, 3.75V, 3V, 1.87V, 0.94V - PGA x1, x2, x4, x5, x8, x10, x16 and x32 respectively),
- input resistance: 1MOhm,
- noise: ~23mVpp (visible at two gain ranges with high sensitivity),
- record length: 4k to 1M defined in DLL (single screen); up to 512M samples (continuous!) when recording to file,
- firmware loading via USB (DFU bootloader embedded in ROM),
- low component count: MCU, voltage regulator, mini-USB and few passive SMD components on single-sided PCB.
BOM
Retail prices are from my local distributor, YMMV but listed prices are rather in top range.
- STM32F042Fx (MCU): $2 retail, $1 volume
- MCP6S21 (PGA): $1.40 retail, $0.80 volume
- MCP1700 (voltage regulator): $0.50 retail
- mini-USB socket: $0.55 retail
- other: < $2
Schematic: miniscope_v2f.pdf
Note: 3.3V voltage regulator can be used as well. It would change voltage ranges which may be compensated either by
using software calibration function in GUI or recompiling DLL with changed fBasicSens value.
Eagle files: miniscope_v2f_eagle.zip
"Panelized" PCB printout for toner etching: miniscope_v2f_pcb_panelized.pdf
Heat shrink tube as cheap housing:
-
2015.09.19 Initial release
Firmware (Keil): miniscope_v2f_firmware.zip
DLL for miniscope v4: miniscope_v2f_dll.zip
Basic binaries in single archive (GUI + DLL + FW): miniscope_v2f_bin.7z -
2018.07.10
- removed unnecessary, misleading CDC endpoint (device manager shows only single item now)
- changed device ID to "miniscope v2f 20180710"
- changed device class to 0xFF (Vendor Specific)
- removed libusb driver files from firmware archive - use Zadig to install libusb-win32 driver
- miniscope.exe in archive with binaries updated to version 4.1.0.0
DLL for miniscope v4: miniscope_v2f_dll_20180710.zip
Basic binaries in single archive (GUI + DLL + FW): miniscope_v2f_bin_20180710.zip
Big thanks to electronics-lab.com for featuring this project (as well as previous versions).