RIGOL MSO5000 Live Monitor (Hacked FW Compatible)

  • 177 Views
  • Last Post 4 hours ago
baerndorfer posted this 2 days ago

Hi all,

because i was not very satisfied with Web-View from Rigol for my MSO5000 i build my own one.

This tool provides a live view and SCPI-based data extraction from a **Rigol MSO5000** oscilloscope with **hacked firmware** via VNC and VISA (SCPI) interfaces.

The script displays:
- Live screenshots from the oscilloscope (via VNC)
- Channel information including coupling, bandwidth, scale, offset, and probe settings
- Trigger and timebase settings
- Raw waveform statistics (Vpp, Vavg, Vrms) for up to 4 channels
- A scrollable debug log for diagnostics

## Requirements

This script is written in Python 3 and depends on the following libraries:

| Library    | Purpose                            |
|------------|------------------------------------|
| `tkinter`  | GUI interface                      |
| `Pillow`   | Image processing for screenshots   |
| `numpy`    | Numerical processing of waveforms  |
| `pyvisa`   | SCPI communication over TCP/IP     |
| `vncdo`    | VNC client to capture screen image |

### Install dependencies

Make sure you have Python 3 installed, then:

```bash
sudo apt install python3-tk python3-pip
pip3 install pillow numpy pyvisa
sudo apt install vncdo
```

> Note: On Debian/Ubuntu systems, `vncdo` is often available as a package. If not, install it via `pip install vncdo`.

##How to Use

```bash
python3 rigol_vnc_liveview4.py
```

You will be prompted in the terminal to enter the IP address of your RIGOL MSO5000.

Make sure:
- The oscilloscope is on the same network.
- VNC is enabled on the oscilloscope.
- The oscilloscope responds to SCPI commands over TCP/IP.

##Hacked Firmware Notice

This script is optimized to **avoid crashing or hanging** when used with unofficial / hacked firmware:
- Timeouts are reduced
- Some known problematic SCPI queries are skipped or blacklisted after failure

##Screenshot Path

By default, screenshots are saved temporarily at:
```
/tmp/oszi_screenshot.png
```

##Customization

You can adjust these in the script:
- `INTERVALL_BILD`: How often to update the screenshot (seconds)
- `INTERVALL_SCPI`: How often to fetch SCPI data (seconds)
- `WAV_POINTS`: Number of waveform points to request per channel

##License

This project is for **personal use only**. Use at your own risk. Not affiliated with Rigol Technologies.

Attached Files

Order By: Standard | Newest | Votes
baerndorfer posted this 2 days ago

Hi all,

because i was not very satisfied with Web-View from Rigol for my MSO5000 i build my own one.

This tool provides a live view and SCPI-based data extraction from a **Rigol MSO5000** oscilloscope with **hacked firmware** via VNC and VISA (SCPI) interfaces.

The script displays:
- Live screenshots from the oscilloscope (via VNC)
- Channel information including coupling, bandwidth, scale, offset, and probe settings
- Trigger and timebase settings
- Raw waveform statistics (Vpp, Vavg, Vrms) for up to 4 channels
- A scrollable debug log for diagnostics

## Requirements

This script is written in Python 3 and depends on the following libraries:

| Library    | Purpose                            |
|------------|------------------------------------|
| `tkinter`  | GUI interface                      |
| `Pillow`   | Image processing for screenshots   |
| `numpy`    | Numerical processing of waveforms  |
| `pyvisa`   | SCPI communication over TCP/IP     |
| `vncdo`    | VNC client to capture screen image |

### Install dependencies

Make sure you have Python 3 installed, then:

```bash
sudo apt install python3-tk python3-pip
pip3 install pillow numpy pyvisa
sudo apt install vncdo
```

> Note: On Debian/Ubuntu systems, `vncdo` is often available as a package. If not, install it via `pip install vncdo`.

##How to Use

```bash
python3 rigol_vnc_liveview4.py
```

You will be prompted in the terminal to enter the IP address of your RIGOL MSO5000.

Make sure:
- The oscilloscope is on the same network.
- VNC is enabled on the oscilloscope.
- The oscilloscope responds to SCPI commands over TCP/IP.

##Hacked Firmware Notice

This script is optimized to **avoid crashing or hanging** when used with unofficial / hacked firmware:
- Timeouts are reduced
- Some known problematic SCPI queries are skipped or blacklisted after failure

##Screenshot Path

By default, screenshots are saved temporarily at:
```
/tmp/oszi_screenshot.png
```

##Customization

You can adjust these in the script:
- `INTERVALL_BILD`: How often to update the screenshot (seconds)
- `INTERVALL_SCPI`: How often to fetch SCPI data (seconds)
- `WAV_POINTS`: Number of waveform points to request per channel

##License

This project is for **personal use only**. Use at your own risk. Not affiliated with Rigol Technologies.

Attached Files

Jagau posted this yesterday

Hello Baern,

how do we open this file?

Jagau

 

Fighter posted this yesterday

Hi Jagau,

That's a Python script. I'm not coding in Python but I know in order to run it you should install Python on your computer:

https://www.python.org/downloads/

To see its content you can open it in Notepad.

Regards,

Fighter

"If you want to find the secrets of the universe, think in terms of energy, frequency and vibration."
Nikola Tesla
baerndorfer posted this yesterday

i made an update, so that we can extract channel-data from scope. 



Jagau posted this yesterday

Ok thank you both

Jagau

baerndorfer posted this yesterday

to be honest i do not know how to install python on windows. i guess you use windows. but it should not be complicated. when you have it on your machine you will need the libraries which i noted in first post. when all is running you should open a terminal and start the script by typing 'python3 scriptname.py' and it should work. if it don't run you will get error messages which will tell you what libs are missing.

the last version includes 4 tabs with lots of data..

happy coding

regards

B

 

maybe you want to unlock your MSO5000 for some good reason you can find information at eevblog 

@Fighter: i do not know if you like to have this link on server. simply delete it if you have to. 

Attached Files

  • Liked by
  • Fighter
  • Jagau
Jagau posted this 12 hours ago

Hi Baern


This is what I currently have on my oscilloscope.

Same as yours.

As for programming, I'm not knowledgeable enough to play around with it. I'll just stick to the first result, which is excellent, as in the photo. Thanks anyway.

Jagau

  • Liked by
  • Fighter
  • baerndorfer
baerndorfer posted this 11 hours ago

you made it which is excellent! 😀

the new version can handle multiple oszilloscopes and we can do a Long-Time-Measurement to get data out.

it works for a single channel and i try to make it work for all channels simultaniously which is difficult because of scpi and tcp limits.

when there are no more bugs i will upload this new version.

thx for testing!

regards
B

  • Liked by
  • Fighter
  • Jagau
Fighter posted this 11 hours ago

@Fighter: i do not know if you like to have this link on server. simply delete it if you have to.

Do not worry, we don't have this kind of restrictions here, this is our team's site.

The only links which we shouldn't post are links which could be harmful to our members and our visitors like pointing to spam, viruses, trojans, etc.

It's absolutely not the case here, the link is on subject and pointing to a technical site.

Fighter

"If you want to find the secrets of the universe, think in terms of energy, frequency and vibration."
Nikola Tesla
AlteredUnity posted this 6 hours ago

Nice job baerndorfer! I've been testing a few script for simple core parameters, can you make it collect math channels data too? It would make things a lot easier then doing math by script finding switching spots for segmented integration.....

  • Liked by
  • baerndorfer
baerndorfer posted this 4 hours ago

i decide to published this thing to github. since there are many MSO5000 users out there with hacked hardware it makes sense somehow.

https://github.com/ariDev1/MSO5000_liveview

if math channels are working (finding a way out via scpi) on hacked MSO5000 i will integrate them. good idea 

  • Liked by
  • AlteredUnity
Close