Bug 1070 - Pulseview with DSLogic basic is not displaying actual data
Summary: Pulseview with DSLogic basic is not displaying actual data
Alias: None
Product: libsigrok
Classification: Unclassified
Component: Driver: dreamsourcelab-dslogic (show other bugs)
Version: unreleased development snapshot
Hardware: All All
: Normal major
Target Milestone: ---
Assignee: Nobody
Depends on:
Reported: 2017-12-08 23:54 CET by Brian
Modified: 2017-12-15 18:43 CET (History)
2 users (show)

Two screenshots of Pulseview and DSView (39.66 KB, application/zip)
2017-12-09 15:08 CET, Brian
A pair of screenshots showing a logic 8 clone and the DSLogic in Pulseview on the same input signal (28.39 KB, application/zip)
2017-12-12 20:45 CET, Brian

Note You need to log in before you can comment on or make changes to this bug.
Description Brian 2017-12-08 23:54:20 CET
Using the current nightly release of pulseview with a DreamsourceLabs DSLogic basic, the script-loaded firmware files, and the Zadig WinUSB driver, the displayed data is unrelated to the actual data input to the DSLogic, although a periodic pattern.  If the same DSLogic setup is used with DSView, the displayed data agrees with the oscilloscope that is also connected to the input.  The signal comes from a standard pulse generator.  The data is at 10 pulses per second, with a 10 milliSecond pulse.  In either case, the DSLogic is configured for one input, 1MHz sample rate, and 1 million samples.  This is nowhere near an edge case.
Comment 1 Soeren Apel 2017-12-08 23:56:02 CET
Hi, this is most likely a driver bug.

Can you attach a screenshot?
Comment 2 Brian 2017-12-09 01:25:09 CET
Thanks for your response.
I will see about doing that but the behavior is not visibly remarkable.  The various settings dialogs and the capture/display state machine all seem to operate normally. it recognizes the device correctly when it is connected, and it shows plausible logic waveforms; they just aren't the real ones.
Comment 3 Brian 2017-12-09 15:08:19 CET
Created attachment 349 [details]
Two screenshots of Pulseview and DSView

This is a pair of edited screenshots, one from PulseView and one from DSView
showing the different displays I am seeing some of the time.
Comment 4 Brian 2017-12-09 15:17:01 CET
It is behaving better today for no apparent reason.
Sometimes the data is reasonable, sometimes it is sort of doubled up, but consistently throughout the capture.
I am a long time hardware and software engineer with a lot of experience with logic analyzers, including  professional ones and and I recognize that this sort of symptom could be due to marginal signal quality, but in this case the signal is quite clean as seen on a co-connected oscilloscope, and coming from a lab quality pulse generator.
I also notice that with PulseView, the timing scale seems only randomly related to the triggering, even worse than with DSView which is sloppy but semi-reasonable.  I don't intend criticism but is this known to be true?
Comment 5 Uwe Hermann 2017-12-10 13:59:25 CET
I think one open issue with the driver is that it defaults to a voltage threshold of 0V, which should certainly be changed to something more useful.

Did you set a voltage threshold of 1.8V or something like that in your tests? If no, do the results get more usable after you do?

I've done a quick test of 1Msamples, 1MHz samplerate, probing a 1kHz square wave from a function generator (4Vpp), no triggers, voltage threshold 1.8V. That looks reasonably usable to me in PulseView, but with different threshold values it starts to look increasingly less great, of course.

I'm pretty sure this is not Windows specific btw, changing that in the bug metadata.
Comment 6 Brian 2017-12-12 19:54:11 CET
Early on I had forgotten to set the threshold voltage.  I thought it was not settable in the basic version; only in the pro version, which I don't have.  I will have to look into this.

Setting that helped, but there are serious issues with the DSLogic support in the timing area.  A simple pulse train is displayed with major period differences  and other problems.  The oscilloscope shows a good consistent pulse train.  Using an 8bit logic clone shows a good consistent pulse train.
Comment 7 Brian 2017-12-12 20:45:31 CET
Created attachment 350 [details]
A pair of screenshots showing a logic 8 clone and the DSLogic in Pulseview on the same input signal

This an example of the timing issues I am seeing with the DSLogic.