Rigol DS1000Z remote control and waveform viewer
 
 
 
Go to file
Teuniz 09a5eccb39 Work in progress. 2017-12-29 10:55:27 +01:00
images Work in progress. 2016-11-22 21:06:24 +01:00
install Work in progress. 2016-11-22 21:06:24 +01:00
third_party/kiss_fft Start to implement FFT. 2016-01-04 14:20:26 +01:00
LICENSE Basic functions working with DS6000 series. 2015-05-30 14:00:32 +02:00
README.md Nothing. 2017-10-15 18:48:04 +02:00
about_dialog.cpp Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
about_dialog.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
connection.cpp Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
connection.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
decode_dialog.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
decode_dialog.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
dsremote.pro Update minimum Qt version requirements. 2017-09-14 21:05:51 +02:00
edflib.c Work in progress. 2017-12-29 10:55:27 +01:00
edflib.h Work in progress. 2017-12-27 16:30:10 +01:00
global.h Work in progress. 2017-12-29 10:55:27 +01:00
images.qrc Work in progress. 2016-11-22 21:06:24 +01:00
interface.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
lan_connect_thread.cpp Added the possibility to use a hostname instead of an IP-address for the LAN connection. 2017-09-09 18:40:22 +02:00
lan_connect_thread.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
main.cpp Settings dialog: added possibility to invert colors of screenshot. 2015-12-25 18:09:12 +01:00
mainwindow.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
mainwindow.h Merge pull request #22 from momu/add-print-shortcut 2017-10-19 21:56:02 +02:00
mainwindow_constr.cpp Changed screenshot short-cut to ctrl+p. 2017-10-19 22:08:01 +02:00
notes.txt Added Record & Playback function. 2017-05-14 18:16:49 +02:00
playback_dialog.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
playback_dialog.h Added Record & Playback function. 2017-05-14 18:16:49 +02:00
read_settings_thread.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
read_settings_thread.h Fixed a bug related to the "Auto" command. 2017-02-16 20:31:35 +01:00
readme_usbtmc_driver.txt Update readme. 2017-02-04 18:07:43 +01:00
save_data.cpp Work in progress. 2017-12-27 16:30:10 +01:00
save_data_thread.cpp Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
save_data_thread.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
screen_thread.cpp Added Record & Playback function. 2017-05-14 18:16:49 +02:00
screen_thread.h Added Record & Playback function. 2017-05-14 18:16:49 +02:00
serial_decoder.cpp Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
settings_dialog.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
settings_dialog.h Added the possibility to use a hostname instead of an IP-address for the LAN connection. 2017-09-09 18:40:22 +02:00
signalcurve.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
signalcurve.h Added Record & Playback function. 2017-05-14 18:16:49 +02:00
tdial.cpp Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
tdial.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
timer_handlers.cpp Attempt to make the DS2000 series work. 2017-11-15 17:49:05 +01:00
tled.cpp Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
tled.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
tmc_dev.c Added Record & Playback function. 2017-05-14 18:16:49 +02:00
tmc_dev.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
tmc_lan.c Added the possibility to use a hostname instead of an IP-address for the LAN connection. 2017-09-09 18:40:22 +02:00
tmc_lan.h Updated the copyright notice to 2017. 2017-01-02 10:59:35 +01:00
utils.c Work in progress. 2017-01-06 17:34:49 +01:00
utils.h Work in progress. 2017-01-06 17:34:49 +01:00
wave_dialog.cpp Work in progress. 2017-01-11 12:38:42 +01:00
wave_dialog.h Work in progress. 2017-01-07 19:19:37 +01:00
wave_view.cpp Fix sensitivity. 2017-10-20 19:23:42 +02:00
wave_view.h Show the channel labels in the Wave Inspector. 2017-01-02 11:13:36 +01:00

README.md

DSRemote

Operate your Rigol oscilloscope from your Linux desktop.

How to compile:

  • Install Git, the GCC compiler and the Qt4 development package:
    Linux Mint 18: sudo apt-get install git-core libqt4-dev libqt4-core g++
    openSuse Leap 42.2: sudo zypper in git-core libqt4-devel
    Fedora 25: sudo dnf install git-core qt-devel gcc-c++

  • Download the source code:
    mkdir DSRemote_git
    cd DSRemote_git
    git init
    git pull https://github.com/Teuniz/DSRemote

  • Create the makefile:
    Linux Mint 18: qmake
    openSuse Leap 42.2: qmake
    Fedora 25: qmake-qt4

  • Compile the source code and install it:
    make -j16
    sudo make install

Now you can run the program by typing: dsremote

Read also the file readme_usbtcm_driver.txt and the file notes.txt.

Supported devices

DS6000 and DS1000Z series oscilloscopes.

MSO4000/DS4000 series

There is some basic support like capturing screenshots.

Not tested yet:

  • Record & Playback function
  • Wave Inspector
  • serial decoding.

In case you insist on using Qt5, the recommended way is not to use the Qt5 libraries that comes with your distro. Instead, download and compile the Qt5 source and use that to compile DSRemote. Here's a step by step list of instuctions:

First, fulfill the requirements for Qt:

http://doc.qt.io/qt-5/linux.html

Debian/Ubuntu: sudo apt-get install build-essential libgl1-mesa-dev libcups2-dev libx11-dev

Fedora: sudo dnf groupinstall "C Development Tools and Libraries" sudo dnf install mesa-libGL-devel cups-devel libx11-dev

openSUSE: sudo zypper install -t pattern devel_basis sudo zypper install xorg-x11-devel cups-devel freetype-devel fontconfig-devel

#############################################################################################

Compile a static version of the Qt5 libraries excluding all modules that are not needed.

This will not mess with your system libraries. The new compiled libraries will be stored

in a new and separate directory: /usr/local/Qt-5.9.2

It will not interfere with other Qt programs.

#############################################################################################

mkdir Qt5-source

cd Qt5-source

wget http://ftp1.nluug.nl/languages/qt/official_releases/qt/5.9/5.9.2/single/qt-everywhere-opensource-src-5.9.2.tar.xz

here is a list of download mirrors: https://download.qt.io/static/mirrorlist/ The Qt source package you are going to need is: qt-everywhere-opensource-src-5.9.2.tar.xz

tar -xvf qt-everywhere-opensource-src-5.9.2.tar.xz

cd qt-everywhere-opensource-src-5.9.2

./configure -v -release -opensource -confirm-license -c++std c++11 -static -accessibility -fontconfig -skip qtdeclarative -skip qtconnectivity -skip qtmultimedia -no-qml-debug -qt-zlib -no-mtdev -no-journald -qt-libpng -qt-libjpeg -system-freetype -qt-harfbuzz -no-openssl -no-libproxy -no-glib -nomake examples -nomake tests -no-compile-examples -cups -no-evdev -no-dbus -no-eglfs -qreal double -no-opengl -skip qtlocation -skip qtsensors -skip qtwayland -skip qtgamepad -skip qtserialbus

(takes about 1.5 minutes)

make -j8

(takes about 11 minutes)

sudo make install

Now go to the directory that contains the DSRemote sourcecode and enter the following commands:

/usr/local/Qt-5.9.2/bin/qmake

make -j8

sudo make install

Now you can run the program by typing: dsremote

Congratulations! You have compiled a static version of DSRemote that can be deployed on other systems without the need to install the Qt libraries. In order to reduce the size of the executable, run the following commands:

strip -s dsremote

upx dsremote