Bug 1830 - OLS device driver exits prematurely when waiting for data
Summary: OLS device driver exits prematurely when waiting for data
Status: UNCONFIRMED
Alias: None
Product: libsigrok
Classification: Unclassified
Component: Driver: openbench-logic-sniffer (show other bugs)
Version: 0.5.2
Hardware: x86 Windows
: Normal major
Target Milestone: ---
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-02-12 21:16 CET by g3gg0.de
Modified: 2023-02-12 21:21 CET (History)
0 users



Attachments
Log files (2.35 KB, application/x-zip-compressed)
2023-02-12 21:16 CET, g3gg0.de
Details
short video showing captures (523.67 KB, video/mp4)
2023-02-12 21:21 CET, g3gg0.de
Details

Note You need to log in before you can comment on or make changes to this bug.
Description g3gg0.de 2023-02-12 21:16:28 CET
Created attachment 790 [details]
Log files

Hi,

I implemented a SUMP compatible, USB-CDC based logic analyzer app for flipper zero and tried working with it using PulseView v0.4.1 and v0.4.2, Windows, x64

Whenever I capture data the first time, I get a trace and all works as expected.

However clicking "Run" a second time, initiates an acquisition the second time and PulseView stops immediately without waiting for the device to return any data.
According to the SUMP protocol, or better how I understand it, after the CMD_ARM (0x01), there is no reply from the device, except for the capture data.
This capture will, depending on the triggers, get sent delayed.
In the current version, PulseView/SigRok is not waiting for data to arrive, nor does it show any error or status.

As I am not too deep into the source code of this project, I am not very certain,
but I expect the issue be caused by the driver, thus I filed this report for libsigrok

Especially https://github.com/sigrokproject/libsigrok/blob/master/src/hardware/openbench-logic-sniffer/protocol.c#L372
caught my attention as it tells that it will wait on the *first transaction*, but I would have expected a "Received %d bytes"
in the log messages on the second try.

I attached two log files, one for the first capture and a second which is the exact next log entries when I clicked another time "Run".
In these logs it is clearly visible that PulseView stops without receiving any data.


Can you have a look at it and tell me if this is a bug in the driver, or if there is something else?

Regards,
g3gg0
Comment 1 g3gg0.de 2023-02-12 21:21:05 CET
Created attachment 791 [details]
short video showing captures

This is a very short video (size limit...) that shows the actions being done.
you can pause it at ciritcal steps.
The log content was uploaded already, this is just supplemental material.