Cheap low-speed PC/USB oscilloscope firmware + dll for "black pill" board - STM32F401.
"Black pill" is a minimalistic, inexpensive STM32F401 board:
- using miniscope v4 Windows GUI
- single channel
- interface (communication + power supply): USB 2.0 FS (USB-C cable)
- sampling: 782609 samples per second (18 MHz ADC clock, 15 cycles sampling), 8 bit/sample, real time streaming
- buffer sizes: 4 kB ... 2 MB defined in dll, continuous recording to file option
- analog input: A1; some input protection like resistor + two diodes would be recommended
- B0 output used as 1 kHz square wave source (test signal generated by timer)
- program STM32F401 with supplied firmware (I've used ST-Link, but UART or USB DFU bootloader should work too)
- connect STM board to PC using USB; new device should appear in Device Manager
- use Zadig to install libusb-win32 (there are both 32- and 64-bit versions included in Zadig) driver
- copy miniscope_v2g.dll to /device subdirectory of miniscope v4
- start miniscope v4 and select miniscope_v2g.dll to be used
- for testing: B0 (1 kHz timer output) can be connected to A1 (analog input)
Some customization like defining/changing available voltage/gain ranges can be done by editing miniscope_v2g_capabilities.cfg file (JSON format). This file would be created with some default values (two voltage ranges, 0 ... 3.3 V and 0 ... 6.6 V) after first run. After closing miniscope v4 you can manually edit this file. Adding or changing values in "Sensitivity" array would be then visible in GUI.