Skip to content

Rigol MSO5000 BIN file import issues #975

@I-AM-EXFOLIATING

Description

@I-AM-EXFOLIATING

I've generated a .bin waveform recording using a Rigol MSO5074 containing a 20ms span of the scope's calibration signal on channel 1 and an open input on channel 2, with 1k memory depth at 50kSa/s. Upon import of this file using the BIN Import filter graph element, the ngscopeclient (ran with --debug flag) crashes with a segmentation violation. Running on Windows 11.

Terminal output

Vendor:    Rigol
Waveforms: 1

Waveform 1:
    Samples:      1000
    Buffers:      1
    Type:         1
    Duration:     0.00 us
    Start:        0.00 us
    Interval:     0.00 ns
    Origin:       0.00 us
    Holdoff:      0.00 ms
    Sample Rate:  1000000.00 Msps
    Frame:        MSO5074
    Label:        CH1
    Serial:       MS5A210900697

    Buffer 1:
        Data Type:      12
        Sample depth:   0 bits
        Buffer length:  256 KB


Segmentation fault

The output above suggests some of the data is being misinterpreted - incorrect number of buffers, duration, sample rate, sample depth, etc. There are 1000 8-bit samples in each channel as expected.

Analysis of the minidump shows this is an access violation in BINImportFilter17OnFileNameChangedEv. I cannot share the .dmp file due to an organisational policy.

WinDbg output:


************* Preparing the environment for Debugger Extensions Gallery repositories **************
   ExtensionRepository : Implicit
   UseExperimentalFeatureForNugetShare : true
   AllowNugetExeUpdate : true
   NonInteractiveNuget : true
   AllowNugetMSCredentialProviderInstall : true
   AllowParallelInitializationOfLocalRepositories : true
   EnableRedirectToChakraJsProvider : false

   -- Configuring repositories
      ----> Repository : LocalInstalled, Enabled: true
      ----> Repository : UserExtensions, Enabled: true

>>>>>>>>>>>>> Preparing the environment for Debugger Extensions Gallery repositories completed, duration 0.000 seconds

************* Waiting for Debugger Extensions Gallery to Initialize **************

>>>>>>>>>>>>> Waiting for Debugger Extensions Gallery to Initialize completed, duration 0.032 seconds
   ----> Repository : UserExtensions, Enabled: true, Packages count: 0
   ----> Repository : LocalInstalled, Enabled: true, Packages count: 44

Microsoft (R) Windows Debugger Version 10.0.27829.1001 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.


Loading Dump File [C:\Users\<user>\AppData\Local\CrashDumps\ngscopeclient.exe.18312.dmp]
User Mini Dump File: Only registers, stack and portions of memory are available


************* Path validation summary **************
Response                         Time (ms)     Location
Deferred                                       srv*
Symbol search path is: srv*
Executable search path is: 
Windows 10 Version 26100 MP (20 procs) Free x64
Product: WinNt, suite: SingleUserTS
Edition build lab: 26100.1.amd64fre.ge_release.240331-1435
Debug session time: Thu Jun 19 11:45:29.000 2025 (UTC + 10:00)
System Uptime: 0 days 0:41:06.711
Process Uptime: 0 days 0:01:14.000
................................................................
................................................................
.....................
Loading unloaded module list
............
This dump file has an exception of interest stored in it.
The stored exception information can be accessed via .ecxr
(4788.5ea8): Access violation - code c0000005 (first/second chance not available)

+------------------------------------------------------------------------+
| This target supports Hardware-enforced Stack Protection. A HW based    |
| "Shadow Stack" may be available to assist in debugging and analysis.   |
| See aka.ms/userhsp for more info.                                      |
|                                                                        |
| dps @ssp                                                               |
|                                                                        |
+------------------------------------------------------------------------+

For analysis of this file, run !analyze -v
ntdll!NtWaitForMultipleObjects+0x14:
00007ffa`6efc2654 c3              ret
0:000> .ecxr
rax=000000000000001d rbx=000002215811f6b0 rcx=00000000000003e8
rdx=0000000000000000 rsi=00000000000000a4 rdi=0000022100000fa0
rip=00007ff9c6f587c1 rsp=00000024b5dff2a0 rbp=ffffffff00000000
r8=0000022126565a00  r9=00007ff9b35f0000 r10=0000022126560000
r11=00007ffa6cafdde1 r12=0000022100000fa0 r13=0000000000000000
r14=0000000000000001 r15=0000000000000000
iopl=0         nv up ei pl nz na pe nc
cs=0033  ss=002b  ds=002b  es=002b  fs=0053  gs=002b             efl=00010202
libscopeprotocols!ZN15BINImportFilter17OnFileNameChangedEv+0xcb1:
00007ff9`c6f587c1 f3410f100424    movss   xmm0,dword ptr [r12] ds:00000221`00000fa0=????????

Bin file (extension modified to permit upload)
I'm not sure of the intended structure but the manual says the BIN Import supports Rigol binary waveform format - it appears the scope has simply concatenated 2 binary exports, complete with a second header before the channel 2 data. The samples are not interleaved.

00000000: 5247 3031 4810 0000 0100 0000 9000 0000  RG01H...........
00000010: 0100 0000 0100 0000 e803 0000 0000 0000  ................
00000020: 5f70 8930 0000 0000 0000 0000 11ea 2d81  _p.0..........-.
00000030: 9997 713d 0000 0000 0000 0000 0200 0000  ..q=............
00000040: 0100 0000 3230 3235 2d30 362d 3139 0000  ....2025-06-19..
00000050: 0000 0000 3131 3a34 323a 3237 0000 0000  ....11:42:27....
00000060: 0000 0000 4d53 4f35 3037 343a 4d53 3541  ....MSO5074:MS5A
00000070: 3231 3039 3030 3639 3700 0000 0000 0000  210900697.......
00000080: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000090: 0000 0000 0100 0000 0000 0000 0c00 0000  ................
000000a0: 0100 0400 a00f 0000 80ca cacb cbcc cccc  ................
000000b0: cdcc cccc cdcc cccc cbcc cccc cccc cdcc  ................
000000c0: cbcc 8280 8080 8180 8180 8080 7f7f 7f80  ................
000000d0: 8080 8080 7f81 8080 8080 81cb cccb cbcb  ................
000000e0: cccc cdcc cbcc cdcc cdcc cccd cccc cccc  ................
000000f0: cdcc cbcc 8381 8180 8180 8080 8080 8080  ................
00000100: 8080 8080 7f80 7f80 8080 807f 80ca cbcb  ................
00000110: cbcc cccc cccc cccd cdcc cccc cdcc cccc  ................
00000120: cdcd cccc cdcc 8281 8080 807f 7f80 8081  ................
00000130: 8080 7f80 8080 807f 8080 7f7f 807f 80c9  ................
00000140: cbcb cccc cbcd cccc cccd cccc cdcc cdcc  ................
00000150: cccd cecd cccc cccc 8381 8281 8180 8080  ................
00000160: 8080 8080 7f80 7f80 8080 817f 8080 807f  ................
00000170: 7fca cbcc cccc cccd cccb cccc cccc cccc  ................
00000180: cdcc cbcd cccd cccc cccd 8281 8180 817f  ................
00000190: 8080 8080 8080 7f80 8180 8080 8080 8080  ................
000001a0: 807f 80ca cbcb cccc cccb cbcc cccc cccc  ................
000001b0: cdcc cccc cccc cdcd cccd cccc 8180 8181  ................
000001c0: 8080 8080 8080 8080 7f80 7f80 8080 807f  ................
000001d0: 7f7f 8080 80cb cbcc cbcb cccb cbcc cccb  ................
000001e0: cdcc cdcc cccc cccc cccc cdcc cccc 8381  ................
000001f0: 8080 8080 8080 8080 807f 8080 8180 8081  ................
00000200: 807f 8080 8080 80ca cccc cbcc cccc cdcc  ................
00000210: cccd cccd cccc cccc cdcc cccc cccd cdcc  ................
00000220: 8382 8081 8080 8080 807f 8080 7f80 8080  ................
00000230: 8080 8080 8080 8180 7fca cbcb cccc cccc  ................
00000240: cccc cdcc cccc cdcc cdcc cccd cccd cdcc  ................
00000250: cdcb 8381 8180 8180 8080 807f 807f 8080  ................
00000260: 8081 8080 8081 7f7f 8080 80cb cccb cbcb  ................
00000270: ccce cccc cccc cccc cccd cccc cccc cccd  ................
00000280: cdcc cdcd 8182 8181 807f 817f 7f80 7f80  ................
00000290: 8080 8080 8081 8080 8080 807f 80ca cbcb  ................
000002a0: cccb cccc cccb cbcc cccc cecc cccc cdcc  ................
000002b0: cccb cccc cccb 8380 8180 8080 8080 8180  ................
000002c0: 8081 8080 7f81 8080 807f 7f80 8080 80ca  ................
000002d0: cccb cbcc cbcc cccc cdcc cccc cdcc cdcc  ................
000002e0: cdcd cccd cccc cccc 8281 8180 7f80 807f  ................
000002f0: 8180 807f 7f80 7f7f 7f81 8080 807f 807f  ................
00000300: 7fc9 cbcb cbcb cccc cbcc cbcc cccc cdcc  ................
00000310: cccb cccc cbcc cccd cccc 8282 8081 8080  ................
00000320: 8080 8080 7f80 7f80 807f 807f 807f 807f  ................
00000330: 8080 80ca cbcc cccb cbcc cccc cccc cccd  ................
00000340: cdcc cbcb cccd cccb cccb cccc 8280 8081  ................
00000350: 8180 7f80 8080 807f 8080 807f 8080 8080  ................
00000360: 807f 807f 80ca cccb cccc cbcc cccb cccd  ................
00000370: cccd cccc cbcc cdcd cdcc cccb cccc 8282  ................
00000380: 8080 8080 8080 8181 8080 7f80 8080 8080  ................
00000390: 817f 807f 8080 80c9 cbcc cacc cccb cccc  ................
000003a0: cccc cdcc cdcd cdcc cccc cdcc cdcc cccc  ................
000003b0: 8382 8180 8080 8181 8080 807f 8080 8080  ................
000003c0: 8080 807f 8080 8080 80c9 cbcb cbcc cccc  ................
000003d0: cccc cccd cccd cccc cbcc cccc cdcd cdcd  ................
000003e0: cccd 8282 8180 8080 8080 8080 807f 8080  ................
000003f0: 8080 8080 8080 8080 7f80 80ca cccb cccc  ................
00000400: cccc cccd cccc cdcc cccd cccd cdcc cccc  ................
00000410: cdcc cccc 8181 8081 8081 807f 8080 8180  ................
00000420: 7f7f 817f 807f 8081 8080 8080 7fca cbcb  ................
00000430: cccc cccc cccb cccc cdcc cbcc cccd cccc  ................
00000440: cccd cccc cccc 8181 8180 8181 8081 8080  ................
00000450: 8081 8080 8080 8080 817f 8080 7f80 80c9  ................
00000460: cacb cbcb cccc cccc cccd cccd cccc cdcd  ................
00000470: cccc cccc cbcc cccd 8280 8181 8080 8080  ................
00000480: 8080 8180 8080 8080 8080 817f 7f7f 8080  ................
00000490: 5247 3031 4810 0000 0100 0000 9000 0000  RG01H...........
000004a0: 0100 0000 0100 0000 e803 0000 0000 0000  ................
000004b0: 5f70 8930 0000 0000 0000 0000 11ea 2d81  _p.0..........-.
000004c0: 9997 713d 0000 0000 0000 0000 0200 0000  ..q=............
000004d0: 0100 0000 3230 3235 2d30 362d 3139 0000  ....2025-06-19..
000004e0: 0000 0000 3131 3a34 323a 3237 0000 0000  ....11:42:27....
000004f0: 0000 0000 4d53 4f35 3037 343a 4d53 3541  ....MSO5074:MS5A
00000500: 3231 3039 3030 3639 3700 0000 0000 0000  210900697.......
00000510: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000520: 0000 0000 0100 0000 0000 0000 0c00 0000  ................
00000530: 0100 0400 a00f 0000 7f80 7f7f 7f7f 807f  ................
00000540: 7f80 8080 7f7f 807f 7e7f 7f7e 8080 7f7e  ........~..~...~
00000550: 807f 7f80 7f7f 7f80 7f7f 7f7f 807e 807f  .............~..
00000560: 7f80 8080 7f80 807f 8080 807f 8080 7f7f  ................
00000570: 7f80 8080 8080 7f80 807f 807f 807f 807f  ................
00000580: 8080 8080 807f 8080 8080 7f80 8080 7f7f  ................
00000590: 807f 807f 7f80 807f 7f7f 807f 7f80 7e80  ..............~.
000005a0: 8080 8080 807f 7f7f 7f7f 7f80 7f80 7f7e  ...............~
000005b0: 807f 8080 8080 7f7e 807f 7f7f 7f7f 7f80  .......~........
000005c0: 7f7f 807f 8080 8080 7f80 817f 8181 7f7e  ...............~
000005d0: 7f7f 807f 807f 8080 7f7f 8080 7f7e 8080  .............~..
000005e0: 7f80 807f 8080 7f7f 7e7f 7f80 7f7e 7f7f  ........~....~..
000005f0: 7f7f 8080 8081 807f 807f 8080 7f80 7f7f  ................
00000600: 7f7f 8180 8081 7f80 8180 807f 807f 7f80  ................
00000610: 807f 7f7e 7f7f 807f 807f 7f80 807e 7f7f  ...~.........~..
00000620: 8080 7f80 7f7f 7e7f 7f7f 807f 7e80 807e  ......~.....~..~
00000630: 807f 7f80 807f 7f80 7f7f 8080 7f7f 7f7f  ................
00000640: 7f7f 7f80 807f 7f80 8080 7f80 7f7f 807f  ................
00000650: 7f80 7e7f 7f7f 807f 807f 7f7f 7f80 7f7f  ..~.............
00000660: 7f80 7f7f 8080 8080 8080 8080 7f80 7f80  ................
00000670: 807e 807f 8080 7f7e 7f80 7f80 807f 807f  .~.....~........
00000680: 7f7f 7f7f 8081 7f7f 807f 807f 7e80 7f7f  ............~...
00000690: 807f 8080 7f80 7f7f 7f80 7e80 8080 807f  ..........~.....
000006a0: 8080 7f80 7f7f 7f7f 807e 807f 7f80 807f  .........~......
000006b0: 8080 7f7f 7f7f 7f80 7f80 7f80 807f 807f  ................
000006c0: 8080 7f80 7f7e 8080 7f80 8080 8080 8080  .....~..........
000006d0: 807f 7f80 807f 807f 7f80 8080 8080 8080  ................
000006e0: 7f7f 8080 7f80 8080 7f7f 7f80 7f80 807f  ................
000006f0: 807f 807f 807f 7f7e 807e 7f7f 8080 807f  .......~.~......
00000700: 7f7f 7f80 7e7f 7f7f 7f80 8080 807e 8080  ....~........~..
00000710: 7e80 7f7f 7f7f 8080 7f7e 807f 8080 7f7f  ~........~......
00000720: 7f80 807f 7e80 807f 7f7f 8080 807f 7f80  ....~...........
00000730: 807f 8080 7f7e 8080 7f7f 807f 7f7f 7f7f  .....~..........
00000740: 7f80 807f 7f7f 7f7e 7f80 7f7f 807f 7f7f  .......~........
00000750: 807f 7f80 7f80 807f 7f7f 7f80 7f81 7e80  ..............~.
00000760: 7f7f 8080 8080 7e80 807e 8080 7f7f 8080  ......~..~......
00000770: 7f7f 807f 7f7f 7f7f 807f 807f 8080 807f  ................
00000780: 807f 7f80 7e80 807e 7f80 7f80 7f80 807f  ....~..~........
00000790: 807e 807f 7f80 817f 807f 7f7f 807f 7f80  .~..............
000007a0: 807f 7f7f 807f 7f80 807f 807f 7f80 7f7f  ................
000007b0: 7f7f 7f7f 7f7f 7e80 7f7f 807f 7f7f 7f7f  ......~.........
000007c0: 7f80 7f80 8080 807f 7f7f 8080 7f80 807f  ................
000007d0: 7f7f 7f7f 7f7f 7f7f 8080 8080 8080 7f80  ................
000007e0: 7f7e 807f 7f7f 807f 807f 8080 807f 7f7f  .~..............
000007f0: 8080 807f 7f7f 8080 807f 8080 7f80 7f80  ................
00000800: 7f80 807f 7f7f 8080 8080 807f 7e7f 807f  ............~...
00000810: 7f7f 807f 7f80 7f80 807f 7f7f 807f 7f81  ................
00000820: 7f80 807f 8080 7f80 807f 807f 807f 7f80  ................
00000830: 807f 807f 7f80 7f7e 7f7f 7f7f 8080 807f  .......~........
00000840: 807f 7f7f 7f7f 807f 8080 8080 8080 807f  ................
00000850: 7f7f 807f 8080 7f80 807f 8080 7f80 7f80  ................
00000860: 8080 807e 7f80 7f7f 8080 7f80 8080 7f7f  ...~............
00000870: 7f80 8080 807f 807f 8080 7f7f 7f80 7f80  ................
00000880: 7e7f 807f 8080 8080 7f80 807f 7f80 807f  ~...............
00000890: 807f 7f80 7f7f 7f80 8080 8080 8080 8080  ................
000008a0: 7f7f 8080 8080 7f80 8080 8080 7f7f 7e7f  ..............~.
000008b0: 7f80 8080 7f7f 7f80 7f7f 7f7f 7f7f 807f  ................
000008c0: 7f7f 807f 8080 7f7f 807e 7f80 8080 807f  .........~......
000008d0: 8080 7f7f 7f7f 807f 7f7f 7f7f 8080 7f7f  ................
000008e0: 7f80 807f 7f7f 7f7f 7f80 8080 7f7f 7f80  ................
000008f0: 8080 807f 7e80 807f 8080 8080 7f80 807f  ....~...........
00000900: 807f 8080 7f7f 8080 7f7f 807f 807e 807f  .............~..
00000910: 7f7f 8080 7f7f 807f 7f7f 7f80 8080 807f  ................

Metadata

Metadata

Assignees

Labels

bugSomething isn't workingfilterFilter graph blocks

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions