Bug 137 - Intermittent device not found when using RLE.
Summary: Intermittent device not found when using RLE.
Status: CONFIRMED
Alias: None
Product: libsigrok
Classification: Unclassified
Component: Driver: openbench-logic-sniffer (show other bugs)
Version: 0.2.1
Hardware: x86 Mac OS X
: Normal normal
Target Milestone: ---
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-08-10 00:00 CEST by Joseph Lane
Modified: 2013-08-11 18:44 CEST (History)
0 users



Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph Lane 2013-08-10 00:00:37 CEST
Tested on a 64bit system: after taking an arbitrary number of captures with setting rle=on sigrok-cli will return the error "No devices found". Below is a number of failed captures with RLE on and then a few after turning it back off. Turning RLE off does not seem to "fix" the No devices found error but the device won't intermittently go unrecognized when RLE is off. The same will happen when capturing to a file instead of directing the output through a protocol decoder as I was doing in this example.

iMac:SigrokSaveFiles $ sigrok-cli --driver=ols:conn=/dev/cu.usbmodemfa131 -c samplerate=50m -c rle=on -p 0-7 --samples=24k -P i2s:sck=0:ws=1:sd=3 -l 5
sr: libsigrok loglevel set to 5.
sr: Sanity-checking all drivers.
sr: Sanity-checking all input modules.
sr: Sanity-checking all output modules.
srd: libsigrokdecode loglevel set to 5.
srd: Initializing libsigrokdecode.
srd: Adding '/usr/local/share/libsigrokdecode/decoders' to module path.
srd: Loading protocol decoder 'i2s'.
srd: Creating new i2s instance.
srd: set probes called for instance i2s with list of 3 probes
srd: Setting probe mapping: sd (index 2) = probe 3.
srd: Setting probe mapping: ws (index 1) = probe 1.
srd: Setting probe mapping: sck (index 0) = probe 0.
srd: Final probe map:
srd:  - index 0 = probe 0 (required)
srd:  - index 1 = probe 1 (required)
srd:  - index 2 = probe 3 (required)
srd: Registering new callback for output type 0.
sr: hwdriver: Initializing driver 'ols'.
sr: ols: Probing /dev/cu.usbmodemfa131.
sr: serial: Opening serial port '/dev/cu.usbmodemfa131' (flags 5).
sr: serial: Opened serial port '/dev/cu.usbmodemfa131' (fd 6).
sr: serial: Parsing parameters from "115200/8n1".
sr: serial: Setting serial parameters on port /dev/cu.usbmodemfa131 (fd 6).
sr: serial: Configuring output baudrate to 115200 (115200).
sr: serial: Configuring input baudrate to 115200 (115200).
sr: serial: Configuring 8 data bits.
sr: serial: Configuring 1 stop bits.
sr: serial: Configuring no flow control.
sr: serial: Configuring no parity.
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x02.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: hwdriver: Scan of 'ols' found 0 devices.
No devices found.
srd: Exiting libsigrokdecode.
srd: Unloading protocol decoder 'I2S'.
srd: Freeing instance i2s


iMac:SigrokSaveFiles $ sigrok-cli --driver=ols:conn=/dev/cu.usbmodemfa131 -c samplerate=50m -c rle=off -p 0-7 --samples=24k -P i2s:sck=0:ws=1:sd=3 -l 5
sr: libsigrok loglevel set to 5.
sr: Sanity-checking all drivers.
sr: Sanity-checking all input modules.
sr: Sanity-checking all output modules.
srd: libsigrokdecode loglevel set to 5.
srd: Initializing libsigrokdecode.
srd: Adding '/usr/local/share/libsigrokdecode/decoders' to module path.
srd: Loading protocol decoder 'i2s'.
srd: Creating new i2s instance.
srd: set probes called for instance i2s with list of 3 probes
srd: Setting probe mapping: sd (index 2) = probe 3.
srd: Setting probe mapping: ws (index 1) = probe 1.
srd: Setting probe mapping: sck (index 0) = probe 0.
srd: Final probe map:
srd:  - index 0 = probe 0 (required)
srd:  - index 1 = probe 1 (required)
srd:  - index 2 = probe 3 (required)
srd: Registering new callback for output type 0.
sr: hwdriver: Initializing driver 'ols'.
sr: ols: Probing /dev/cu.usbmodemfa131.
sr: serial: Opening serial port '/dev/cu.usbmodemfa131' (flags 5).
sr: serial: Opened serial port '/dev/cu.usbmodemfa131' (fd 6).
sr: serial: Parsing parameters from "115200/8n1".
sr: serial: Setting serial parameters on port /dev/cu.usbmodemfa131 (fd 6).
sr: serial: Configuring output baudrate to 115200 (115200).
sr: serial: Configuring input baudrate to 115200 (115200).
sr: serial: Configuring 8 data bits.
sr: serial: Configuring 1 stop bits.
sr: serial: Configuring no flow control.
sr: serial: Configuring no parity.
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x02.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: hwdriver: Scan of 'ols' found 0 devices.
No devices found.
srd: Exiting libsigrokdecode.
srd: Unloading protocol decoder 'I2S'.
srd: Freeing instance i2s


iMac:SigrokSaveFiles $ sigrok-cli --driver=ols:conn=/dev/cu.usbmodemfa131 -c samplerate=50m -c rle=off -p 0-7 --samples=24k -P i2s:sck=0:ws=1:sd=3 -l 5
sr: libsigrok loglevel set to 5.
sr: Sanity-checking all drivers.
sr: Sanity-checking all input modules.
sr: Sanity-checking all output modules.
srd: libsigrokdecode loglevel set to 5.
srd: Initializing libsigrokdecode.
srd: Adding '/usr/local/share/libsigrokdecode/decoders' to module path.
srd: Loading protocol decoder 'i2s'.
srd: Creating new i2s instance.
srd: set probes called for instance i2s with list of 3 probes
srd: Setting probe mapping: sd (index 2) = probe 3.
srd: Setting probe mapping: ws (index 1) = probe 1.
srd: Setting probe mapping: sck (index 0) = probe 0.
srd: Final probe map:
srd:  - index 0 = probe 0 (required)
srd:  - index 1 = probe 1 (required)
srd:  - index 2 = probe 3 (required)
srd: Registering new callback for output type 0.
sr: hwdriver: Initializing driver 'ols'.
sr: ols: Probing /dev/cu.usbmodemfa131.
sr: serial: Opening serial port '/dev/cu.usbmodemfa131' (flags 5).
sr: serial: Opened serial port '/dev/cu.usbmodemfa131' (fd 6).
sr: serial: Parsing parameters from "115200/8n1".
sr: serial: Setting serial parameters on port /dev/cu.usbmodemfa131 (fd 6).
sr: serial: Configuring output baudrate to 115200 (115200).
sr: serial: Configuring input baudrate to 115200 (115200).
sr: serial: Configuring 8 data bits.
sr: serial: Configuring 1 stop bits.
sr: serial: Configuring no flow control.
sr: serial: Configuring no parity.
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x02.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: hwdriver: Scan of 'ols' found 0 devices.
No devices found.
srd: Exiting libsigrokdecode.
srd: Unloading protocol decoder 'I2S'.
srd: Freeing instance i2s


iMac:SigrokSaveFiles $ sigrok-cli --driver=ols:conn=/dev/cu.usbmodemfa131 -c samplerate=50m -c rle=off -p 0-7 --samples=24k -P i2s:sck=0:ws=1:sd=3 -l 5
sr: libsigrok loglevel set to 5.
sr: Sanity-checking all drivers.
sr: Sanity-checking all input modules.
sr: Sanity-checking all output modules.
srd: libsigrokdecode loglevel set to 5.
srd: Initializing libsigrokdecode.
srd: Adding '/usr/local/share/libsigrokdecode/decoders' to module path.
srd: Loading protocol decoder 'i2s'.
srd: Creating new i2s instance.
srd: set probes called for instance i2s with list of 3 probes
srd: Setting probe mapping: sd (index 2) = probe 3.
srd: Setting probe mapping: ws (index 1) = probe 1.
srd: Setting probe mapping: sck (index 0) = probe 0.
srd: Final probe map:
srd:  - index 0 = probe 0 (required)
srd:  - index 1 = probe 1 (required)
srd:  - index 2 = probe 3 (required)
srd: Registering new callback for output type 0.
sr: hwdriver: Initializing driver 'ols'.
sr: ols: Probing /dev/cu.usbmodemfa131.
sr: serial: Opening serial port '/dev/cu.usbmodemfa131' (flags 5).
sr: serial: Opened serial port '/dev/cu.usbmodemfa131' (fd 6).
sr: serial: Parsing parameters from "115200/8n1".
sr: serial: Setting serial parameters on port /dev/cu.usbmodemfa131 (fd 6).
sr: serial: Configuring output baudrate to 115200 (115200).
sr: serial: Configuring input baudrate to 115200 (115200).
sr: serial: Configuring 8 data bits.
sr: serial: Configuring 1 stop bits.
sr: serial: Configuring no flow control.
sr: serial: Configuring no parity.
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x00.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x02.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Sending cmd 0x04.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Got metadata key 0x01 value 'Open Logic Sniffer v1.01'.
sr: ols: Got metadata key 0x02 value '3.07'.
sr: ols: Got metadata key 0x21 value 0x00006000.
sr: ols: Got metadata key 0x23 value 0x0bebc200.
sr: ols: Got metadata key 0x40 value 0x20.
sr: ols: Got metadata key 0x41 value 0x02.
sr: serial: Closing serial port /dev/cu.usbmodemfa131 (fd 6).
sr: hwdriver: Scan of 'ols' found 1 devices.
sr: serial: Opening serial port '/dev/cu.usbmodemfa131' (flags 1).
sr: serial: Opened serial port '/dev/cu.usbmodemfa131' (fd 6).
sr: serial: Parsing parameters from "115200/8n1".
sr: serial: Setting serial parameters on port /dev/cu.usbmodemfa131 (fd 6).
sr: serial: Configuring output baudrate to 115200 (115200).
sr: serial: Configuring input baudrate to 115200 (115200).
sr: serial: Configuring 8 data bits.
sr: serial: Configuring 1 stop bits.
sr: serial: Configuring no flow control.
sr: serial: Configuring no parity.
sr: ols: Disabling RLE.
sr: session: Starting.
sr: ols: Sending cmd 0xc0 data 0x00000000.
sr: serial: Wrote 5/5 bytes (fd 6).
sr: ols: Sending cmd 0xc1 data 0x00000000.
sr: serial: Wrote 5/5 bytes (fd 6).
sr: ols: Sending cmd 0xc2 data 0x00000008.
sr: serial: Wrote 5/5 bytes (fd 6).
sr: ols: Setting samplerate to 200000Hz (divider 499, demux off)
sr: ols: Sending cmd 0x80 data 0xf3010000.
sr: serial: Wrote 5/5 bytes (fd 6).
sr: ols: Sending cmd 0x81 data 0x6f176f17.
sr: serial: Wrote 5/5 bytes (fd 6).
sr: ols: Sending cmd 0x82 data 0x3a000000.
sr: serial: Wrote 5/5 bytes (fd 6).
sr: ols: Sending cmd 0x01.
sr: serial: Wrote 1/1 bytes (fd 6).
sr: ols: Starting acquisition.
sr: ols: Sending SR_DF_HEADER packet.
sr: session: bus: Received SR_DF_HEADER packet.
cli: Received SR_DF_HEADER
srd: Calling start() on all instances with 8 probes, unitsize 1 samplerate 200000.
srd: Calling start() method on protocol decoder instance i2s.
srd: Instance i2s creating new output type 1 for i2s.
srd: Instance i2s creating new output type 0 for i2s.
sr: session: Running.
sr: ols: Received byte 0xcb.
sr: ols: Received sample 0x90072cb.
sr: ols: Full sample: 0x090072cb.
...
Comment 1 Joseph Lane 2013-08-11 18:44:41 CEST
This was posted because I was unable to reproduce the bug in the java based jawi OLS Client.