Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rigol dho support #246

Open
wants to merge 11 commits into
base: master
Choose a base branch
from
Open

Conversation

fredzo
Copy link

@fredzo fredzo commented Aug 29, 2024

Hi,
This PR is based on the work of Diana Ellefson (OrionOth) : #229
and RemiNV : 3430e8e
It's been discussed on EEVblog forum and tested by different users on DHO 800, 900, 1000 and 4000: https://www.eevblog.com/forum/testgear/new-sigrokpulseview-hardware-support-(siglent-sds-hd-rigol-dho800-)/
I've tried not to change any behavior of the original driver.
Please let me know if you have any comment.
Best regard,
Frederic.

Frederic Borry and others added 10 commits June 27, 2024 00:30
…c Kuzmenko) in this PR : github.com/sigrokproject/pull/176/

Created a new protocol version "E11" matching the latest Siglent SDS Scope programming guide.
Reduced the read-wait time from 7sec to 50ms for better performance (achived by looping on read sample logic to consume the data has it arrives).
Tested with SDS2504X HD model connected via Ethernet cable.
Based on the work of Diana Ellefson (OrionOth) : sigrokproject#229
and RemiNV : sigrokproject@3430e8e
@LinusCDE
Copy link

LinusCDE commented Oct 11, 2024

I'm getting a DHO924 for work and was previously doing some testing with a cheap LA and this software. I'm so exited that I can use this software in future with the DSO as well.

Btw @fredzo, @i404788 also opened a PR that seems to address one of the limitations you had. This would certainly be cool, if it were merged/included here as well. 👍


Currently thinking, if it's worth the effort to figure out how to compile and use it on Fedora already. Was thinking of making a RPM out of it, but have never made one, just compiling and force-loading the lib for pulseview might work as well.

If I do that, I can also give some results on whether it works for me or what is not working.

@LinusCDE
Copy link

LinusCDE commented Oct 11, 2024

I managed to get it to build and run this on Fedora (+ the patch pr). I'll test the Oscilloscope later.

I'm currently on Fedora 40 KDE Spin. I needed to rebuild pulseview as well or got a linking error on launch, so it is also included.

For building, I followed RedHat's Tutorial on Building RPMs. So this is pretty much a Hello-RPM for me.

You can download the rpmbuild folder here. It included all sources, adapted spec files for building as well as the built srpm and rpm files.

So just download it, optionally rebuild it and overwrite your existing libsigrok by installing these RPMs (sudo rpm -U <RpmFiles>) if you're interested as well.

grafik

@LinusCDE
Copy link

I tested it yesterday. The DHO924 gets instantly recognized, when attached via USB.

Seems to work fine. Also tested TCP/IP connection with success as well. 👍

screenshot0226

screenshot0227

@LinusCDE
Copy link

I noticed one crash: When I'm connected via USB, using Data source "Memory" and stop the run before everything was downloaded (and it auto-stops), the next time I press "Run", the program gives me this popop. When I press okay, it segfaults:

image

Stack-Trace:

image

Text (full GDB Log with all messages)
╰─$ gdb pulseview
GNU gdb (Fedora Linux) 15.1-1.fc40
Copyright (C) 2024 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<https://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
    <http://www.gnu.org/software/gdb/documentation/>.

For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from pulseview...
Reading symbols from /usr/lib/debug/usr/bin/pulseview-0.4.2-18.fc40+rebuild.x86_64.debug...
(gdb) r
Starting program: /usr/bin/pulseview

This GDB supports auto-downloading debuginfo from the following URLs:
  <https://debuginfod.fedoraproject.org/>
Enable debuginfod for this session? (y or [n])
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7fffe48006c0 (LWP 51406)]
[New Thread 0x7fffe0e006c0 (LWP 51409)]
[New Thread 0x7fffdbe006c0 (LWP 51410)]
[New Thread 0x7fffd8c006c0 (LWP 51411)]
[New Thread 0x7fffd3e006c0 (LWP 51412)]
[New Thread 0x7fffd34006c0 (LWP 51413)]
[New Thread 0x7fffd2a006c0 (LWP 51414)]
[New Thread 0x7fffd20006c0 (LWP 51415)]
[New Thread 0x7fffd16006c0 (LWP 51416)]
[New Thread 0x7fffd0c006c0 (LWP 51417)]
[New Thread 0x7fffc4c006c0 (LWP 51418)]
[New Thread 0x7fffbfe006c0 (LWP 51419)]
[New Thread 0x7fffbf4006c0 (LWP 51420)]
[New Thread 0x7fffbea006c0 (LWP 51421)]
[New Thread 0x7fffbe0006c0 (LWP 51422)]
[Thread 0x7fffbe0006c0 (LWP 51422) exited]
[Thread 0x7fffbea006c0 (LWP 51421) exited]
[Thread 0x7fffbf4006c0 (LWP 51420) exited]
[Thread 0x7fffbfe006c0 (LWP 51419) exited]
[Thread 0x7fffc4c006c0 (LWP 51418) exited]
[Thread 0x7fffd0c006c0 (LWP 51417) exited]
[New Thread 0x7fffd0c006c0 (LWP 51423)]
/usr/share/libsigrokdecode/decoders/arm_etmv3/pd.py:215: SyntaxWarning: invalid escape sequence '\s'
  instpat = re.compile('\s*([0-9a-fA-F]+):\t+([0-9a-fA-F ]+)\t+([a-zA-Z][^;]+)\s*;?.*')
/usr/share/libsigrokdecode/decoders/arm_etmv3/pd.py:216: SyntaxWarning: invalid escape sequence '\.'
  branchpat = re.compile('(b|bl|b..|bl..|cbnz|cbz)(?:\.[wn])?\s+(?:r[0-9]+,\s*)?([0-9a-fA-F]+)')
/usr/share/libsigrokdecode/decoders/arm_etmv3/pd.py:217: SyntaxWarning: invalid escape sequence '\s'
  filepat = re.compile('[^\s]+[/\\\\]([a-zA-Z0-9._-]+:[0-9]+)(?:\s.*)?')
/usr/share/libsigrokdecode/decoders/arm_etmv3/pd.py:218: SyntaxWarning: invalid escape sequence '\s'
  funcpat = re.compile('[0-9a-fA-F]+\s*<([^>]+)>:.*')
/usr/share/libsigrokdecode/decoders/arm_itm/pd.py:116: SyntaxWarning: invalid escape sequence '\s'
  instpat = re.compile('\s*([0-9a-fA-F]+):\t+([0-9a-fA-F ]+)\t+([a-zA-Z][^;]+)\s*;?.*')
/usr/share/libsigrokdecode/decoders/arm_itm/pd.py:117: SyntaxWarning: invalid escape sequence '\s'
  filepat = re.compile('[^\s]+[/\\\\]([a-zA-Z0-9._-]+:[0-9]+)(?:\s.*)?')
/usr/share/libsigrokdecode/decoders/arm_itm/pd.py:118: SyntaxWarning: invalid escape sequence '\s'
  funcpat = re.compile('[0-9a-fA-F]+\s*<([^>]+)>:.*')
/usr/share/libsigrokdecode/decoders/ds1307/pd.py:51: SyntaxWarning: invalid escape sequence '\/'
  l += [('bit-' + re.sub('\/| ', '-', b).lower(), b + ' bit') for b in bits]
[Detaching after fork from child process 51424]
sr: hwdriver: Cannot set 'samplerate' to 0.
Wayland does not support QWindow::requestActivate()
[New Thread 0x7fffc4c006c0 (LWP 51438)]
[Thread 0x7fffc4c006c0 (LWP 51438) exited]
[New Thread 0x7fffc4c006c0 (LWP 51441)]
[Thread 0x7fffc4c006c0 (LWP 51441) exited]
[New Thread 0x7fffc4c006c0 (LWP 51451)]
sr: scpi_usbtmc: USBTMC invalid bulk in header.
sr: rigol-ds: Cannot get samplerate (WAV:XINC? failed).
sr: session: Could not start rigol-ds device usbtmc/5.15 acquisition.
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x555555a439a0), parent's thread is QThread(0x5555557729b0), current thread is QThread(0x7fff9c001be0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x555555a441a0), parent's thread is QThread(0x5555557729b0), current thread is QThread(0x7fff9c001be0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x555555a441a0), parent's thread is QThread(0x5555557729b0), current thread is QThread(0x7fff9c001be0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x555555a439a0), parent's thread is QThread(0x5555557729b0), current thread is QThread(0x7fff9c001be0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x555555a439a0), parent's thread is QThread(0x5555557729b0), current thread is QThread(0x7fff9c001be0)
QObject::installEventFilter(): Cannot filter events for objects in a different thread.
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x555555a439a0), parent's thread is QThread(0x5555557729b0), current thread is QThread(0x7fff9c001be0)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x555555a439a0), parent's thread is QThread(0x5555557729b0), current thread is QThread(0x7fff9c001be0)
QObject::installEventFilter(): Cannot filter events for objects in a different thread.

Thread 1 "pulseview" received signal SIGSEGV, Segmentation fault.
0x00007fffe4b17788 in std::__cxx11::list<QtWaylandClient::QWaylandShmBuffer*, std::allocator<QtWaylandClient::QWaylandShmBuffer*> >::remove(QtWaylandClient::QWaylandShmBuffer* const&) () from /lib64/libQt5WaylandClient.so.5
Missing debuginfo, try: dnf debuginfo-install boost-filesystem-1.83.0-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install boost-serialization-1.83.0-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install glibmm2.4-2.66.7-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libsigrokdecode-0.5.3-18.fc39.x86_64
Missing debuginfo, try: dnf debuginfo-install glib2-2.80.3-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtbase-gui-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtbase-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libstdc++-14.2.1-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install glibc-2.39-22.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libgcc-14.2.1-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install boost-atomic-1.83.0-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libserialport-0.1.1-18.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libftdi-1.5-12.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install nettle-3.9.1-6.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libusb1-1.0.27-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libzip-1.10.1-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libtirpc-1.3.5-0.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libieee1284-0.2.11-43.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install zlib-ng-compat-2.1.7-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libsigc++20-2.12.1-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install python3-libs-3.12.6-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install pcre2-10.44-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libglvnd-glx-1.7.0-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libpng-1.6.40-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install harfbuzz-8.5.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install systemd-libs-255.12-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install double-conversion-3.3.0-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libicu-74.2-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install pcre2-utf16-10.44-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libzstd-1.5.6-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libmount-2.40.1-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libselinux-3.7-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install bzip2-libs-1.0.8-18.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install xz-libs-5.4.6-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install openssl-libs-3.2.2-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install krb5-libs-1.21.3-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libcom_err-1.47.0-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libffi-3.4.4-7.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libX11-1.8.10-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libXext-1.3.6-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libglvnd-1.7.0-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install freetype-2.13.2-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install graphite2-1.3.14-15.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libcap-2.69-8.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install lz4-libs-1.9.4-6.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libblkid-2.40.1-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install keyutils-libs-1.6.3-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libxcb-1.17.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libbrotli-1.1.0-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libXau-1.0.11-6.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtwayland-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libwayland-cursor-1.23.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libwayland-client-1.23.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install fontconfig-2.15.0-6.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libxkbcommon-1.6.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libxml2-2.12.8-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install dbus-libs-1.14.10-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install plasma-integration-qt5-6.2.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtquickcontrols2-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kio-file-widgets-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kio-widgets-libs-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kio-gui-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-knotifications-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kwindowsystem-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kwayland-5.116.0-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libXcursor-1.2.1-7.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtdeclarative-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kio-core-libs-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kjobwidgets-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kservice-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kcompletion-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kxmlgui-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kiconthemes-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kconfigwidgets-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-ki18n-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kconfig-gui-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kwidgetsaddons-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kconfig-core-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtx11extras-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kcoreaddons-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kbookmarks-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-solid-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kitemviews-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kguiaddons-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libcanberra-0.30-35.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtspeech-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libXtst-1.2.5-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install dbusmenu-qt5-0.9.3-0.34.20160218.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install xcb-util-keysyms-0.4.1-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libXfixes-6.0.1-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libXrender-0.9.11-6.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kcrash-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kauth-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libacl-2.3.2-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kdbusaddons-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kglobalaccel-libs-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtsvg-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-karchive-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kcodecs-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libimobiledevice-1.3.0^20230705git6fc41f5-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libplist-2.3.0-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libproxy-0.5.5-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libvorbis-1.3.7-10.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libtdb-1.4.10-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libtool-ltdl-2.4.7-10.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libXi-1.8.2-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libattr-2.5.2-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libimobiledevice-glue-1.0.0-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libusbmuxd-2.0.2^20230620git8d30a55-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libogg-1.3.5-8.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libcurl-8.6.0-10.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install duktape-2.7.0-7.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libnghttp2-1.59.0-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libidn2-2.3.7-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libssh-0.10.6-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libpsl-0.21.5-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install openldap-2.6.7-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libunistring-1.1-7.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libevent-2.1.12-12.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install cyrus-sasl-lib-2.1.28-19.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libxcrypt-4.4.36-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libglvnd-egl-1.7.0-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libwayland-egl-1.23.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install mesa-libEGL-24.1.7-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install mesa-libgbm-24.1.7-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install mesa-libglapi-24.1.7-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install expat-2.6.3-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libX11-xcb-1.8.10-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libdrm-2.4.123-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libwayland-server-1.23.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libxshmfence-1.3.2-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install mesa-dri-drivers-24.1.7-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install llvm-libs-18.1.8-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install lm_sensors-libs-3.6.0-18.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install elfutils-libelf-0.191-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libedit-3.1-53.20240808cvs.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install ncurses-libs-6.4-12.20240127.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libpciaccess-0.16-12.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install plasma-breeze-qt5-6.2.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kirigami2-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-frameworkintegration-libs-5.115.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kf5-kimageformats-5.116.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libavif-1.0.4-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libdav1d-1.4.3-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install rav1e-libs-0.7.1-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install svt-av1-libs-2.1.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libaom-3.9.0-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libwebp-1.3.2-5.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libjxl-0.8.3-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libvmaf-2.3.0-7.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install highway-1.2.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install openexr-libs-3.1.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install imath-3.1.12-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libheif-1.17.6-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libjpeg-turbo-3.0.2-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install openjpeg2-2.5.2-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install LibRaw-0.21.3-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install jasper-libs-4.2.1-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install lcms2-2.16-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libgomp-14.2.1-3.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtimageformats-5.15.13-1.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libmng-2.0.3-21.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install qt5-qtwebengine-5.15.16-4.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install libtiff-4.6.0-2.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install liblerc-4.0.0-6.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install jbigkit-libs-2.1-29.fc40.x86_64
Missing debuginfo, try: dnf debuginfo-install kwayland-integration-6.2.0-1.fc40.x86_64
(gdb) bt
#0  0x00007fffe4b17788 in std::__cxx11::list<QtWaylandClient::QWaylandShmBuffer*, std::allocator<QtWaylandClient::QWaylandShmBuffer*> >::remove(QtWaylandClient::QWaylandShmBuffer* const&) () at /lib64/libQt5WaylandClient.so.5
#1  0x00007fffe4b1daf4 in QtWaylandClient::QWaylandShmBackingStore::resize(QSize const&) () at /lib64/libQt5WaylandClient.so.5
#2  0x00007fffe4b1dd0f in QtWaylandClient::QWaylandShmBackingStore::beginPaint(QRegion const&) () at /lib64/libQt5WaylandClient.so.5
#3  0x00007ffff6efb175 in QBackingStore::beginPaint(QRegion const&) () at /lib64/libQt5Gui.so.5
#4  0x00007ffff759d92b in QWidgetRepaintManager::paintAndFlush() () at /lib64/libQt5Widgets.so.5
#5  0x00007ffff75d187f in QWidget::event(QEvent*) () at /lib64/libQt5Widgets.so.5
#6  0x00007ffff77e7b9c in QMessageBox::event(QEvent*) () at /lib64/libQt5Widgets.so.5
#7  0x00007ffff758cbc5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#8  0x00005555555fd205 in Application::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/pulseview-0.4.2-18.fc40+rebuild.x86_64/pv/application.cpp:307
#9  0x00007ffff68b4688 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#10 0x00007ffff759f34c in QWidgetRepaintManager::sendUpdateRequest(QWidget*, QWidgetRepaintManager::UpdateTime) [clone .part.0] () at /lib64/libQt5Widgets.so.5
#11 0x00007ffff75a1e2d in void QWidgetRepaintManager::markDirty<QRect>(QRect const&, QWidget*, QWidgetRepaintManager::UpdateTime, QWidgetRepaintManager::BufferState) () at /lib64/libQt5Widgets.so.5
#12 0x00007ffff75b9ba5 in QWidget::repaint(QRect const&) () at /lib64/libQt5Widgets.so.5
#13 0x00007ffff75b9c11 in QWidget::repaint() () at /lib64/libQt5Widgets.so.5
#14 0x00007ffff768acb9 in QAbstractButtonPrivate::click() () at /lib64/libQt5Widgets.so.5
#15 0x00007ffff768af1b in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () at /lib64/libQt5Widgets.so.5
#16 0x00007ffff75d0dc8 in QWidget::event(QEvent*) () at /lib64/libQt5Widgets.so.5
#17 0x00007ffff758cbc5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#18 0x00007ffff759525f in QApplication::notify(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#19 0x00005555555fd205 in Application::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/pulseview-0.4.2-18.fc40+rebuild.x86_64/pv/application.cpp:307
#20 0x00007ffff68b4688 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#21 0x00007ffff75930fd in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () at /lib64/libQt5Widgets.so.5
#22 0x00007ffff75eb307 in QWidgetWindow::handleMouseEvent(QMouseEvent*) () at /lib64/libQt5Widgets.so.5
#23 0x00007ffff75eea1f in QWidgetWindow::event(QEvent*) () at /lib64/libQt5Widgets.so.5
#24 0x00007ffff758cbc5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib64/libQt5Widgets.so.5
#25 0x00005555555fd205 in Application::notify (this=<optimized out>, receiver=<optimized out>, event=<optimized out>) at /usr/src/debug/pulseview-0.4.2-18.fc40+rebuild.x86_64/pv/application.cpp:307
#26 0x00007ffff68b4688 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib64/libQt5Core.so.5
#27 0x00007ffff6d5cb77 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /lib64/libQt5Gui.so.5
#28 0x00007ffff6d3997c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Gui.so.5
#29 0x00007fffe4b61164 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () at /lib64/libQt5WaylandClient.so.5
#30 0x00007ffff7bc2e8c in g_main_context_dispatch_unlocked.lto_priv () at /lib64/libglib-2.0.so.0
#31 0x00007ffff7c24c98 in g_main_context_iterate_unlocked.isra () at /lib64/libglib-2.0.so.0
#32 0x00007ffff7bc4383 in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#33 0x00007ffff69085bd in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#34 0x00007ffff68b303b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib64/libQt5Core.so.5
#35 0x00007ffff68bb406 in QCoreApplication::exec() () at /lib64/libQt5Core.so.5
#36 0x00005555555e2a30 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/pulseview-0.4.2-18.fc40+rebuild.x86_64/main.cpp:359
(gdb)

I'm assuming, that early stopping puts the device in some kind of unexpected state. I need to disconnect and reconnect the USB, otherwise this keeps happening every time.


I tested a bit around. Only USB with Datasource "Memory" or "Segemented" can trigger this. USB with "Live" as well as all modes over TCP/IP don't cause this. No matter how hard I abuse the Run/Stop button.

@LinusCDE
Copy link

LinusCDE commented Oct 14, 2024

Another crash: When editing the name of a channel and causing it to be come empty, pulseview instantly exits with code 1.

Messages:

Hitting backspace, when channel name is selected:

Wayland does not support QWindow::requestActivate()
sr: hwdriver: Cannot set 'samplerate' to 0.
Wayland does not support QWindow::requestActivate()
sr: rigol-ds: Read should have been completed

First typing something over the marked area, then clearing it again with backspaces:

sr: asix-omega-rtm-cli: conn= must specify a serial number.
Wayland does not support QWindow::requestActivate()

(This was using TCP/IP and the default data source "Live")


Edit: Actually, this happens even with a Demo Device for me. So it's either me mixing some wrong verions, or some other software back. Probably due to me compiling it most likely not properly.

So it's not specific to this PR.

@LinusCDE
Copy link

LinusCDE commented Oct 14, 2024

Otherwise works very well.

TCP/IP with Memory view is perfect for me. Seems the Firmware on the DHO is either outdated or otherwise misconfigured as it struggles to decode a SPI signal often. (EDIT: I think this was actually user error, is an aside anyway)

But with Pulseview this worky very well now!

image


The first crash probably needs to be addressed first (the 2nd is either my fault or not specific to this specific version). Otherwise I think this is good to go.

Can anybody else reproduce the first crash as well?

@stefanct
Copy link

I've eventually come around testing this too lately. What I am missing most yet is setting the trigger level from within pulseview (I presume this is a lack in the driver not PV but I haven't checked).

I can also confirm that the memory capturing is somewhat broken as mentioned above. In my case it completely freezes. -l5 output:

sr: [05:10.915592] rigol-ds: Requesting read of 5447 bytes
sr: [05:10.916404] rigol-ds: Error while reading block data, aborting capture.
sr: [05:10.916437] session: bus: Received SR_DF_FRAME_END packet.
sr: [05:10.916482] hwdriver: rigol-ds: Stopping acquisition.
sr: [05:10.916498] session: bus: Received SR_DF_END packet.
sr: [05:10.916522] usb: usb_source_finalize
sr: [05:13.567903] session: Stopping.
sr: [05:13.567959] hwdriver: rigol-ds: Stopping acquisition.
sr: [05:13.568081] session: bus: Received SR_DF_END packet.
sr: [05:13.568109] session: Cannot remove non-existing event source 0x557edcd28b40.

@stefanct
Copy link

I've played around more and the memory mode is almost completely broken. The first retrieval somewhat works: PV receives and displays data, but the transaction never stops. Manually stopping it ends in an error, and even worse, after that the USB device is not opened correctly anymore without reconnecting the cable. It's very weird though because apparently it can send SCPI IDN commands just fine and thus detects the DHO but the reply to CHA1:DISP? trips it then...

sr: [00:00.341807] hwdriver: Scan found 0 devices (raspberrypi-pico).
sr: [00:00.342112] serial: No serial device specified.
sr: [00:00.342132] scpi_usbtmc: Found USBTMC device (VID:PID = 1ab1:044d, bus.address = 3.106).
sr: [00:00.342146] scpi: Opening USBTMC device usbtmc/3.106.
sr: [00:00.342164] usb: Found USB device (VID:PID = 1ab1:044d, bus.address = 3.106).
sr: [00:00.342169] usb: Trying to open USB device 3.106.
sr: [00:00.342186] usb: Opened USB device (VID:PID = 1ab1:044d, bus.address = 3.106).
sr: [00:00.342193] scpi_usbtmc: Interface 0 configuration 1.
sr: [00:00.342199] scpi_usbtmc: Bulk IN EP 1
sr: [00:00.342206] scpi_usbtmc: Bulk OUT EP 1
sr: [00:00.342212] scpi_usbtmc: Interrupt EP 2
sr: [00:00.342829] scpi_usbtmc: Device capabilities: L4, T6, SR0, RL0, DT0
sr: [00:00.342858] scpi_usbtmc: Successfully sent SCPI command: '*IDN?'.
sr: [00:00.343931] scpi: Got response: 'RIGOL TECHNOLOGIES,DHO804,DHO8A253801795,00.01.02', length 49.
sr: [00:00.343972] usb: Closed USB device 3.106.
sr: [00:00.347806] hwdriver: Scan found 1 devices (rigol-ds).
[…]
sr: [00:00.410787] device: rigol-ds: Opening device instance.
sr: [00:00.410800] usb: Trying to open USB device 3.106.
sr: [00:00.410851] usb: Opened USB device (VID:PID = 1ab1:044d, bus.address = 3.106).
sr: [00:00.410858] scpi_usbtmc: Interface 0 configuration 1.
sr: [00:00.410862] scpi_usbtmc: Bulk IN EP 1
sr: [00:00.410868] scpi_usbtmc: Bulk OUT EP 1
sr: [00:00.410876] scpi_usbtmc: Interrupt EP 2
sr: [00:00.411592] scpi_usbtmc: Device capabilities: L4, T6, SR0, RL0, DT0
sr: [00:00.411631] scpi_usbtmc: Successfully sent SCPI command: ':CHAN1:DISP?'.
sr: [00:00.411693] scpi_usbtmc: USBTMC invalid bulk in header.
sr: [00:00.411699] rigol-ds: Failed to get device config: generic/unspecified error.
Notifying user of session error:  "Failed to open device" ;  "generic/unspecified error"

NB: I am running the patches on top of some others etc. so I am not sure if it's this PR's fault alone. Will investigate more...

@stefanct
Copy link

I have printed the fields that usbtmc_bulk_in_header_read() checks. Looks like bTag is 2 instead of the expected 4 in that case.

sr: [00:00.379621] device: rigol-ds: Opening device instance.
sr: [00:00.379638] usb: Trying to open USB device 3.107.
sr: [00:00.379692] usb: Opened USB device (VID:PID = 1ab1:044d, bus.address = 3.107).
sr: [00:00.379701] scpi_usbtmc: Interface 0 configuration 1.
sr: [00:00.379708] scpi_usbtmc: Bulk IN EP 1
sr: [00:00.379715] scpi_usbtmc: Bulk OUT EP 1
sr: [00:00.379722] scpi_usbtmc: Interrupt EP 2
sr: [00:00.380492] scpi_usbtmc: Device capabilities: L4, T6, SR0, RL0, DT0
sr: [00:00.380535] scpi_usbtmc: Successfully sent SCPI command: ':CHAN1:DISP?'.
sr: [00:00.380601] scpi_usbtmc: MsgID: 02 02
sr: [00:00.380608] scpi_usbtmc: bTag : 02 04
sr: [00:00.380615] scpi_usbtmc: ~bTag: fd fb
sr: [00:00.380621] scpi_usbtmc: USBTMC invalid bulk in header.

Most of the IDN? replies at startup do have a tag of 2. However, I noticed that there is also a similar error there too. It is just benign in my case:

sr: [00:00.292861] serial: No serial device specified.
sr: [00:00.292882] scpi_usbtmc: Found USBTMC device (VID:PID = 1ab1:044d, bus.address = 3.107).
sr: [00:00.292895] scpi: Opening USBTMC device usbtmc/3.107.
sr: [00:00.292912] usb: Found USB device (VID:PID = 1ab1:044d, bus.address = 3.107).
sr: [00:00.292922] usb: Trying to open USB device 3.107.
sr: [00:00.292950] usb: Opened USB device (VID:PID = 1ab1:044d, bus.address = 3.107).
sr: [00:00.292955] scpi_usbtmc: Interface 0 configuration 1.
sr: [00:00.292959] scpi_usbtmc: Bulk IN EP 1
sr: [00:00.292963] scpi_usbtmc: Bulk OUT EP 1
sr: [00:00.292966] scpi_usbtmc: Interrupt EP 2
sr: [00:00.294011] scpi_usbtmc: Device capabilities: L4, T6, SR0, RL0, DT0
sr: [00:00.294056] scpi_usbtmc: Successfully sent SCPI command: '*IDN?'.
sr: [00:00.294119] scpi_usbtmc: MsgID: 02 02
sr: [00:00.294124] scpi_usbtmc: bTag : 04 02
sr: [00:00.294127] scpi_usbtmc: ~bTag: fb fd
sr: [00:00.294131] scpi_usbtmc: USBTMC invalid bulk in header.
sr: [00:00.294136] lecroy-xstream: Couldn't get IDN response.
sr: [00:00.294151] usb: Closed USB device 3.107.
sr: [00:00.298005] hwdriver: Scan found 0 devices (lecroy-xstream).

Any hints welcome. I have to get some actual work done now... :)

@fredzo
Copy link
Author

fredzo commented Feb 14, 2025

Hi @stefanct,
Thank you for your feedback.
Your logs seem to point out an issue in the usbtmc transport layer, which is out of the scope of this PR.
Is it possible for you to test the driver with LAN transport to check if it solves your issues ?
Best,
Frederic.

@stefanct
Copy link

It's broken with TCP as well. It's just not as broken afterwards but I would assume this is because of the nature of the socket connection rather than the underlying problem. I currently don't have the TCP path instrumented but here is the ordinary debug output that already looks quite fishy. This is also after a first successful (interrupted) acquisition.

Acquisition took 3.84 s
sr: [00:21.124899] hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x55e98613aae0 cg NULL -> uint64 1250000000
sr: [00:21.124947] session: Creating our own main context.
sr: [00:21.124973] session: Starting.
sr: [00:21.124983] hwdriver: rigol-ds: Starting acquisition.
sr: [00:21.124995] rigol-ds: handling channel CH1
sr: [00:21.125006] rigol-ds: handling channel CH2
sr: [00:21.125015] rigol-ds: handling channel CH3
sr: [00:21.125025] rigol-ds: handling channel CH4
sr: [00:21.125096] scpi_tcp: Successfully sent SCPI command: ':STOP'.
sr: [00:21.125124] session: bus: Received SR_DF_HEADER packet.
sr: [00:21.125156] scpi_tcp: Successfully sent SCPI command: 'WAV:XINC?'.
sr: [00:21.125174] scpi: Got response: '����������������������������������������������������������������������', length 3947.
sr: [00:21.125190] rigol-ds: Cannot get samplerate (WAV:XINC? failed).
sr: [00:21.125201] session: Could not start rigol-ds device tcp-raw/oszi/5555 acquisition.
sr: [00:21.125213] hwdriver: rigol-ds: Stopping acquisition.
sr: [00:21.125224] session: bus: Received SR_DF_END packet.
sr: [00:21.125238] session: fd_source_finalize: key 0x1a
Notifying user of session error:  "Capture failed" ;  "generic/unspecified error"

I've seen some possibly related errors when enabling the memory mode the refer to the sample rate (also with USB and TCP):

sr: [00:11.793179] hwdriver: Cannot set 'samplerate' to 0.
"Failed to configure samplerate:" invalid argument

@fredzo
Copy link
Author

fredzo commented Feb 14, 2025

It's broken with TCP as well. It's just not as broken afterwards but I would assume this is because of the nature of the socket connection rather than the underlying problem. I currently don't have the TCP path instrumented but here is the ordinary debug output that already looks quite fishy. This is also after a first successful (interrupted) acquisition.

Acquisition took 3.84 s
sr: [00:21.124899] hwdriver: sr_config_get(): key 30000 (samplerate) sdi 0x55e98613aae0 cg NULL -> uint64 1250000000
sr: [00:21.124947] session: Creating our own main context.
sr: [00:21.124973] session: Starting.
sr: [00:21.124983] hwdriver: rigol-ds: Starting acquisition.
sr: [00:21.124995] rigol-ds: handling channel CH1
sr: [00:21.125006] rigol-ds: handling channel CH2
sr: [00:21.125015] rigol-ds: handling channel CH3
sr: [00:21.125025] rigol-ds: handling channel CH4
sr: [00:21.125096] scpi_tcp: Successfully sent SCPI command: ':STOP'.
sr: [00:21.125124] session: bus: Received SR_DF_HEADER packet.
sr: [00:21.125156] scpi_tcp: Successfully sent SCPI command: 'WAV:XINC?'.
sr: [00:21.125174] scpi: Got response: '����������������������������������������������������������������������', length 3947.
sr: [00:21.125190] rigol-ds: Cannot get samplerate (WAV:XINC? failed).
sr: [00:21.125201] session: Could not start rigol-ds device tcp-raw/oszi/5555 acquisition.
sr: [00:21.125213] hwdriver: rigol-ds: Stopping acquisition.
sr: [00:21.125224] session: bus: Received SR_DF_END packet.
sr: [00:21.125238] session: fd_source_finalize: key 0x1a
Notifying user of session error:  "Capture failed" ;  "generic/unspecified error"

Yeah that's a known issue with the original Rigol driver, which is not fixed by this PR: if you interrupt an acquisition, the scope will keep on sending data which are not consumed by the driver and gets in the way for the next command (see "Got response: '������������..." which is binary data from the previous capture).

When this happens, the only solution is to close the session and start over :-/

@stefanct
Copy link

stefanct commented Feb 14, 2025

Fair enough, but should acquisitions in memory mode end by themselves?

Another funny data point: I removed the devc->analog_frame_size > ACQ_BLOCK_SIZE check that effectively prohibits any segmented acquisitions on these new scopes(?). With that I get a similar output to the memory mode. However, this ends up with an even more broken state where not even restarting PV makes it work again. Instead:

sr: [00:14.896185] scpi_tcp: Successfully sent SCPI command: '*IDN?'.
sr: [00:14.973497] scpi: Got response: '#9000030000MKJJIIJKKMNNMNMMLLLKJJJKKLMNNNNMLKKKKKKLLLMMMMMMLLLLLKLLLLL', length 2896.
sr: [00:14.973545] scpi: IDN response not according to spec: '#9000030000MKJJIIJKKMNNMNMMLLLKJJJKKLMNNNNMLKKKKKKLLLMMMMMMLLLLLKLLLLLMLLLLLLLLKKKLKKLLMNNNNLKKJGEGLRRPMMPSROKHGIJLLKJIHIKNOPPONMMLKJKKJJIJJLMNNNNNLKKKJKKLLLMNNNNNLLKJJJJLKLLNMMMMLLLKLLLLLLLMMMLLLKKLKLKLLLLMMMMMLLLLLKKKKMMNOSSPJEFIKJGFGKNQPOMLKLNOONLJGGHIJKLNNNNNNOOOMKJIIIJKLLNNMMMMLLLKJJJKLMNONNNMLLKKKKKKKLLLLMMMLLLLLLLLLLMMMMLLLLLLKJJKKLLMMMMMMKJJHEEHNRQOLNRSQMJHHJKLLKIIHILOOPONMMLKJJJKJIIJKMNNNNNMLKJKJKLLLLMNNNNMLKJJJJJKLLMNMMLLLLLLLLKLLLLLLLLLKKKKKKLLLLLMMMMMMLLLKKKKKMMNPSRNGEFJKIFFHLOQPNMKKMNPONKIGFGIJKLMNNMNNNONLJJJIIJKLMMNMMMLLLKKJJJKLMNNNNMMLKJKJKKKKKLLLLLMLLKLLLLMLLLLLLLMLLKKKKJKKKLMMMMNMKJJGDEIORQNLORSPLIHHJKMLJIIHJLNOONNNMLJJJKKKJIJKMNNMMMMLJJJJKKLLLMNNMMMLKJJJJKKLLLMMLLLLLLLKKLLLLMLLLLLKKKKKKKLLLLLMMMMMLKKKKKKLMMNQRPLGFHJIGEGIMOPNMLLLNNONMKJHHIIJKLMMMMMMNNNLKJJIJJKLLMMMMLLKKKJJJJLLMNNNMMMKKJKKKKKKKKLLLLLLLKLKKLLLLLLLLLLKKKKJJKKKLLMMMLMLJJJGEGLPPOMLORQNKIHIJKLKJIIIJLNOONNMMLKJJKKJIIJKMMMMMMLKJKKKKKKLLMMMMMLKKJJJJJKLLLMLLLLLKKLKKLKKLLLLLLKKKKLKKKLKLLLLLMMLLKKKKJKLMMNQRNJFGHKIFFHJMOONMLLLMNONLJIHHIJJKLMMMMNNNNMKJJJJJJKLMMMLLLLKKKJJIJKLMNNNMMLKKKJJJKKKLLLLKKLKLKKKKLLLLLLLKKKKKKKJJJKKKLLLLMLKJJJFEHMPPNLMPRPMJHHIJKKJIIIIKMOOONNMMLKJKKKJIIJKLMMMMLLKJJJJKKLKLLMMMMLKJJJJJJLLLMMMLLLKKKKKKKKKKKLKKKKKJKKKKKLKLLMMLLLLKKLJKJKLLMOQQMHFGJKHEFHKMOOMLLLLNNOMKJIHHIJJKLMMLMMNNMLKJJJIIJKLMMMLLLLKJJJIJJLLMNNNMLLKJJKJKKKKKKLLKKLKKKKKLLLLLLLLLLLKKKKJJJKKKLLLLLLJJJHEEIOQPMLNQQOLIHIJJKLKJIIIKMNONNMLLJJJJJJIHIKKLMMMMLLKKJKJKKLLLMMMMLLJJIIIJKKLLMMLLLLKKKKJKKKKKLLKKKKJJKKKKKLLLLMLLLLLKKKJJJLMMMQRPKGFHJJGEFILNONMKKLLNONLKHHHHIJJLMMMLMMNNMKJIIIIIJKLMLMLLLLKJJJIIKLLMMNMLLKKJJJJKKKKKLLLKKKKKKLKKLLLLLLLKKLKKKKJJJKKKKLLLLKJJIGEFKPQOLMORQOKHGIJJKKIIHIJLMONNNMLLKKKJJJIHIKLMMMMLLKJJJKKKKLLLMMMMLKJJIJJJJKKLLMLLLLLKKKKKKLKKKKKLKKJJJKKKLLLLLMLMLLKKKJJJKLLLNQQOJFGHJJGEGJMOONMLKLMNNNLJHHHIIJJKMMMLMNNNMKJJJJIJKLLMLMLLLKKJJIIJKLLMMMMLLKKJJJJJKLKKKLLLLLKKKKKLLLLKLLKKKLKKKJJJJKKLLLLLLKJJIFEFLQPNLMPRPMJHHJKLLKIHHIJLNNNNMMLKJKKJJJIIJLLMMMMLLKJJKKKKLLLMMMMMLKJIJJJJKLLLMMLLLLKKKKKKLLKKLLKKJKJJKKKKKLLLLMLLLLKKKKJJKLLMORQMHFFIJIFEHKNOONLKKLMNNNKJHHHHIJKLLMLLMNNMLKJIIIIJKLLLLLLKLKKJJJJJKLMMMMLLLKJJJJJJKKKLKLKKKLKKKLKKLMLLKLKKKLKJJJJKKKKLLLLLKJJJHEEHNQOMLNQRPMIHHJKKKJIHHJKMNONMMMLKJKKKJJIIJLLMMMMLKKJJJKKKKLLLMMMLKKJIIJJJKLLLLMLLKKKKKLKKKKLLLLKKKJJKKKKKKLKLLMLLLLKKKKJJLMMMPRQLGFGJJHEFILNONMLKLMNNNMKIHHHIJKKLMMMMMNNMLKJJJJJJKLLLLLLLKKJJJJJKLMMNNMMLKKKJJJJKKLKLLLLLKLKKKLKLLMLLLKKKKKKKKKJJKKKLLMMMLJJIGEFJOQOMLOQQOLHHIJKLKKIHIJLMNNNMMMLJJKKJJIIJKMMMMMMLKKJJKKKKKLMMMMMLLKJIJJJJKLLMMMLLLLKKKKKKLLKLLLKKJJJKKKKKKKKLLMMLLLLKKKJKLMLNQROJFGHJIGEFIMOONMLLLMNONMJIHHHIJKKLMMMMMNNMLKJIIIJKLMMMLLLKKKJJIJJKLMMNNNMLKKKJJKJKKKKLLLLLKLLKLLKLLMMLLLKKKLKKKKKKKKKLLMLLKJJJGFGLPPNLLPRQNKHHIKLLKJIIJKLNNONNMMKKJKKJIIIJLMMMMNMLLKJJKKKLLMMNNNMLKKJJJJKKLMMMMMLLLLLKKLLLKLLLLLLKKKKKLLKLLLLLMMMMLLLLKKKKMMMORRNIFGIKIGFGKNOONMKLMNNONMJIHHHIJLMMMMMMNNNLKKJJJJJKLMMMMMLLLLJJIJJKLMMMNNMLLKKKJKKKLLLLLLLLLLKKKLLLLMLLLLLLLLKKKKJ'
sr: [00:14.973638] rigol-ds: Couldn't get IDN response, retrying.

NB: That's with TCP and using -c. There shouldn't be any state whatsoever on the computer running PV.

Edit: Disconnecting the ethernet cable from the rigol didn't help - but rebooting it did. I am pretty sure the rigol firmware is very much involved in what I see...

@fredzo
Copy link
Author

fredzo commented Feb 14, 2025

Yeah I can confirm that Rigol's firmware can get in an unstable state regarding SCPI communication, to the point that you have to reboot the scope to get it back on track...
Re memory mode, I've been working on this months ago, and I don't remember if it's supposed to work sorry...
I'll give it a try when I'm back home with access to the scope.
Also a new Rigol firmware popped up since I think, which might have broke the driver... What scope model and firmware do you use ?

@stefanct
Copy link

I have a DHO804... and I made the grave error of updating the firmware now from 00.01.02 to the latest from 2024-11-22 (version 00.01.04.00.02).

live mode now is broken with...

sr: [02:08.244593] rigol-ds: New block header expected
sr: [02:08.305199] rigol-ds: Received data block header: '#9000000999' -> block length 999
sr: [02:08.305210] rigol-ds: Discarding short data block: got 999/1000 bytes

The other modes are not exactly in good shape either :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants