Skip to content

v0.9.2 - Live Measurement Logging update

Pre-release
Pre-release

Choose a tag to compare

@ariDev1 ariDev1 released this 16 Jul 08:16
· 186 commits to master since this release

🧩 Features

  • 📷 Live screenshots from the oscilloscope (via VNC)
  • 📊 Channel settings: coupling, bandwidth, scale, offset, probe
  • ⏱️ Trigger and timebase information
  • 📈 Waveform measurements: Vpp, Vavg, Vrms (up to 4 channels)
  • 📤 CSV export of waveform data
  • 🧪 Long-time measurement mode with:
    • ✅ Pause / Resume
    • ✅ Manual Stop
    • ✅ CSV output with timestamps
    • ✅ UI disables controls during logging
  • 🔁 Dynamic button states (Start/Stop/Pause adjust automatically)
  • 🆔 Built-in version tracking: app version, Git commit, and build date
  • 🖥️ CLI support:
    • --version: show app version and exit
  • 🐞 Scrollable debug log
  • 🌙 Dark mode GUI with resizable window and tabs
  • 🐳 Docker support for easy deployment and portability

🛠️ Installation (Tested on Ubuntu 24.04 Noble)

📦 Native Python Setup

sudo apt install python3-tk

git clone https://github.com/ariDev1/MSO5000_liveview.git
cd MSO5000_liveview/
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python3 main.py

Or use the prewritten installation script:

bash how-to-install.txt

💡 Tested on Ubuntu 24.04 LTS with Python 3.12 and VNC enabled on the Rigol scope.


🐳 Docker Support (X11 and Wayland compatible)

You can now run this app in a self-contained Docker container with GUI support.

🔧 Build the Image

docker build -t mso5000_liveview .

🚀 Run It

./run.sh

The script automatically detects whether you're running X11 or Wayland, sets up the display bridge, and launches the GUI.

📁 Where Are My CSV Files?

All exported CSV files are saved to:

~/oszi_csv/

This folder is automatically mapped into the container and persists even after exit.

Requires: Docker, X11 or Wayland+XWayland, and VNC + SCPI enabled on the oscilloscope.


☁️ Optional: Pull Pre-Built Image from Docker Hub

Prefer not to build it yourself? Use the official pre-built image:

docker pull aridev1/mso5000_liveview:v0.9.2

Then run:

docker run -it --rm \
  -e DISPLAY=$DISPLAY \
  -v /tmp/.X11-unix:/tmp/.X11-unix \
  -v $HOME/oszi_csv:/app/oszi_csv \
  --network host \
  aridev1/mso5000_liveview:v0.9.2

📦 Python Requirements

Listed in requirements.txt, install with:

pip install -r requirements.txt

Dependencies include:

  • pillow, numpy, pyvisa, pyvisa-py
  • requests, vncdotool, psutil, zeroconf

🖧 Prerequisites

  • Your Rigol MSO5000 is on the same local network as your PC
  • VNC is enabled on the oscilloscope
  • SCPI over TCP/IP is working
  • You know the IP address of the scope

🚀 How to Use

After launching the app:

python3 main.py

You’ll be prompted to enter the IP address of the oscilloscope. The GUI will show:

  • Live screenshot (top)
  • Tabbed interface:
    • System Info (includes Git version info)
    • Channel Data
    • Debug Log
    • Licenses
    • Long-Time Measurement (with CSV export)

🖥️ Command-Line Options

You can run the tool with additional command-line flags:

python3 main.py --version

This shows:

MSO5000 Live Monitor v0.9.2
Git Commit: abc1234
Build Date: 2025-07-16 08:00 UTC

More CLI options may be added in the future.


📁 File Structure

MSO5000_liveview/
├── Dockerfile
├── run.sh
├── .dockerignore
├── main.py
├── build_version.py
├── version.py          ← auto-generated
├── requirements.txt
├── how-to-install.txt
├── oszi_csv/           ← output folder for logs
├── docs/
│   └── screenshot.png

⚠️ Firmware Notice

This tool is optimized for hacked firmware (unofficial). Adjustments have been made to:

  • Skip unstable SCPI queries
  • Avoid timeouts and hangs
  • Maintain compatibility with patched behavior

📃 License

This project is for educational and personal use only.
Not affiliated with Rigol Technologies.