The DSO150 oscilloscope and similar low-cost digital scopes are widely used for basic signal visualization due to their affordability and portability. However, they have significant limitations when it comes to data storage, analysis, and real-time sharingβsuch as lacking built-in memory export, plotting on external devices, or wireless connectivity.
This project addresses those limitations by using an ESP32-C3 microcontroller to log serial output from the DSO as CSV files and host a modern web interface over Wi-Fi. Users can:
- Download, delete, or plot saved CSV files
- View SPIFFS storage usage
- Perform OTA firmware updates over the network
- Auto-connect to Wi-Fi using WiFiManager
- CSV file logging from serial input
- File browser with plot, download, and delete options
- Real-time Plotly plots of CSV data
- OTA (Over-the-Air) firmware update support
- β Added metadata display panel below plot in grid layout
- π§ Auto-detects
SampleIntervalunit (msorus) and updates x-axis label accordingly - π Improved UI layout and spacing for better readability on desktop and mobile
- π Integrated Plotly.js for waveform visualization
- ποΈ Card-style interface added for clean plot layout
- π Query string (
?name=...) support for selecting files to plot
- π€ Added OTA (Over-the-Air) firmware update capability
- π§Ή File manager supports download and delete actions
- π SPIFFS usage now displayed in UI
- π Initial release
- π‘ Serial data logging from DSO150 to ESP32-C3 via UART
- π CSV file creation and manual access over Wi-Fi
- π WiFiManager setup for headless configuration
Before uploading, install these libraries via Arduino Library Manager or PlatformIO:
| Library | Author |
|---|---|
| WiFiManager | tzapu |
| ESPAsyncWebServer | me-no-dev |
| AsyncTCP | me-no-dev |
| LittleFS | lorol |
| ArduinoOTA | Espressif Systems |
- Open Arduino IDE
- Go to Tools β Board and select:
ESP32C3 Dev Module(or your specific ESP32 board) - Set Upload Speed to
115200 - Under Partition Scheme, choose
Default 4MB with spiffs (1.5MB APP/1.5MB SPIFFS)
- Click Upload in Arduino IDE
-
On first boot, the ESP32 creates a Wi-Fi hotspot:
SSID:DSOESP
Password:DSOESPARABI -
Connect to this Wi-Fi from your computer or phone
-
The Captive Portal opens automatically (or navigate to
192.168.4.1)
β€ Connect to your home Wi-Fi -
After reboot, open the ESP32's IP address (check Serial Monitor)
The web interface shows:- List of CSV files
- File size
- Plot and download buttons
- SPIFFS usage bar
- CSV Format:
t,v(e.g., time and voltage) - OTA works over the local network (via
ArduinoOTA) - File naming:
/data_0.csv,/data_1.csv, etc. - File size limited by available SPIFFS space (~1.5MB)
Hardware wiring instructions coming soon...
MIT License